現(xiàn)在大部分ERP與CRM應用軟件源代碼都是保密的。這也就是說,企業(yè)即使自己有這方面的技術(shù)人才,也很通過修改源代碼來實現(xiàn)項目的集成。在遇到這種情況時,其實企業(yè)項目管理員可以從數(shù)據(jù)庫方面想想辦法。筆者在這方面就做過類似的嘗試。那時筆者實施的ERP項目采用的是SQL Server數(shù)據(jù)庫系統(tǒng),而CRM項目則采用的是Oracle數(shù)據(jù)庫系統(tǒng)。筆者就以身份認證來談談如何通過數(shù)據(jù)庫來實現(xiàn)兩個系統(tǒng)的聯(lián)姻。
在Oracle數(shù)據(jù)庫中有一個很不錯的功能,就是支持外部表的功能。也就是說,可以把外部數(shù)據(jù)源的數(shù)據(jù)連接到Oracle數(shù)據(jù)庫中。Oracle數(shù)據(jù)庫會當作自己內(nèi)部的對象來處理。可以用來查詢、統(tǒng)計等操作。這個外部表就相當于是其內(nèi)部的一張視圖。可以進行查詢等操作,但是不能夠進行刪除、更改。在CRM系統(tǒng)中的用戶信息都存儲在Oracle數(shù)據(jù)庫中的USER_INFO 表中。其身份認證的時候,不是通過Oracle數(shù)據(jù)庫來進行認證的,而是通過應用程序來進行身份認證。而應用程序進行身份認證的時候,用的就是這張表。利用這張表中的用戶名與密碼跟用戶提供的用戶名與密碼進行比對。
如果配對成功的話,就可以登陸系統(tǒng)進行操作。了解這層含義之后,那么進行相關(guān)的集成就簡單了。在Oracle數(shù)據(jù)庫中,先作廢原有的用戶信息表。然后再建立一張外部表,其數(shù)據(jù)來源就是ERP系統(tǒng)數(shù)據(jù)庫中的用戶表(ERP系統(tǒng)的身份認證方案跟CRM系統(tǒng)類似)。由于是動態(tài)的連接,ERP中新建用戶、刪除用戶、更改密碼等操作都會反應在這個外部表中。所以CRM系統(tǒng)中也可以利用最新的用戶信息來進行身份驗證。由于身份驗證只設計到查詢操作,所以外部表完全可以滿足身份驗證的需要。
采用外部表來系統(tǒng)相關(guān)功能,最關(guān)鍵的一點是需要注意如果采用外部表的話,數(shù)據(jù)庫對于外部表只能夠進行查詢、統(tǒng)計等方面的操作,相當于是視圖。而不能夠進行插入、刪除、更新等操作。也就是說,如果CRM系統(tǒng)需要添加用戶、更改用戶的密碼都必須要在ERP系統(tǒng)中完成。因為只有ERP系統(tǒng)才能夠更改其后臺數(shù)據(jù)庫的用戶信息表。不過在設計工作中,這并不影響具體的應用。因為當兩個系統(tǒng)聯(lián)姻之后,CRM系統(tǒng)中的用戶管理模塊基本上沒有用了。所有的用戶管理(包括新建用戶、更改用戶密碼等操作)都可以在ERP系統(tǒng)中完成。在ERP系統(tǒng)中新建的用戶、對用戶密碼重置等作業(yè),在CRM系統(tǒng)中同時生效。這就是數(shù)據(jù)庫外部表在ERP系統(tǒng)與CRM系統(tǒng)聯(lián)姻方面起到的作用。也就是說,當企業(yè)新進一個員工,項目管理員不用為其分別在兩個系統(tǒng)中建立帳號。而只需要在ERP系統(tǒng)中給這個員工建立帳號,那么這個員工在CRM系統(tǒng)也可以使用這個賬號登陸。
其實不光光可以利用同一張用戶信息表來對兩個系統(tǒng)的用戶進行認證,通過這個外部表還可以實現(xiàn)很多的功能。如現(xiàn)在的CRM系統(tǒng)一般都分為帳務型ERP系統(tǒng)與分析型ERP系統(tǒng)。而CRM系統(tǒng)與ERP系統(tǒng)重復的作業(yè)主要是在帳務型ERP系統(tǒng)上。如訂單、客戶信息等方面兩者都是重復的。而對于CRM軟件所具有的一些分析功能,ERP軟件往往是不具備的。此時,項目管理員就可以廢棄CRM系統(tǒng)中的帳務型的作業(yè)。即對于記帳相關(guān)的作業(yè),如訂單的錄入、客戶信息的管理等等都放在ERP系統(tǒng)中處理。然后對于那些分析的作業(yè),需要用到相關(guān)的基礎數(shù)據(jù),則可以通過以外部表的形式從ERP系統(tǒng)的數(shù)據(jù)庫中取得。由于外部表就好像是一張視圖,是動態(tài)更新的。所以利用CRM系統(tǒng)進行分析時可以獲得最及時的數(shù)據(jù)。
只要項目管理員對于企業(yè)所使用的CRM系統(tǒng)與ERP系統(tǒng)比較了解,特別是對于后臺數(shù)據(jù)庫的架構(gòu)有一個清晰的認識,那么利用這個外部表來實現(xiàn)兩個應用軟件的集成,是一個很不錯的方法。不過這個方法最終的效果好不好,還需要看兩個軟件內(nèi)部數(shù)據(jù)庫的設計是否類似。如果兩個數(shù)據(jù)庫的設計思路南轅北轍,那么可能通過這種方式來進行集成效果并不會很明顯。相反,如果設計思路比較一致,那么就可以比較輕松的完成相互集成的工作。
上面筆者講述的三個方面,只是兩個軟件進行聯(lián)姻的必須要做的內(nèi)容。其中第三點筆者說的是實現(xiàn)ERP系統(tǒng)與CRM系統(tǒng)聯(lián)姻的一個簡便的、行之有效的方式。總之項目集成是一個長期的、艱苦的過程。
IT168