SAP軟體的強大“遠不止於此”

dicksonjyl560101發表於2020-10-12

長期以來,業界貶低SAP聲音此起彼伏,好不熱鬧!什麼介面醜陋,操作繁瑣,缺乏靈活性、技術陳舊、價格昂貴。然而趨勢恰恰相反,SAP不僅沒有被這些聲音淹沒,反而越戰越勇,而今SAP幾乎攻陷中國所有央企和絕大數的地方龍頭企業。打得ORACLE、用友、金碟滿地找牙。
 

一個可怕的事實是SAP從1972年成立至今近50年來,其產品一直在迭代中進化。對比我們國產軟體經常過不了幾年就得推倒重來,我們不得不佩服SAP的架構實在是太他媽高明瞭得!!!我輩唯有虛心學習,方有可能東山再起啊!

 

一套好的ERP系統,不僅能夠最大程度承接適配企業的管理和業務流程,在技術上面也能夠做到快速部署和挑戰。而對使用者而言,好用且邏輯性強,體驗好、便利可掌控才是能夠抓住使用者的需求點。很可惜的是,縱觀世界上這麼多的ERP系統,真正能夠為使用者考慮而且有自己的核心競爭力的並不多。

 

我認為一套好的ERP系統,不僅僅是一套軟體,更是一個管理思想。選型ERP,要從以下幾方面考慮:

 

一、業務模式

 

在選用ERP之前,首先企業自身得明白自己需要什麼,想要實現什麼功能,管理需求是什麼。遺憾的是很少有企業能夠明白這一點。ERP不是選擇市場份額高的,也不是選擇廣告,而是真真切切選擇適合企業的系統。

 

比如本公司本來就是重複性的製造體系,如果選擇的系統不支援這種方案,雖然後期可以透過客制開發來實現,但畢竟開發量大,過度修改系統原有的標準邏輯,一定會造成過度二次開發的災難。因此企業在選擇ERP之前一定要很清楚自己真正的需要。

 

之前公司在選型的時候,用友公司一直仗著自己在國內市場份額最大而一直跟我們公司打廣告。實際上,用友的產品在製造型的企業的份額並不如其他產品的多,所以這個是要區別對待的。之前就是因為用友的產品不支援重複性生產的模式而被斃掉。

 

二、資料庫

 

基本上來說世界上ERP常用的資料庫無非就是Oracle和MSSQL。ERP系統在企業裡的應用是重中之重,資料量也會逐年遞增,穩定性可靠性都要求很高。因此採用穩定且效率高的資料庫是很有必要的。

 

如果一款ERP系統只能支援單一的資料庫真的是可以摒棄了。ERP系統是長期工程,至少要以10年的眼光來看待它。用友U9只支援MSSQL系統,而SAP/Tiptop是主流資料庫都支援了。

 

三、B/S和C/S

 

B/S和C/S孰優孰劣百度上很多,各有各的優勢和短處。如果哪家ERP廠商吹捧說自己公司的產品是基於B/S模式所以有優勢的說法絕對是忽悠人的。

 

其實B/S沒有什麼不好,但是因為你是B/S模式,客戶端只能限制在IE瀏覽器上使用那就絕對是大錯特錯了。

 

而如果因為你是C/S模式,客戶端只能在Windows系統上使用那也是讓人難以接受的。一定要很清楚,終端跨平臺和多元化一定是要考慮進去的。

 

SAP其實是兩者都支援的,不過對B/S支援度不佳;用友U9是綁死在windows系統下的IE瀏覽器上,基本上很廢材;Tiptop系統則是純粹的C/S模式,雖然它也宣稱支援B/S,但實際上是要安裝ActiveX外掛,自然而然的是綁死在Windows系統的IE瀏覽器上。

      

四、跨平臺

 

如果哪一套ERP系統的服務端只能安裝在Windows Server上,客戶端只能在Windows系統上使用的話,那麼請毫不猶豫得忽略它。企業應用很複雜,客戶端不能只考慮到win系統,再加上VPN的使用,未來員工在家使用ERP也是很正常的事情。

 

所以如果ERP不能跨平臺,基本上可以說明這是一套垃圾ERP。我所知道的用友系統基本上都是基於Windows系統,其他諸如Linux,OSX系統是沒法用的。而SAP有對應平臺的客戶端軟體,服務端也有多種系統可供選擇。

 

五、開發技術

 

ERP的開發技術佔比比分很重,因為實施過程中和上線之後企業的業務會不斷的變化更改,ERP系統也會因為業務而一直不斷開發更新中,所以技術在這過程中很重要。以下只對我所知道的系統做一個技術方面的介紹:

 

