讓非技術使用者修改數據庫的簡單方法?
我們正在設計一個 BI 解決方案。
我們遇到的一個問題是,可悲的是,很多人力資源資訊(開始日期、部門、部門變更日期、工作時間等)——在我看來,似乎是在 Excel 電子表格中手動維護的。不用說它缺乏標準化、驗證、容易出錯、缺乏完整性等。不好。
我不確定改善這一點的最直接方法。我們目前使用缺乏 API 的 HR 軟體。而且我什至不確定它是否包含所有必要的數據欄位或輸入驗證。
在一個理想的世界裡,我可以要求我們找到具有 API 和數據驗證的新軟體。但我不認為會發生這種情況。但也許這是唯一的解決方案。
否則,我試圖想出一個簡單的解決方案,讓使用者可以查看目前數據庫(id、員工姓名、開始日期、部門等)……並且可能進行直接更改,或者至少提出要批准的更改. 某種輸入,至少具有基本的檢查和驗證、時間戳更改以及製作者等。
我知道這是一個非常開放的問題,但是什麼是可能的直接解決方案?
理想情況下,我不想從頭開始拼湊一些應用程序,至少不要太多。
不能成為這裡第一個嘗試逐月跟踪部門人數和成本的企業。
歸根結底,很多這些東西確實必須在某個時候由人類輸入。如果有人更換部門,那在很大程度上是一種抽象。電腦系統可能不知道某人是否從工作轉向行銷,現在正在從事銷售工作。人必須在某處輸入此更改(理想情況下是專用應用程序,但不一定)——人、更改、生效日期。真正需要的是更好的驗證控制和業務規則,無論是我自己還是其他開發人員都可以強加於應用程序。
例如 — 員工 ID 不重複。(都沒有給 Mark 和 John 相同的 ID,也沒有給 Mark 兩個不同的 ID)。員工在給定時間僅在關聯/下一個部門工作。輕鬆查看和管理更改(也就是休假日期不正確,更改歷史記錄和更新時間戳會很有用)。也許可以利用一些不錯的工資單/會計軟體。我的意思是,這不是重新發明輪子,我想知道成熟/財富 500 強公司如何管理這個。可能是專用軟體,但是。
問題是數據庫需要這些資訊。目前它從一個垃圾 Excel 電子表格中接收它。我正在努力尋找確保資訊不是垃圾的方法。這需要在垃圾被送出到鏈上之前以限製或警告的形式對最終使用者進行。至少,也許我可以向他們發送一個 Excel 表格,該表格在單元格中具有自己的驗證,但從長遠來看,這可笑的是不合適的。
如果您執行 SQL Server Enterprise 版,它會與 Master Data Services 捆綁在一起,聽起來它會滿足您的需求。它最初的目的是合併多組數據並產生一個黃金大師,但如果你仔細想想,這個過程幾乎可以應用於任何數據工作。
它是非雲的,因此內部使用很安全。它有一個用於定義和編輯模式和關係的 Web 應用程序,還供使用者查看/輸入/編輯現有數據(他們也可以通過非常酷的 Excel 外掛來完成後者)。
使用同一個 Web 應用程序,您還可以設置有關數據檢查的基本業務規則、設置數據導出選項(視圖),以及使用 T-SQL 初始載入數據的其他選項。
數據更改具有沿襲資訊,並且可以保留,直到獲得授權的人批准。所以有一個小的工作流組件是可能的,儘管我沒有看到它被大量使用。
對於模式更改,它具有一些版本控制/沿襲功能,但我不能 100% 確定您是否可以看到誰進行了更改和/或是否可以將對模型的更改與授權部署分開。它具有精細的安全性,並且具有保留此資訊的元數據模型,但微軟一直在開/關他們是否會棄用該未來。