本文描述了在各大中型公司PLM、SAP系統(tǒng)日趨成熟的情況下,如何通過SPM(商業(yè)流程管理系統(tǒng))流程平臺將PLM系統(tǒng)中創(chuàng)建的BOM(Bill of Material,物料清單)替代關系獲取,再維護,并最終寫入到SAP系統(tǒng)中的過程,以及遇到的技術(shù)難點、后期優(yōu)化方案和應用效果簡述。
1 設計與實現(xiàn)
1.1 設計BOM替代流程流程圖
采用Borg公司的SPM平臺設計流程圖。該平臺采用拖拽的形式設計工作流程圖,每個流程關卡之間直接用箭頭表示流向,在實際使用過程中用戶可以輕松易懂的查看自己申請或處理的流程的流程圖,獲知目前流程的狀態(tài),并設有流程走向演示功能,可以直觀的重現(xiàn)流程的走向。BOM替代流程的流程圖比較簡單,中間不需要審核和其他數(shù)據(jù)處理環(huán)節(jié)。但是簡化的流程圖就意味著,所有對數(shù)據(jù)的完整性、正確性的判斷、以及數(shù)據(jù)維護操作都要集中在一個表單完成,很大程度上也增加了開發(fā)的難度。
1.2 設計表單
該流程的表單時采用微軟的Visual Studio 2005開發(fā)工具開發(fā),主要采用的開發(fā)語言是ASP.NET。在表單頁面需要實現(xiàn)的功能是:輸入BOM變更號以及工廠,點擊查詢,通過PLM提供的視圖,查詢該BOM變更號的BOM關系數(shù)據(jù),在維護了相關字段后,點擊傳送,將BOM替代關系寫入SAP系統(tǒng)中。BOM關系在寫入sap之前,需要徹底地檢查BOM中物料在SAP是否存在,數(shù)據(jù)是否完整。數(shù)據(jù)格式根據(jù)EXCEL中的格式模版來動態(tài)生成,并支持EXCEL導入、導出數(shù)據(jù),極大地減輕程序的后期維護工作,同時也方便了用戶使用。
1.3 表單綁定,設置關卡屬性
將設計的表單與流程圖中的開始關卡綁定,并設置申請者權(quán)限,上傳附件權(quán)限以及郵件通知的功能等。另外,還需要設置開始關卡字段的必填屬性,默認值,以及友好的報錯信息,防止用戶的錯誤操作。
1.4 數(shù)據(jù)庫的設計
數(shù)據(jù)庫采用的是微軟的SQL Server 2008。SQL Server是由Microsoft開發(fā)和推廣的關系數(shù)據(jù)庫管理系統(tǒng)(DBMS),有豐富的編程接口工具,并且對Web技術(shù)有很好的支持。在SQL Server可視化的操作界面下,設置好與表單中相對應的字段,包括字段名,字段類型,字段長度等。
2 技術(shù)難點及相關代碼
2.1 從EXCEL讀取表單結(jié)構(gòu)
實現(xiàn)從EXCEL讀取表單結(jié)構(gòu)的功能,可以大大減少程序的維護量。相關代碼如下:
其中“BOM.xls”是要讀取的EXCEL,主要是利用“HSSFWorkbook”和“HSSFSheet”兩個類來實現(xiàn),具體用法可以上網(wǎng)查一下。
2.2 將BOM關系寫入SAP
.NET和SAP是兩種不通的應用平臺,不能直接地進行數(shù)據(jù)交互,需要使用第三方工具Softwise SAP Explorer Tool來幫助實現(xiàn)這一功能。在進行簡單的配置后,就可以從SAP獲取將BOM關系寫入SAP的函數(shù),這樣以來就可以通過調(diào)用函數(shù)的方式來實現(xiàn)寫入SAP這一目的了,相關代碼如下:
3 后期優(yōu)化
在流程正常運轉(zhuǎn)之后,隨著公司業(yè)務的發(fā)展,BOM流程會走得越來越頻繁,并且BOM中包含的物料數(shù)量也會越來越多,這時你會發(fā)現(xiàn),在硬件配置沒有升級的情況下,BOM流程傳送的速度會越來越慢,你不得不采取一些優(yōu)化措施來提高流程的效率。
3.1 程序日志的優(yōu)化
程序中記錄日志一般有兩個目的:Troubleshooting和顯示程序運行狀態(tài)。好的日志記錄方式可以提供我們足夠多定位問題的依據(jù),但過多的寫日志操作也是很影響程序的運行速度的。對于該流程中日志的優(yōu)化,我的做法是:
(1)刪除一些不必要的寫日志操作;
(2)避免for循環(huán)里面出現(xiàn)寫日志操作;
(3)對日志的內(nèi)容進行簡化。
3.2 數(shù)據(jù)庫的優(yōu)化
在流程長時間的使用過程中,數(shù)據(jù)庫中極易堆積大量數(shù)據(jù),這時會導致流程傳送時寫入數(shù)據(jù)的操作越來越慢(尤其是針對大數(shù)據(jù)量的BOM),影響程序的性能。在保留歷史數(shù)據(jù)的前提下,我的做法是:
(1)新建一個與現(xiàn)有的表A結(jié)構(gòu)一摸一樣的空表B;
(2)修改代碼,把insert語句中的表A,改為表B,這樣數(shù)據(jù)就會寫進表B中;
(3)把查詢邏輯改為“先查表B,如果表B沒有數(shù)據(jù),再查表A”;
(4)設置SQL Server代理,定時將表B中的數(shù)據(jù)挪到表A中,并將表B數(shù)據(jù)清空。
這樣一來,就解決了數(shù)據(jù)庫的寫入速度慢問題。
3.3 物料判斷的優(yōu)化
通過遠程查詢SAP的數(shù)據(jù)庫來判斷物料的正確性和完整性是比較影響性能的,因為寫入SAP的BOM中,每個物料都需要先幾個檢查,如果有1000個物料,就是好幾千次檢查。在保證這些判斷必要的前提下,我的做法是:
(1)通過整合視圖,讓我一次查詢就能夠獲取盡可能多的信息。
(2)盡量避免“select*”的查詢。
(3)將部分判斷放在SAP函數(shù)里面執(zhí)行,這樣就減少了兩個系統(tǒng)因交互而花費的時間。
4 應用效果
目前該流程在公司范圍內(nèi)廣泛使用,截止目前已經(jīng)走過了16183,成功將1894599條BOM關系從PLM系統(tǒng)寫入SAP系統(tǒng)。而相當簡化的流程步驟也使得設計部門、物流部門和制造部門之前的溝通成本得到了最大限度的減少,大大提高了工作的效率。
核心關注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務領域、行業(yè)應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業(yè)務領域的管理,全面涵蓋了企業(yè)關注ERP管理系統(tǒng)的核心領域,是眾多中小企業(yè)信息化建設首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文網(wǎng)址:http://www.ezxoed.cn/html/solutions/1401939833.html