SAP方面:

 

1.客戶端:SAP的開發平臺實際上就是在客戶端上,一套客戶端有幾百兆的大小,裡面包含了基本上所有的操作和開發。

 

技術開發只是裡面的一個模組而已,技術人員不需要安裝額外的開發工具,也不需要上傳和下載程式碼檔案,因為SAP的程式碼全部整合在系統裡,只要執行SE38就可以在裡面做開發,不管是Debug、開發畫面、報表查詢、單據列印、系統後臺配置、程式碼效能分析等全部都在這裡面,非常的方面簡單。

 

永遠不用去敲命令,永遠不用去記目錄,編譯和除錯都是視覺化介面,點點滑鼠就可以了,簡單快速高效!安裝好客戶端,新建好登入地址和埠就可以快速連線到系統了。

 

2.整合:至於跟其他系統的整合問題,SAP有自己的一套遠端呼叫介面的服務,俗稱RFC,支援第三方開發語言諸如JAVA,C#,C++,PHP;平臺基本上都支援,更不用提Android和IOS等系統了,直接可以透過呼叫RFC介面來與SAP做資料的互動傳遞。

 

除了介面之外,SAP還提供了幾乎所有的業務介面,即BAPI,其實也是一個可遠端呼叫的介面,只不過它是業務的封裝。第三方平臺和技術可以透過呼叫BAPI來實現業務資料的建立,比如建立銷售訂單,建立採購訂單,稽核單據等等業務性的動作。

 

使用者在呼叫介面的時候完全不用考慮要對什麼表做插入做更新做邏輯校驗,只需要按規則把引數傳遞進去就可以了,其它的事情就交給SAP來處理了。

 

3.開源:在系統開源方面,SAP基本上前端的頁面和後端的配置都能找到它的程式碼,而且這裡面絕大部分的程式碼都有增強點,在這裡可以做原始碼的修改和補充。

 

但涉及到非常核心的功能SAP是不讓改的,這也說明了SAP以邏輯嚴謹著稱。一方面避免了開發過度,一方面也避免了對系統業務邏輯做顛覆性的修改。

 

4.畫面開發:在程式畫面上,SAP也提供了一套視覺化的開發工具,可以讓技術人員直接對控制元件做拖拉的動作,熟悉C#和VB的人一定不會對他陌生。

 

5.資料庫設計:SAP資料庫表的設計也非常的到位,每一張表的表名和表裡的每一個欄位都有它自己的含義,而且全資料庫統一一個欄位名稱。

 

比如物料編號,在物料主檔裡它就叫MATNR,在其他的表比如銷售明細表、採購明細表、過賬憑證表上面的物料編碼也全部都是MATNR。

 

所以開發人員一看到這個欄位名稱就知道它存的內容是什麼,不用查資料庫規格書,也不用去看程式碼,不需要去畫面的欄位檢視欄位名稱。

 

6.訊息機制:SAP系統提供了一套非常完善的訊息機制,有錯誤,警告,提示和退出等功能,透過系統的訊息編號,再配合Debug可以秒定位到發出訊息的那段程式碼上,從而對程式做一定的完善。

 

我非常喜歡這樣的功能,經常就會因為系統的提示問題而不知道發生的原因,透過訊息和分析程式碼就能夠快速找到根源所在。

 

7.SQL跟蹤:SAP有一套非常方便的Sql跟蹤方案,可以針對當前的使用者或某一個使用者做sql跟蹤,技術人員可以快速找到每一個畫面後臺所有用到的資料表,非常的方便快捷。

 

對後續的系統開發和報表開發都很有幫助。而且也可以對增強的開發做到輔助作用,可以快速定位到具體的表的程式碼裡,用過的人絕對都說好。

 

8.內容導航:SAP有自己一套非常實用的內容導航。可以在某一個畫面裡雙擊某一個欄位自動跳轉到相關的畫面。比如在採購訂單畫面雙擊供應商欄位,系統會自動跳轉到供應商主資料的畫面;比如在庫存過賬的畫面雙擊物料編碼的欄位會自動跳轉到物料主資料的畫面。

 

實際在使用過程中並不需要新開畫面,然後複製要查詢的資訊進去搜尋,用導航的方式可以快速切換想要用的畫面,非常的實在!

 

9.效能監控:技術人員客制的程式往往效能不佳,速度很慢,這個時候就可以利用系統自帶的效能監控的畫面來監控技術人員開發的程式,很直觀瞭解到是哪裡的程式碼出現問題,哪條sql語句執行時間如何等等,技術人員可以針對性去最佳化和解決。

 

