?
由德國SAP公司最新開發的XI(Exchange Infrastructure,交換基礎設施)技術,為企業提供了良好的系統集成環境。基于xI技術,企業能夠實現各個層面的充分集成。作者將以國內首家成功應用SAP XI技術的邯鄲鋼鐵集團公司信息化改造項目為背景,探討xI接口技術在企業ERP與MES集成中的應用。
1 XI技術
SAP XI是SAP開放式集成平臺NetWeaver的核心組件之一,它綜合并發展了中間件以及BC(Business Connector)兩種接連方式。以下將從功能、結構以及連接方式3個方面介紹xI技術。
1.1 功能
基于xI技術企業能夠降低信息系統建設的總體成本,實現如下4個方面的集成。第1層面,將現有管理系統、辦公系統、文檔系統等集中到企業的信息門戶內,實現企業IT系統的單一入口,這個層面,稱為“員工的集成”。第2層面,將各種存放在數據庫中的管理信息,以及分散在集團內部不同地方的非結構化信息(市場信息、報告等文檔信息)集中起來,實現支持經營決策的信息倉庫(BI)和知識管理系統,這個層面,稱為“信息的集成”[2]。第3層面,在通信上使不同環境下的組件能夠交互,在業務過程管理中使客戶在動態的IT環境中對新業務進行建模和應用,這個層面稱為“流程的集成”。第4層面,提供支持開放標準(如XML)的底層架構,實現企業現有信息系統與收購、合作等帶來的各種原有系統間的靈活互接,這個層面稱為“平臺的集成”。
1.2 總體架構
XI技術的總體架構(見圖1)中集成知識庫用于業務情景分析和系統設計;集成目錄用于xI對象的配置和管理;系統平臺目錄用于保存和管理為業務情景創建的系統實例;而集成服務器則用于消息類型建立、邏輯路由規則和技術路由規則的確定以及ABAP Proxy調用的選擇與設計。
?
1.3 連接方式
在與其他系統的連接方式上,xI技術采用以XI為中心Hub的星形連接方式,所有要連接的系統只需與xI做一次連接即可,從而避免了中間件以及BC下應用系統與應用系統之間的一對一連接方式造成的多系統互接時系統集成復雜度急上升(需要連接N×(N一1)次)的問題。另外,xI把所有由源系統傳來的數據格式轉換成XML格式進行處理,判斷其目標系統并將數據再由XML轉換成為目標系統所需要的格式進行輸出,能夠有效實現SAP與不同系統的通信集成。
2 XI實施流程
在邯鋼SAP R3與MES集成項目中,根據各個業務模塊的需求,確定通過xI接口交換的數據信息主要包括以下幾類。
(1)從四級R3下傳到MES的數據,包括物料主數據、客戶主數據、撿配清單、生產訂單等。
(2)從MES上傳到R3的數據,包括質檢判定、生產收貨、物料移動類型記賬等。
(3)三級之間傳輸的數據,包括工廠到工廠采購訂單,三級之間的物料轉儲單等。
針對邯鋼的業務流程及xI技術特點,該項目的實施流程包括以下幾個步驟。
(1)業務情景分析。描述要實施的業務情景及該業務涉及到的后端系統,確定接口策略(新建接口或改造原有接口),設計業務的技術架構、功能架構以及xI架構,并在SLD(System LandscapeDirectory)中創建系統實體模型。
針對邯鋼ERP與MES集成項目中各個業務模塊的需求,其業務情景可描述為:1)在SAP系統內創建銷售訂單;2)進行可用性檢查;3)生成計劃訂單;4)轉換為生產訂單;5)在MES中創建相應數據;6)生產完成后創建相應的收貨單。以上情景的數據傳輸都在xI數據平臺上實現,由100多個接口管理數據的接收。
(2)接口分析。確定接口的以下特性及參數:接口的實時性(同步或異步),接口是否需要技術的或者應用層次回應方式的確認(閉環與否),每個接口的導入和導出消息類型,每個消息類型的數據結構,文本文件的格式,數據庫的結構,IDoc(Intermediate Document),RFC(Request for Comments),BAPI(Business Application Programming Interface)的結構以及XML的數據結構,為每個消息類型提供數據樣本,并在集成知識庫里創建消息對象實體。
以生產訂單管理流程為例,其接口如圖2所示。
(3)映射定義。基于接口分析的結果確定接口的映射規則,選擇實現映射的技術(圖像工具、JAVA、XSLT)并根據定義的樣本規則實施映射。
(4)環境準備。包括測試環境定義和測試環境準備。測試環境定義,包括代理服務器的配置和網絡硬件設備連接性的定義;測試環境準備,包括完成系統的安裝并在安裝后檢查xI服務,創建用戶,分配用戶權限等;如果是為上線做準備,還必須定義上線切換策略,并將切換策略按照開發機一測試機一生產機的順序執行上傳。
?
(5)系統配置。配置后端系統,保證系統能夠產生和接收與樣本數據一樣的數據,根據步驟(1)~ (4)的結果在集成目錄中配置xI對象和xI集成目錄。
(6)系統測試。用不同的數據集進行點到點的業務情景測試和上線切換測試。
完成上述步驟并收集各種數據后,進行系統環境配置并完成以下工作:設定集成情景、建立消息類型、確定業務系統、確定邏輯路由規則、確定技術路由規則、進行ABAP Proxy的調用以及JavaServer Proxy的使用。
3 關鍵問題及解決方案
xI作為新興技術在國內的應用還是首次,它的成功運行很好地支持了邯鋼ERP項目的進行,對國內信息化建設中的數據集成、數據通信有很大的借鑒和推動作用。以下將對系統在實施過程中遇到的多系統通信和數據擁堵問題及其解決方案進行描述。
3.1 多系統通信問題
邯鄲鋼鐵集團信息化項目中包括多個三級系統,其中三級的通信通過DB To DB和Web Servers(如Tomcat)兩種方式實現。如何將xI的通信方式與其他的Web Server集成,是系統實施中要解決的一個重要問題。
由于xI本身具有Web Application Server機制,因此在與其他Web Server通信的方式上采用目前通用的SOAP協議,即由Tomcat組織XML數據通過SOAP協議組織數據到xI,具體實施過程如下:
建立XML Schema,連接XML文檔事例到XML Schema,SOAP把XML的使用代碼轉化為請求和響應參數編碼模式,并采用HTYP傳輸[3]。一個SOAP方法可以簡單地看作遵循SOAP編碼規則的HTYP請求和響應。一個SOAP終端則可以看作一個基于HTYP的URL,用來識別方法調用的目標。和Corba/IIOP一樣,SOAP不需要具體的對象被綁定到一個給定的終端,而是由具體實現程序來決定如何把對象終端標識符映射到服務器端的對象。SOAP請求是一個HTYP POST請求,它的類型必須為text/xml,且必須包含一個請求.URI。服務器解釋這個請求.URI的方式與該請求的實現方法相關。
3.2 數據擁堵問題
由于xI與三級系統的連接是一對多的關系,由xI系統對應多個系統,而數據下傳采用排隊機制,因此在數據沒有設定優先級的情況下,下傳的順序為先人先出。當下傳通信失敗時,xI會自動重新調度通信,直到調度達到一定次數(可配置),才認定該通信失敗,調度下一接口,該數據保存在數據庫中準備手動調度。在正常情況下,xI的隊列可并發處理多條數據,但一旦下傳數據的任一接收方出現異常,如發生網絡中斷、數據庫死鎖等情況,由單點故障重復調度數據就會造成數據隊列過長,系統開銷大規模增加,進而出現單點故障引起數據擁堵的狀況。
針對單點故障引起的數據擁堵問題,項目在實施過程中將XI的數據分發機制與現有設備想結合,建立分布式體系結構,將易發生數據異常的接口配置到分流機,如圖3所示。
由于項目中分流系統選用惠普的小型機HP4640,操作系統為HP-ux,數據為為Oracle,而OS/400的數據為為DB2,兩種系統的JVM機制有很大的區別。因此,分流系統的數據主要保存在Oracle中,數據調度時直接從Orale中調度,而不從DB2中調度,當某個接收點出現問題時可以把有問題的數據拋給Oracle,等該接收點恢復正常時再手工觸發數據下傳,這種方式將不會影響其他隊列數據正常下傳。
3.3 實施效果
邯鄲鋼鐵集團信息化項目的數據通信不但設計復雜,而且數據流量大、業務高峰數據壓力大,這些都給硬件以及軟件帶來很大的考驗。XI技術的有效實施,保證了數據的有效傳輸對異常事件的響應速度也得到了顯著提高。目前數據業務量平均保持在同步數據每天10000-15000條,異步數據8000-12000條左右。當前的系統配置在滿足業務需要的甚而上優化了系統性能,實現了業務系統的集成與優化。
4 結論
?
XI技術作為SAP ERP產品的最新通信技術模塊一經問世,就受到用戶的青睞,國外很多SAP用戶紛紛采用了XI通信平臺連接SAP系統以及非SAP系統,雖然XI技術在國外得到廣泛應用 ,但是國內應用還屬空白,XI在邯鋼信息化改造項目中的成功應用,對企業信息化建設有很好的指導意義。
評論
查看更多