隨著企業信息化建設的深入,許多企業都逐步建立了各類應用信息系統,其中PDM(Product Data Management,產品數據管理)系統主要是圍繞產品設計展開信息組織和資源管理,因此是設計BOM(EBOM)的主要管理平臺;ERP(EntERPrise Resource Planning,企業資源計劃)系統主要是圍繞企業的物流、信息流、資金流對企業內外部資源進行管理,它重點關注制造BOM(MBOM)。在制造與裝配行業,BOM結構復雜、BOM間的轉換與調整較為頻繁,所以實現不同系統間BOM數據傳遞以及數據集成是企業BOM管理的重點。本文探討了PDM與ERP兩個異構系統如何基于ESB實現BOM集成。
1 總體框架
ESB(Enterprise Service Bus,企業服務總線)是一個靈活地用于集成各種應用和各種服務的連接基礎架構。企業服務總線能夠通過簡化應用和服務之間接口的數量、接口大小及接口復雜度等方法使客戶面向服務的架構(SOA)更加強大。ESB可以提供以下功能:路由消息;在請求者與服務者之間轉換傳輸協議;在請求者與服務者之間轉換消息格式;處理來自于各種異構源的業務事件。
梳理業務系統數據,在數據中心統一建立主題數據庫,PDM、ERP系統通過統一轉碼后將數據寫入主題數據庫中;在ESB上對PDM、ERP系統接口進行注冊,各接口之間通過ESB充當消息傳遞媒介,進行數據傳遞。基于企業服務總線的系統集成結束了業務系統之間混亂的點對點模式,開始走向業務系統一數據中心一業務系統的集成,構建企業的全域數據庫,實現數據的統一管理。
2 實現過程
2.1 實現思路
BOM數據傳遞由PDM系統發起,通過ESB的消息服務實現數據同步及消息通知,并通過數據中心進行數據交換。ERP系統通過監聽程序監聽ESB消息服務機構發送的消息,有消息時接收消息,自動解析,并根據消息內容從數據中心提取數據插入ERP系統相應的表中。BOM傳遞過程如圖1所示:(1)當PDM系統中的BOM數據具備發布條件時,手動提交需要傳遞的BOM數據到數據中心。(2)同時向ESB發送本次傳遞對應的消息,ESB負責監聽BOM傳遞的服務,接收到BOM傳遞的消息后自動將消息轉發給事前注冊的消費者(即接收BOM信息的業務系統)。(3)ERP系統實時監聽ESB,當有消息發送過來后,實時獲取消息并對內容進行解析。(4)ERP系統根據消息解析結果,自動從數據中心獲取BOM數據并存儲到數據庫中,從而完成數據的傳遞。
圖1 BOM傳遞過程
2.2 技術實現
具體實現過程分為以下4步:(1)利用PDM系統的API接口開發出應用菜單,進行BOM結構的遍歷和信息的提取;(2)利用中間件產品Inforsuite的API接口開發消息的發送、監聽和接收;(3)對數據中心進行數據的寫入、讀取、更新和刪除;(4)在ERP系統中進行BOM結構的展開、搭建和刪除。
2.2.1 集成信息定義
集成過程中PDM系統需要向ERP系統傳遞的信息包括物料基礎信息及BOM信息,該信息存儲于數據中心。
BOM結構的描述方法總體上可以分為矩陣型、鄰接表型、層次型、父子型以及二叉樹型等。矩陣型、鄰接表型和層次型設計這3種描述方法在保證BOM數據的一致性、重用性方面存在很多問題,但搜索性能較好;父子型和二叉樹型BOM描述方法在保證BOM數據的一致性、重用性方面表現良好,但搜索性能一般。本文重點研究父子型的BOM結構,具體如圖2所示。
圖2 父子型的BOM結構
2.2.2 PDM系統實現過程
PDM系統主要包括信息獲取模塊和信息傳遞模塊。其中信息獲取模塊主要任務是把需要的PDM系統中BOM信息提取出來存儲到臨時緩存中,信息傳遞模塊主要負責把臨時緩存中的信息寫入數據中心中,并向ESB中間件發送JMS消息。PDM系統實現過程如圖3所示。
圖3 PDM系統實現過程
a.用戶在PDM系統的產品結構管理模塊中打開要傳遞的產品BOM后,通過選擇“傳遞BOM”的命令菜單觸發信息獲取模塊。
b.系統獲取當前產品結構管理模塊中的根節點對應BOMLine,獲取BOMLine對應Item下主屬性表中的代號、類型、名稱、版本、物料編碼、關重件標識等屬性。
c.將上一步獲取到的信息存儲到ItemProperty類型臨時堆棧中。
d.遍歷根節點對應BOMLine的子節點,獲取每個子節點與根節點的配對數量關系。
e.如果某個子節點BOMLine有替代件,需要獲取替代件的基本信息,并將編碼、名稱等信息與子節點BOMLine進行關聯。
f.將根節點BOMLine的組成信息以結構化的形式存儲到ItemRelation類型臨時堆棧中。
g.進行遞歸調用,對每一個子節點BOMLine執行b步操作。
h.連接數據中心,判斷ItemProperty類型臨時堆棧中物料是否已存在,存在則更新物料信息,不存在則插人物料信息。
i.自動生成當前BOM的批次號,將ItemRelation類型臨時堆棧中的BOM關系信息寫入數據中心。
j.向ESB發送消息,告知數據傳遞完畢。
2.2.3 ERP系統實現過程
ERP系統負責監聽ESB轉發的來自PDM系統的JMS信息,并依據消息從數據中心讀取BOM數據,導入到系統中,搭建新BOM。
a.消息監聽。
通過部署在接收端的JMS監聽器監聽ESB,有消息時自動接收發送過來的消息,消息以XML格式進行傳輸,監聽方按照約定的格式對其進行解析。消息中包含:被操作表、操作表所屬主題、操作類型(分為增加/修改/刪除標記)等參數信息。
b.BOM數據導入。
消息解析成功后,ERP系統依據消息中傳遞的參數信息調用后臺包進行處理,導入BOM數據。處理邏輯為:消息中操作類型為增加時,ERP系統從數據中心讀取BOM數據,插入BOM表中搭建新BOM;消息中操作類型為修改時,ERP系統自動找到需修改的數據,刪除原數據,重新插入,搭建新版本BOM。消息中操作類型為刪除時,ERP系統自動找到需刪除的數據,刪除并搭建新版本BOM。
3 結束語
目前,企業內PDM、ERP等各種系統的應用已經比較普遍,隨著應用的不斷深入,異構系統的集成已經成為企業信息化建設的關鍵點。本文研究的基于ESB的松耦合集成方式,能夠較好地解決PDM與ERP系統之間的BOM數據集成問題,快速響應企業頻繁的BOM轉化與調整,縮短BOM維護周期,提高企業管理效率,同時該方案對企業各系統之間的綜合集成具有借鑒和參考價值。
轉載請注明出處:拓步ERP資訊網http://www.guhuozai8.cn/
本文標題:基于ESB的BOM集成研究
本文網址:http://www.guhuozai8.cn/html/consultation/10820611126.html