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