天天看點

ERP與CRM聯姻從何處着手 軟體源代碼都是保密

  在企業中資訊化管理手段已經是企業離不開的一種管理方式。但是随着資訊化管理的深入,企業也憑空增添了不少困擾。項目內建就是其中之一,前不久,筆者就接到過客戶的求助電話。這家客戶上了ERP系統與CRM系統,但是這連個資訊化管理系統各自為政,使用起來非常的不友善。現在使用者想将他們進行內建,讓筆者給他們出謀劃策。筆者了解了相關的情況後,對他們企業ERP系統與CRM系統的聯姻提出了如下的建議。

  一、 從統一帳戶開始做起

  從企業目前的應用情況來看,兩個系統各有一套身份認證系統。使用者如果需要同時使用CRM系統與 ERP系統,他們不得不輸入兩遍使用者名與密碼。即使使用者名與密碼是相同的,重複輸入也會引起使用者的反感。這就好像兩個人結婚了,但是各自管自己的銀行賬戶一樣,比較容易引起反感的情緒。為此筆者認為,企業現在的當務之急,就是需要統一兩邊的賬戶。這就好像在同一個網站上,可能有部落格、郵箱等應用服務。使用者隻需要一個賬戶名譽密碼,就可以同時通路這些不同的應用服務。有些網站上獎這個技術稱之為通行證。

  其實要實作這個也比較簡單。比如說這家企業,ERP系統與CRM系統都是B/S模式的。那麼可以在企業的網站上挂一個連接配接登陸的界面。當使用者在登陸界面中輸入使用者名與密碼後,這些資訊就會儲存在一個臨時檔案中。隻要使用者的不重新啟動電腦,那麼在登陸不同的系統時,就不需要重複的輸入使用者名與密碼。在已經登陸ERP系統的情況下,如果使用者需要使用CRM系統,那麼直接點選CRM應用的連結即可。此時系統會自動根據臨時檔案中相關的使用者名與密碼進行身份驗證,并登陸系統。這項工作比較簡單。隻需要在浏覽器上開發一個小插件即可。甚至不需要軟體公司出面,使用者自己都可以進行更改與設定。雖然這隻是兩者聯姻的第一步,或者說隻是一種形式,但是對于終端使用者來說确是很大的改進。

  二、 利用交集、并集的方法來分析內建的對象

  如果要對CRM與ERP系統進行聯姻,那麼企業管理者首先需要判斷的就是兩個系統在哪些方面有交集,哪些方面是并集。隻有先确定重合的地方,然後才能夠對症下藥,來進行項目的內建。

  首先,項目管理者要從應用程式層面進行分析,判斷兩個系統哪些作業時重複的。如訂單的錄入、客戶資訊的管理、信用額度的稽核等等方面是重複的。客戶投訴的追蹤、客戶的回訪等等方面可能是CRM系統獨有的功能。這些内容厘清楚之後,那麼項目內建的目标也就很明确了。要實作兩個系統聯姻,其目标就是将這些重複的作業合而為一,在兩個系統中隻需要運作一次即可。同時又不會影響哪些比較獨立的作業。

  其次需要了解這些作業對應資料庫中的表格,即這些作業到底需要用到哪些資料。很多項目內建,都是通過資料的同步來實作的。故了解作業需求的來源或者會産生哪些資料就顯得特别的重要。如訂單管理在ERP系統與CRM系統中都會存在。此時項目管理者就需要了解訂單管理在資料庫中涉及到的具體表格,以及兩個系統中資料表的差異。了解這些内容後,才能夠通過資料同步或者後面筆者介紹的通過外部表來實作兩個軟體的聯姻。

