SAP XI技術在ERP與MES集成中的應用
在邯鋼SAP R3與MES集成項目中,根據各個業(yè)務模塊的需求,確定通過xI接口交換的數據信息主要包括以下幾類。
(1)從四級R3下傳到MES的數據,包括物料主數據、客戶主數據、撿配清單、生產訂單等。
(2)從MES上傳到R3的數據,包括質檢判定、生產收貨、物料移動類型記賬等。
(3)三級之間傳輸的數據,包括工廠到工廠采購訂單,三級之間的物料轉儲單等。
針對邯鋼的業(yè)務流程及xI技術特點,該項目的實施流程包括以下幾個步驟。
(1)業(yè)務情景分析。描述要實施的業(yè)務情景及該業(yè)務涉及到的后端系統(tǒng),確定接口策略(新建接口或改造原有接口),設計業(yè)務的技術架構、功能架構以及xI架構,并在SLD(System LandscapeDirectory)中創(chuàng)建系統(tǒng)實體模型。
針對邯鋼ERP與MES集成項目中各個業(yè)務模塊的需求,其業(yè)務情景可描述為:1)在SAP系統(tǒng)內創(chuàng)建銷售訂單;2)進行可用性檢查;3)生成計劃訂單;4)轉換為生產訂單;5)在MES中創(chuàng)建相應數據;6)生產完成后創(chuàng)建相應的收貨單。以上情景的數據傳輸都在xI數據平臺上實現(xiàn),由100多個接口管理數據的接收。
(2)接口分析。確定接口的以下特性及參數:接口的實時性(同步或異步),接口是否需要技術的或者應用層次回應方式的確認(閉環(huán)與否),每個接口的導入和導出消息類型,每個消息類型的數據結構,文本文件的格式,數據庫的結構,IDoc(Intermediate Document),RFC(Request for Comments),BAPI(Business Application Programming Interface)的結構以及XML的數據結構,為每個消息類型提供數據樣本,并在集成知識庫里創(chuàng)建消息對象實體。
以生產訂單管理流程為例,其接口如圖2所示。
(3)映射定義?;诮涌诜治龅慕Y果確定接口的映射規(guī)則,選擇實現(xiàn)映射的技術(圖像工具、JAVA、XSLT)并根據定義的樣本規(guī)則實施映射。
(4)環(huán)境準備。包括測試環(huán)境定義和測試環(huán)境準備。測試環(huán)境定義,包括代理服務器的配置和網絡硬件設備連接性的定義;測試環(huán)境準備,包括完成系統(tǒng)的安裝并在安裝后檢查xI服務,創(chuàng)建用戶,分配用戶權限等;如果是為上線做準備,還必須定義上線切換策略,并將切換策略按照開發(fā)機一測試機一生產機的順序執(zhí)行上傳。

(5)系統(tǒng)配置。配置后端系統(tǒng),保證系統(tǒng)能夠產生和接收與樣本數據一樣的數據,根據步驟(1)~ (4)的結果在集成目錄中配置xI對象和xI集成目錄。
(6)系統(tǒng)測試。用不同的數據集進行點到點的業(yè)務情景測試和上線切換測試。
完成上述步驟并收集各種數據后,進行系統(tǒng)環(huán)境配置并完成以下工作:設定集成情景、建立消息類型、確定業(yè)務系統(tǒng)、確定邏輯路由規(guī)則、確定技術路由規(guī)則、進行ABAP Proxy的調用以及JavaServer Proxy的使用。
3 關鍵問題及解決方案
xI作為新興技術在國內的應用還是首次,它的成功運行很好地支持了邯鋼ERP項目的進行,對國內信息化建設中的數據集成、數據通信有很大的借鑒和推動作用。以下將對系統(tǒng)在實施過程中遇到的多系統(tǒng)通信和數據擁堵問題及其解決方案進行描述。
3.1 多系統(tǒng)通信問題
邯鄲鋼鐵集團信息化項目中包括多個三級系統(tǒng),其中三級的通信通過DB To DB和Web Servers(如Tomcat)兩種方式實現(xiàn)。如何將xI的通信方式與其他的Web Server集成,是系統(tǒng)實施中要解決的一個重要問題。
由于xI本身具有Web Application Server機制,因此在與其他Web Server通信的方式上采用目前通用的SOAP協(xié)議,即由Tomcat組織XML數據通過SOAP協(xié)議組織數據到xI,具體實施過程如下:
建立XML Schema,連接XML文檔事例到XML Schema,SOAP把XML的使用代碼轉化為請求和響應參數編碼模式,并采用HTYP傳輸[3]。一個SOAP方法可以簡單地看作遵循SOAP編碼規(guī)則的HTYP請求和響應。一個SOAP終端則可以看作一個基于HTYP的URL,用來識別方法調用的目標。和Corba/IIOP一樣,SOAP不需要具體的對象被綁定到一個給定的終端,而是由具體實現(xiàn)程序來決定如何把對象終端標識符映射到服務器端的對象。SOAP請求是一個HTYP POST請求,它的類型必須為text/xml,且必須包含一個請求.URI。服務器解釋這個請求.URI的方式與該請求的實現(xiàn)方法相關。
3.2 數據擁堵問題
由于xI與三級系統(tǒng)的連接是一對多的關系,由xI系統(tǒng)對應多個系統(tǒng),而數據下傳采用排隊機制,因此在數據沒有設定優(yōu)先級的情況下,下傳的順序為先人先出。當下傳通信失敗時,xI會自動重新調度通信,直到調度達到一定次數(可配置),才認定該通信失敗,調度下一接口,該數據保存在數據庫中準備手動調度。在正常情況下,xI的隊列可并發(fā)處理多條數據,但一旦下傳數據的任一接收方出現(xiàn)異常,如發(fā)生網絡中斷、數據庫死鎖等情況,由單點故障重復調度數據就會造成數據隊列過長,系統(tǒng)開銷大規(guī)模增加,進而出現(xiàn)單點故障引起數據擁堵的狀況。
針對單點故障引起的數據擁堵問題,項目在實施過程中將XI的數據分發(fā)機制與現(xiàn)有設備想結合,建立分布式體系結構,將易發(fā)生數據異常的接口配置到分流機,如圖3所示。
由于項目中分流系統(tǒng)選用惠普的小型機HP4640,操作系統(tǒng)為HP-ux,數據為為Oracle,而OS/400的數據為為DB2,兩種系統(tǒng)的JVM機制有很大的區(qū)別。因此,分流系統(tǒng)的數據主要保存在Oracle中,數據調度時直接從Orale中調度,而不從DB2中調度,當某個接收點出現(xiàn)問題時可以把有問題的數據拋給Oracle,等該接收點恢復正常時再手工觸發(fā)數據下傳,這種方式將不會影響其他隊列數據正常下傳。
3.3 實施效果
邯鄲鋼鐵集團信息化項目的數據通信不但設計復雜,而且數據流量大、業(yè)務高峰數據壓力大,這些都給硬件以及軟件帶來很大的考驗。XI技術的有效實施,保證了數據的有效傳輸對異常事件的響應速度也得到了顯著提高。目前數據業(yè)務量平均保持在同步數據每天10000-15000條,異步數據8000-12000條左右。當前的系統(tǒng)配置在滿足業(yè)務需要的甚而上優(yōu)化了系統(tǒng)性能,實現(xiàn)了業(yè)務系統(tǒng)的集成與優(yōu)化。
評論