10.畫面配置:SAP對畫面的調整能力超乎想象,比如你想在一個畫面裡的某一個欄位做隱藏、只讀、必填等動作,只需要建立變式就可以了,而且還可以針對不同的賬號做生效。

 

馬上配置馬上生效,根本不需要做任何程式碼的編寫。而且也支援技術人員自己開發的畫面。在企業應用裡,這類的調整非常多,但如果每個都要做開發絕對會累死技術人員,效率也不高。

 

其實不止以上幾點,還有非常多的技術相關的東西,SAP都做到很人性化。也基本上可以確定了SAP的霸主地位,對技術的完善和可控,造就了它的高可維護性和擴充套件性。

 

Tiptop:開發人員需要額外安裝一套開發工具,每次開發都要從服務端下載程式碼檔案到本地編輯,然後再上傳上去,之後再切換到另一個工具編譯和執行。如果你要Debug,估計就是要敲命令了,彷彿就是在Linux下操作一樣,對開發人員的要求很高。

 

而程式效能分析就更不用談了,系統都沒有這樣的功能。所以跟SAP比起來,這系統非常的笨拙,需要很多工具一起配合使用。更可怕的是安裝客戶端還需要本機安裝IIS,這個絕對讓人匪夷所思。雖然可以透過IE瀏覽器安裝客戶端外掛,但還是綁死了在Windows系統上了。

 

1.客戶端:這ERP的客戶端最讓人無語的是它安裝完之後需要做一定的配置,比如要對客戶端的快捷方式新增-aD作為啟動引數才可以新建登入連結,至今不明白做這個限制的意義何在?

 

而蘋果平臺的版本雖然有對應的APP程式客戶端,但更讓人崩潰的是它也一樣要配置,而且過程相當的複雜,需要敲一大堆的命令(重新命名,建立快捷方式,新增引數,修改許可權),所以使用者根本就不懂怎麼操作。我至今都很好奇TOP GP的客戶端開發公司到底是啥意思?要數最不懂使用者體驗的非這公司莫屬了吧。

 

2.整合:說到跟第三方平臺的整合,Tiptop的對接技術是使用Webservice,先把需要的資料透過用DML的方式插入到ERP資料庫的中間表,再呼叫Webservice的方式通知ERP中間庫已經有資料了,接下來ERP再執行相應的介面程式進行讀取並做邏輯校驗。

 

在這個過程中,所有的事情全部都要技術人員寫程式碼操作,而且手動對錶做讀取和插入等更新,除非技術人員對Tiptop的業務邏輯和後臺表非常的熟悉,否則一般人真心幹不來,要麼你就是去看系統原始碼。

 

這種痛苦的過程的根源就是因為這ERP沒有對業務介面做封裝,所以從第三方平臺生成業務資料,比如建立銷售訂單,建立採購訂單,單據稽核等動作全部都要對資料表做增刪改的操作。一旦你漏寫了或者漏了那些表的更新,那就會對後續的業務造成一定的隱患。

 

3.開源:Tiptop系統是全開源的,但雖然它幾乎完全開源,但弊端也非常顯而易見,那就是誰都可以去修改這些程式碼,改來改去該到最後估計使用者都不知道什麼跟什麼了吧。開源本來是好事,但可以讓客戶過度修改就不是好事了。

 

4.畫面開發:Tiptop也有一套視覺化的開發工具,跟客戶端獨立開來,需要技術人員將程式碼和畫面關聯起來。

 

5.資料庫設計:Tiptop的資料庫設計是非常奇葩的地方,資料庫裡的表名和表裡的欄位清一色流水號,比如物料編碼,在物料主檔裡它叫ima01,在其他表或許就會叫exa02,在另外一張表就變成了aba03了,所以開發人員必須要時刻把資料庫規格書開啟,隨時查閱,除非是天才能夠完全記住,否則免談。

 

6.訊息機制:有系統訊息機制,但客戶不可定製自己的訊息。要透過訊息的提醒快速找到程式碼的地方卻並不簡單。

 

不過有一點優勢在於Tiptop畫面的後臺程式碼都一般只有一直程式,偶爾呼叫一下函式而已。這點比SAP要單純不少。

 

7.SQL跟蹤:沒有提供這個功能。

 

8.內容導航:沒有提供這個功能。

 

9.效能監控:沒有提供這個功能。

 

10.畫面配置:較少支援,絕大部分要做開發。

 

Tiptop的開發遠遠不如SAP來的快捷方便,跟SAP比起來差距真的不是幾個量級可以衡量的。

 