三、 可以嘗試從資料庫層面進行系統內建

  現在大部分ERP與CRM應用軟體源代碼都是保密的。這也就是說,企業即使自己有這方面的技術人才,也很通過修改源代碼來實作項目的內建。在遇到這種情況時,其實企業項目管理者可以從資料庫方面想想辦法。筆者在這方面就做過類似的嘗試。那時筆者實施的ERP項目采用的是SQL Server資料庫系統,而CRM項目則采用的是Oracle資料庫系統。筆者就以身份認證來談談如何通過資料庫來實作兩個系統的聯姻。

  在Oracle資料庫中有一個很不錯的功能,就是支援外部表的功能。也就是說,可以把外部資料源的資料連接配接到Oracle資料庫中。Oracle資料庫會當作自己内部的對象來處理。可以用來查詢、統計等操作。這個外部表就相當于是其内部的一張視圖。可以進行查詢等操作,但是不能夠進行删除、更改。在CRM系統中的使用者資訊都存儲在Oracle資料庫中的USER_INFO 表中。其身份認證的時候,不是通過Oracle資料庫來進行認證的,而是通過應用程式來進行身份認證。而應用程式進行身份認證的時候,用的就是這張表。利用這張表中的使用者名與密碼跟使用者提供的使用者名與密碼進行比對。

  如果配對成功的話,就可以登陸系統進行操作。了解這層含義之後,那麼進行相關的內建就簡單了。在 Oracle資料庫中,先廢棄原有的使用者資訊表。然後再建立一張外部表,其資料來源就是ERP系統資料庫中的使用者表(ERP系統的身份認證方案跟CRM系統類似)。由于是動态的連接配接,ERP中建立使用者、删除使用者、更改密碼等操作都會反應在這個外部表中。是以CRM系統中也可以利用最新的使用者資訊來進行身份驗證。由于身份驗證隻設計到查詢操作,是以外部表完全可以滿足身份驗證的需要。

  采用外部表來系統相關功能,最關鍵的一點是需要注意如果采用外部表的話,資料庫對于外部表隻能夠進行查詢、統計等方面的操作,相當于是視圖。而不能夠進行插入、删除、更新等操作。也就是說,如果CRM系統需要添加使用者、更改使用者的密碼都必須要在ERP 系統中完成。因為隻有ERP系統才能夠更改其背景資料庫的使用者資訊表。不過在設計工作中,這并不影響具體的應用。因為當兩個系統聯姻之後,CRM系統中的使用者管理子產品基本上沒有用了。所有的使用者管理(包括建立使用者、更改使用者密碼等操作)都可以在ERP系統中完成。在ERP系統中建立的使用者、對使用者密碼重置等作業,在CRM系統中同時生效。這就是資料庫外部表在ERP系統與CRM系統聯姻方面起到的作用。也就是說,當企業新進一個員工,項目管理者不用為其分别在兩個系統中建立帳号。而隻需要在ERP系統中給這個員工建立帳号,那麼這個員工在CRM系統也可以使用這個賬号登陸。

  其實不光光可以利用同一張使用者資訊表來對兩個系統的使用者進行認證,通過這個外部表還可以實作很多的功能。如現在的CRM系統一般都分為帳務型ERP系統與分析型ERP系統。而CRM系統與ERP系統重複的作業主要是在帳務型ERP系統上。如訂單、客戶資訊等方面兩者都是重複的。而對于CRM軟體所具有的一些分析功能,ERP軟體往往是不具備的。此時,項目管理者就可以廢棄CRM系統中的帳務型的作業。即對于記帳相關的作業,如訂單的錄入、客戶資訊的管理等等都放在ERP系統中處理。然後對于那些分析的作業,需要用到相關的基礎資料,則可以通過以外部表的形式從ERP系統的資料庫中取得。由于外部表就好像是一張視圖,是動态更新的。是以利用CRM系統進行分析時可以獲得最及時的資料。

  隻要項目管理者對于企業所使用的CRM系統與ERP系統比較了解,特别是對于背景資料庫的架構有一個清晰的認識,那麼利用這個外部表來實作兩個應用軟體的內建,是一個很不錯的方法。不過這個方法最終的效果好不好,還需要看兩個軟體内部資料庫的設計是否類似。如果兩個資料庫的設計思路南轅北轍,那麼可能通過這種方式來進行內建效果并不會很明顯。相反,如果設計思路比較一緻,那麼就可以比較輕松的完成互相內建的工作。

  上面筆者講述的三個方面,隻是兩個軟體進行聯姻的必須要做的内容。其中第三點筆者說的是實作ERP系統與CRM系統聯姻的一個簡便的、行之有效的方式。總之項目內建是一個長期的、艱苦的過程。