記錄使用者的異動記錄?意思就是當使用將某欄位的值由A改成B,系統就會記錄這修改的日期和操作員代號,方便後續追蹤.
在下知道SAP有此功能,其他的ERP系統就不知道,想了解邦友用的ERP有支援此技術嗎?你認為此技術是ERP的必備條件嗎?
ha ha ha ......................
我還以為你要問 :
系統核心如何紀錄下.User.Role.Created.Updated.每一筆異動.
是問有沒有 !
哪你不是跟 [某某科大教授一樣]
問 [ASCP先進供應鏈排程] 是不是 [有限產能]
要問如何達成 ? 用哪些機制達成 ?
OpenSource ERP ADempiere 都有的基本功能,沒有還是 ERP 嗎 ?
開放原碼免費 ERP ADempiere 都有的基本功能 ,沒有還是 ERP 嗎 ?
Skype: Adempiere/Compiere
// Change Log 紀錄每一欄位被更改紀錄
if (session != null
&& !p_info.isEncrypted(index) // not encrypted 非加密欄位
&& !p_info.isVirtualColumn(index) // no virtual column 非虛擬欄位
&& !"Password".equals(columnName) // 非密碼欄位
)
{
Object oldV = m_oldValues[index]; //
Object newV = value;
if (oldV != null && oldV == Null.NULL)
oldV = null;
if (newV != null && newV == Null.NULL)
newV = null;
//
MChangeLog cLog = session.changeLog (
m_trxName,
AD_ChangeLog_ID,
p_info.getAD_Table_ID(), //更改資料所屬資料表ID
p_info.getColumn(index).AD_Column_ID, //更改資料所屬欄位ID
m_IDs,
getAD_Client_ID(), //企業別
getAD_Org_ID(), //公司/BU
oldV, newV, //更改前/更改後資料
get_TableName(), //更改資料表名稱
MChangeLog.CHANGELOGTYPE_Update);
if (cLog != null)
AD_ChangeLog_ID = cLog.getAD_ChangeLog_ID();
鼎新WORKFLOW、神州數碼易飛是有記錄可查詢的,個人覺得是很有必要的一種機制,尤其在追蹤某一筆交易的細節(誰的帳號、發生時間點)是很有幫助的,畢竟ERP主體還是帳務的處理,事後的追朔是很是有必要的
你的ERP是自己開發?還是外包給廠商?這種類似DB Audit的功能,可以考慮用trigger來寫,碰到update/insert的時候,將SQL QUERY寫入另一個TABLE中。
做到這麼詳細的紀錄, 理論上可以做到, 小弟想到方式如下:
1 <<異動前>>必須先將相關資料重新讀出(非畫面資料), 寫入紀錄檔.
2 再做正常異動處理.
這樣一來造成異動時,系統處理的負擔.
所以有好有壞, 就看是否真的需要這種功能.
我們以前公司用正航的 v5ERP
有紀錄每一筆交易修改前後資料
若改了三次等於共有四筆記錄
而且系統可以比對出來每次修改的欄位是哪些