用友U9:用友U9瞭解的並不是很徹底,但所知道的是它也需要有一套開發工具,可以用微軟的Visual Studio(花錢吧)。

 

這系統不開源,所有的動作只能透過它宣傳的後臺配置去實現,但一旦後臺配置實現不了的,那就只有開發,而且只能找廠商來開發,對,你要交年維。

 

1.客戶端:IE瀏覽器,其他瀏覽器不行!

2.整合:Webservice,麻煩程度不必說了。

3.開源:不開源!

4.畫面開發:利用VS開發工具或自帶的開發平臺。

5.資料庫設計,

6.訊息機制 :不詳;

7.SQL跟蹤:不支援。

8.內容導航:不支援。

9.效能監控:不支援。

10.畫面調整:可配置調整,量不多,部分要做開發。

 

老實說用友U9我用的不多,瞭解也偏少,不過之前的測評和評估的過程來看,這套系統並不值得實施(特別是生產製造型企業)。

 

六、系統配置

 

一套系統做得好不好,還得去看它應對業務變化的能力,不需要做開發就可以做到對業務模式和需求的定製。比如企業裡要對某一類的採購訂單做分類,如果不支援定製,那開發絕對是很痛苦的。如果要對不同的採購訂單做號碼段定製,對開發的能力要求更高。一套完善且功能齊全的系統配置方案是重中之重!

 

SAP系統裡面有非常多的系統配置的功能,透過專用的畫面SPRO進入。基本上裡面使用者想要的業務模式都能支援,功能強大到令人歎為觀止。透過系統配置+細節上的開發基本上可以實現一套系統的切換了。

      

 

Tiptop也有一定量的系統配置,不過這部分並不如SAP來的龐大,而且功能相當有限,只有非常簡單的幾個下拉框和按鈕這樣子而已。

 

就連不同的採購類別設定不同的訂單號碼段都不支援,跟SAP比起來基本上是屬於很小型的系統定製。Tiptop引以自豪的一方面是它的開源,所以透過開發可以實現無限的可能情況。但這樣真的好嗎?

          

 

用友U9就更不要說了,不開源,而且妄圖大部分功能可以透過系統配置來實現系統的定製。千萬不要去相信,一套ASP.NET網站能夠多靈活可想而知,不是我偏見,我研究過一部分,程式碼功能很多都是儲存過程,系統定製方面比較弱。所以只能透過開發來實現,而且是用友官方的開發!

 

七、多組織架構

 

ERP的多組織架構也是非常必須要有的功能,畢竟現在很多上了規模的企業都是集團化了。如果有ERP不支援多組織,就跟廢材一樣。

 

所幸的是SAP、Tiptop、用友U9都支援多組織的架構,但各自支援程度又不盡相同。

 

SAP裡面99%的資料表都會有幾個欄位存放公司、工廠等組織性的欄位,用於區分其他子公司的資料。所以在很多的畫面上都會看到對公司和工廠等欄位的查詢。使用者只要有許可權就可以快速查詢不同組織的資料,而且也方便很多子公司之間的業務來往,秒切換。技術人員也可以很簡單方便在程式碼裡面實現多組織方式的開發報表展現。

 

Tiptop裡面是透過Oracle資料庫的“賬號”來區分組織,所以在一個“賬號”裡面所有的資料表存的都是當前的組織架構。如果使用者想要查詢其他的子公司資料,就要切換運營中心,畫面上找不到可以查詢其他子公司的查詢條件。而開發人員自然也不用去專注查詢其他子公司的資料。但是,一旦要合併報表呢?一旦要查詢其他子公司的資料呢?

 

用友U9也是類似跟Tiptop方式的組織架構支援方式,不提也罷。

 

說到這裡,講了幾個相對比較重要的點,但其實ERP還有非常多的方便可以講述,SAP太多的優勢了,多到我現在雖然沒有在玩SAP,但非常懷念這套系統帶給我的那種駕馭的感覺。

 

玩SAP 5年以上,Tiptop半年以上,用友U9研究過,基本上可以判斷出這幾個系統很多方面的差別。不得不說,SAP家底太殷實了,別看介面不好看,但人家裡子真的厲害了得。奉勸企業千萬不要貪圖便宜,也不要被所謂的市場份額給欺騙了,選擇合適的,能夠快速實施和開發的系統最合適。


https://blog.csdn.net/weixin_42137700/article/details/108965103




來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29829936/viewspace-2726207/,如需轉載,請註明出處,否則將追究法律責任。

相關文章