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