監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價(jià)咨詢管理系統(tǒng) | 工程設(shè)計(jì)管理系統(tǒng) | 簽約案例 | 購買價(jià)格 | 在線試用 | 手機(jī)APP | 產(chǎn)品資料
X 關(guān)閉

基于SOA的OA與ERP整合應(yīng)用

申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114

基于SOA的OA與ERP整合應(yīng)用

引言

辦公自動(dòng)化(Office automation,OA)系統(tǒng)是實(shí)現(xiàn)辦公自動(dòng)化的信息系統(tǒng)。企業(yè)資源計(jì)劃系統(tǒng)( EntERP riseResourcePlanning, ERP)是對(duì)企業(yè)中的物流、資金流和信息流進(jìn)行全面集成管理的信息管理系統(tǒng)。企業(yè)通過erp系統(tǒng)實(shí)現(xiàn)供應(yīng)鏈的全面管理。這兩套系統(tǒng)一個(gè)側(cè)重于工作流審批, 一個(gè)側(cè)重于企業(yè)內(nèi)部資源之間的數(shù)據(jù)流動(dòng)。它們一般都彼此獨(dú)立運(yùn)作,提供各自獨(dú)立的功能。但是在企業(yè)中,經(jīng)常有些業(yè)務(wù)流程是貫穿于ERP和OA兩個(gè)系統(tǒng)當(dāng)中的。如采購申請(qǐng)流程中,申請(qǐng)審批、流程的流轉(zhuǎn)是由OA系統(tǒng)完成的,填寫采購用款申請(qǐng)單、付款、做憑證則是ERP系統(tǒng)的功能,因此用戶不得不頻繁地切換兩個(gè)系統(tǒng),才能完成采購申請(qǐng)。此外,企業(yè)在利用OA系統(tǒng)進(jìn)行工作流審批后,產(chǎn)生了很多業(yè)務(wù)數(shù)據(jù),這些數(shù)據(jù)同時(shí)可能是ERP系統(tǒng)的數(shù)據(jù)源,為了避免數(shù)據(jù)的重復(fù)以及保證數(shù)據(jù)源的唯一性,也就產(chǎn)生了OA系統(tǒng)與ERP系統(tǒng)集成的需求。目前在企業(yè)中常見的OA2ERP系統(tǒng)集成方法,歸納起來有如下兩大類:

1)基于應(yīng)用編程接口(App lication Programming Interface,AP I)的封裝集成模式。利用OA與ERP各自提供的訪問底層數(shù)據(jù)庫的函數(shù)和AP I接口,實(shí)現(xiàn)兩系統(tǒng)之間的數(shù)據(jù)訪問

2) 基于數(shù)據(jù)表的互訪模式。采用中間緩沖表,以一致的數(shù)據(jù)模型存儲(chǔ)不同系統(tǒng)間的共享數(shù)據(jù),通過直接對(duì)兩系統(tǒng)的數(shù)據(jù)表進(jìn)行操作的方式,實(shí)現(xiàn)不同系統(tǒng)間的數(shù)據(jù)訪問,以及數(shù)據(jù)的一致和實(shí)時(shí)傳遞。以上方法屬于緊耦合的系統(tǒng)集成方法。緊耦合的集成方式將影響系統(tǒng)的靈活性和擴(kuò)展性,阻礙業(yè)務(wù)的流程調(diào)整和優(yōu)化,不利于企業(yè)的業(yè)務(wù)發(fā)展。

為了解決上述問題,我們需要一種新的企業(yè)應(yīng)用集成方式。該方式不僅能保證原有系統(tǒng)的數(shù)據(jù)安全性和邏輯安全性,而且還能夠?qū)崿F(xiàn)系統(tǒng)之間的松耦合,方便系統(tǒng)流程的重組和優(yōu)化。這種方式就是面向服務(wù)架構(gòu)( Service2OrientedArchITecture, SOA)的企業(yè)應(yīng)用集成方式。

1 OA與ERP的整合的必要性

1)保護(hù)了現(xiàn)有的IT基礎(chǔ)建設(shè)投資在企業(yè)中軟件服務(wù)的整合需求是當(dāng)前企業(yè)中最熱門的需求。這種需求在OA與ERP之間也同樣存在。利用對(duì)現(xiàn)有的OA系統(tǒng)與ERP系統(tǒng)的重用和整合來解決新的業(yè)務(wù)需求,不僅可以低成本高效率地滿足新的需求,也有效地保護(hù)了現(xiàn)有的IT基礎(chǔ)建設(shè)投資。

2)實(shí)現(xiàn)了兩個(gè)系統(tǒng)的優(yōu)勢(shì)互補(bǔ)

OA 系統(tǒng)的最大特點(diǎn)是工作流管理。它具有強(qiáng)大的工作流定制功能,可以適應(yīng)于企業(yè)各種形式的審批表單和流程的需求,并能滿足多層次的審批結(jié)構(gòu)、支持較復(fù)雜的審批層次。而ERP產(chǎn)品的工作流更多地實(shí)現(xiàn)了業(yè)務(wù)上的邏輯數(shù)據(jù)流,它并不著重于行政結(jié)構(gòu)上的審批,因此對(duì)于國內(nèi)很多無法擺脫行政審批結(jié)構(gòu)的企業(yè)來說, ERP軟件在這一方面就顯得遜色。此外ERP系統(tǒng)開發(fā)模式通常是將業(yè)務(wù)流程硬編碼到應(yīng)用系統(tǒng)的整體結(jié)構(gòu)中,每次業(yè)務(wù)流程的修改都可能引起程序結(jié)構(gòu)的大幅變動(dòng)。這種僵硬的體系結(jié)構(gòu)增加系統(tǒng)復(fù)雜性,阻礙系統(tǒng)靈活性。通過ERP和OA的整合,利用OA的強(qiáng)大的工作流定制功能,可以很好地解決ERP系統(tǒng)存在的問題。ERP系統(tǒng)是面向功能的事務(wù)處理系統(tǒng),具體解決某個(gè)或某些領(lǐng)域的問題,提高事務(wù)處理的效率和水平工作流管理的著眼點(diǎn)是在企業(yè)的整個(gè)業(yè)務(wù)層,提高企業(yè)的業(yè)務(wù)處理水平。在工作流管理的支撐下,通過集成具體的業(yè)務(wù)應(yīng)用軟件系統(tǒng)(如: ERP) ,可以良好地完成對(duì)企業(yè)經(jīng)營(yíng)過程運(yùn)行的支持,在更廣的范圍內(nèi),不同的時(shí)間跨度上做好企業(yè)的經(jīng)營(yíng)管理,提高企業(yè)的整體水平和競(jìng)爭(zhēng)力。

3) 有利于企業(yè)業(yè)務(wù)流程重構(gòu)( Business ProcessReengineering,BPR)

企業(yè)生產(chǎn)經(jīng)營(yíng)活動(dòng)是由各種業(yè)務(wù)流程交織在一起組成的。建設(shè)ERP系統(tǒng)的重要工作之一就是對(duì)用戶的業(yè)務(wù)流程的分析、建模和實(shí)施。在市場(chǎng)競(jìng)爭(zhēng)日趨激烈的時(shí)代,客戶需求瞬息萬變,產(chǎn)品生命周期不斷縮短,技術(shù)不斷創(chuàng)新,企業(yè)要在這樣一個(gè)競(jìng)爭(zhēng)和變化的外部環(huán)境下生存,必須不斷地調(diào)整和優(yōu)化企業(yè)的各種業(yè)務(wù)流程,對(duì)流程進(jìn)行重構(gòu)?;赟OA架構(gòu)的ERP和OA系統(tǒng)的整合方案,通過業(yè)務(wù)流程的定義,靈活地將ERP系統(tǒng)的功能連接在一起,快速完成企業(yè)BPR和ERP的重構(gòu)。

2 基于SOA的OA與ERP的整合應(yīng)用

2. 1 基本思想

OA 系統(tǒng)中的工作流[ 3, 4 ]模塊包括工作流過程定義組件、工作流引擎組件、工作流監(jiān)控組件、工作流客戶端和應(yīng)用接口組件等部分。過程定義是建立工作流的過程,將企業(yè)的實(shí)際業(yè)務(wù)過程轉(zhuǎn)化為計(jì)算機(jī)可處理的工作流模型。工作流引擎負(fù)責(zé)對(duì)工作流進(jìn)行實(shí)例化、執(zhí)行和管理。監(jiān)控組件負(fù)責(zé)對(duì)工作流的執(zhí)行進(jìn)行管理、分析與控制。工作流客戶端負(fù)責(zé)人機(jī)交互,提供工作流執(zhí)行的接口,幫助完成業(yè)務(wù)過程的執(zhí)行。相關(guān)應(yīng)用程序接口負(fù)責(zé)與應(yīng)用程序的接口,提供工作流執(zhí)行時(shí)所需要的軟件以協(xié)助工作流的正常執(zhí)行。通過對(duì)企業(yè)實(shí)際業(yè)務(wù)流程的分析,抽取出原子級(jí)的企業(yè)業(yè)務(wù)活動(dòng)。首先通過工作流過程定義組件將這些活動(dòng)以及與活動(dòng)相關(guān)的信息、人員和活動(dòng)對(duì)應(yīng)的Web服務(wù)統(tǒng)一集成起來,然后通過工作流引擎組件按照所定義的業(yè)務(wù)流程模型進(jìn)行業(yè)務(wù)的執(zhí)行,在適當(dāng)?shù)臅r(shí)間激活相應(yīng)的Web service,傳遞Web service的參數(shù),獲取Web service的處理結(jié)果,從而實(shí)現(xiàn)OA系統(tǒng)和ERP系統(tǒng)全面集成。基于SOA的OA與ERP的整合應(yīng)用的架構(gòu)體系圖如圖1

2. 2 基于SOA架構(gòu)的ERP系統(tǒng)

2. 2. 1 SOA的本質(zhì)和實(shí)現(xiàn)技術(shù)

SOA是一個(gè)整合各種服務(wù)的架構(gòu)平臺(tái)。核心本質(zhì)是實(shí)現(xiàn)服務(wù)和技術(shù)的完全分離,從而在最大限度上實(shí)現(xiàn)服務(wù)的集成和重組。

SOA體系架構(gòu)的主要特點(diǎn)是粗粒度和松耦合。服務(wù)之間的松耦合是指服務(wù)具有中立的接口(沒有強(qiáng)制綁定到特定的實(shí)現(xiàn)上)特征;服務(wù)的粗粒度是指服務(wù)可以實(shí)現(xiàn)更多的功能,并且依賴于更大的數(shù)據(jù)集。SOA的實(shí)現(xiàn)技術(shù)包括Web service和企業(yè)服務(wù)總線。

1)Web services技術(shù)使用一系列標(biāo)準(zhǔn)和協(xié)議實(shí)現(xiàn)相關(guān)的功能,服務(wù)提供者用WSDL (Web服務(wù)描述語言)描述Web服務(wù),用UDD I(統(tǒng)一描述、發(fā)現(xiàn)和集成)向服務(wù)注冊(cè)代理發(fā)布和注冊(cè)Web服務(wù),服務(wù)請(qǐng)求者通過UDD I進(jìn)行查詢,找到所需的服務(wù)后,利用SOAP (簡(jiǎn)單對(duì)象協(xié)議)來綁定、調(diào)用這些服務(wù)。

因?yàn)閃SDL中給出了Web service的地址URL,在本文中外部直接通過WSDL提供的URL進(jìn)行相應(yīng)的Web service調(diào)用,而不使用UDD I機(jī)制。

2)企業(yè)服務(wù)總線以中介的身份處于服務(wù)請(qǐng)求者和服務(wù)提供者之間,這樣服務(wù)請(qǐng)求者任何的服務(wù)請(qǐng)求,先送到服務(wù)總線,由服務(wù)總線將請(qǐng)求信息轉(zhuǎn)給服務(wù)提供者,得到返回信息后,服務(wù)總線再傳給服務(wù)請(qǐng)求者。

2. 2. 2 基于SOA的ERP系統(tǒng)的實(shí)現(xiàn)方法

為了實(shí)現(xiàn)OA與ERP系統(tǒng)之間的整合應(yīng)用,必須通過構(gòu)建SOA架構(gòu)平臺(tái)使得ERP具有給OA系統(tǒng)提供服務(wù)的功能。構(gòu)建基于SOA架構(gòu)的ERP系統(tǒng)包括兩個(gè)方面:

1) 從接近實(shí)際業(yè)務(wù)的角度,結(jié)合SOA架構(gòu)服務(wù)松耦合的要點(diǎn),把ERP系統(tǒng)功能分解成粗粒度和細(xì)粒度的服務(wù)。如圖1所示的系統(tǒng)體系結(jié)構(gòu)中, ERP各個(gè)業(yè)務(wù)模塊的功能如:庫存管理、采購管理、銷售管理、分銷管理等作為粗粒度服務(wù)發(fā)布,而每個(gè)模塊的功能又是由多個(gè)子功能組成,我們把這些子功能作為細(xì)粒度服務(wù)發(fā)布。如銷售管理服務(wù)就由銷售報(bào)價(jià)、客戶訂單、客戶出貨、客戶檔案等細(xì)粒度服務(wù)組合而成。每個(gè)細(xì)粒度服務(wù)利用數(shù)據(jù)訪問邏輯組件對(duì)數(shù)據(jù)庫表進(jìn)行查找、更新、保存等操作。

2)通過企業(yè)服務(wù)總線將這些分散的Web服務(wù)進(jìn)行集中的管理。當(dāng)服務(wù)請(qǐng)求者向服務(wù)總線發(fā)送請(qǐng)求信息的時(shí)候,首先是發(fā)給服務(wù)總線的代理服務(wù),代理服務(wù)在收到服務(wù)后,轉(zhuǎn)給業(yè)務(wù)服務(wù),由它進(jìn)一步轉(zhuǎn)給外部服務(wù)提供者。

2. 3 建立集成Web service工作流環(huán)境

工作流環(huán)境將用戶定義的業(yè)務(wù)流程與ERP 的Webservice關(guān)聯(lián)起來,并管理和控制業(yè)務(wù)流程的運(yùn)行,是對(duì)貫穿于OA和ERP系統(tǒng)的業(yè)務(wù)流程邏輯的具體實(shí)現(xiàn)。它主要包括流程定義和流程的執(zhí)行、監(jiān)控兩大部分。

2. 3. 1 流程的定義

流程的定義是將活動(dòng)和相關(guān)的Web service、用戶和數(shù)據(jù)信息關(guān)聯(lián)起來,形成一個(gè)工作流引擎可解析的業(yè)務(wù)流程。建立活動(dòng)與Web service的聯(lián)系是其中的關(guān)鍵步驟。

通過Web service的WSDL,可以定義活動(dòng)所需調(diào)用的Web service,從而建立活動(dòng)與Web服務(wù)的關(guān)聯(lián),一旦建立了活動(dòng)與Web service的關(guān)系,活動(dòng)的輸入/輸出就映射為Webservice的輸入/輸出參數(shù)。

2. 3. 2 流程的執(zhí)行和監(jiān)控

1)將流程定義部署到工作流數(shù)據(jù)庫中后,工作流引擎組件在按照流程定義文檔推動(dòng)流程流轉(zhuǎn)時(shí),發(fā)現(xiàn)某個(gè)活動(dòng)需要調(diào)用服務(wù),就通過URL 向服務(wù)總線上發(fā)送請(qǐng)求信息,Web服務(wù)總線根據(jù)管理器去處理事務(wù),處理完后通知工作流引擎,然后工作流引擎執(zhí)行下一個(gè)流程或任務(wù);

2)工作流引擎組件、Service Bus、Web service需要掛接在工作流管理和監(jiān)控服務(wù)上,以便能監(jiān)控業(yè)務(wù)流程的流程實(shí)例、活動(dòng)實(shí)例以及相關(guān)Web service的運(yùn)行情況。

3 基于SOA的OA與ERP的整合應(yīng)用實(shí)現(xiàn)

3. 1 組織模型的統(tǒng)一

OA 系統(tǒng)和ERP系統(tǒng)都有各自的組織模型。OA系統(tǒng)的組織模型是服務(wù)于企業(yè)行政組織層面的, ERP的組織模型是服務(wù)于企業(yè)業(yè)務(wù)層面的。在工作流的建模過程中,工作流流程活動(dòng)的執(zhí)行者(也即工作流參與者)是參考組織模型建立的。所以有必須對(duì)兩個(gè)系統(tǒng)的組織模型進(jìn)行統(tǒng)一。本文中采用對(duì)OA系統(tǒng)的組織模型重定義的方法,增加OA系統(tǒng)組織結(jié)構(gòu)的層次數(shù)量,把ERP用戶和OA用戶都在新的組織結(jié)構(gòu)中反映出來。

3. 2 調(diào)用Web service的訪問控制機(jī)制

工作流引擎調(diào)用ERP的Web service時(shí),需要進(jìn)行身份認(rèn)證,通過驗(yàn)證的用戶,才能調(diào)用Web service接口方法。本文中通過ERP的身份認(rèn)證Web服務(wù)接口方法實(shí)現(xiàn)調(diào)用Web service時(shí)的訪問控制。在流程表單中輸入ERP系統(tǒng)的用戶名和密碼,通過SOAP請(qǐng)求消息傳遞給身份認(rèn)證Web服務(wù),作為該Web服務(wù)的輸入?yún)?shù)。在第一次訪問Web service時(shí)需要進(jìn)行身份認(rèn)證,以后可以通過從Session (會(huì)話)中取得用戶信息的方式持續(xù)訪問,直至退出系統(tǒng)或者Session超時(shí)。

3. 3 流程表單

流程表單中的字段分三種類型:與流程相關(guān)的字段、與ERP系統(tǒng)相關(guān)的字段和其他字段。與流程相關(guān)的字段如:采購申請(qǐng)中采購用款金額字段。

當(dāng)用款金額小于1萬時(shí),流程流轉(zhuǎn)給財(cái)務(wù)主管審批;當(dāng)金額大于或等于1萬時(shí),流程要流轉(zhuǎn)給總經(jīng)理審批。與ERP系統(tǒng)相關(guān)的字段,即為Web service的輸入?yún)?shù),在工作流引擎組件調(diào)用具體的Web service 的時(shí)候, 作為SOAP請(qǐng)求信息的一部分,傳遞給Web service的提供者。如采購申請(qǐng)表單中,采購物品的物料編號(hào)、采購數(shù)量等信息都要作為ERP的采購管理Web service的“采購信息保存”接口方法的輸入?yún)?shù)。其他字段:如審批意見、領(lǐng)導(dǎo)建議和采購原因描述等,這些數(shù)據(jù)通過流程的流轉(zhuǎn)實(shí)現(xiàn)信息的采集和共享, 為管理和決策過程提供依據(jù)。

3. 4 基于SOA的OA與ERP的整合應(yīng)用建模

1)用戶登錄OA系統(tǒng)后,根據(jù)OA系統(tǒng)的人員配置信息確定身份,此用戶同時(shí)也獲得了其相應(yīng)的權(quán)限。

2)身份確定后, OA系統(tǒng)根據(jù)此用戶的權(quán)限范圍內(nèi)的工作流程和工作列表,提供流程表單。

3)用戶在工作流表單上填寫數(shù)據(jù),包括與流程控制相關(guān)的信息、與ERP系統(tǒng)相關(guān)的參數(shù)及其他字段信息。

4)工作流引擎根據(jù)流程定義文檔控制流程執(zhí)行,當(dāng)流程流轉(zhuǎn)到某個(gè)需要調(diào)用Web service的活動(dòng)的時(shí)候,發(fā)送SOAP請(qǐng)求信息給服務(wù)提供者。

5)Web service利用數(shù)據(jù)訪問邏輯組件對(duì)數(shù)據(jù)庫表進(jìn)行查找、更新、保存等操作。以采購申請(qǐng)為例,用戶調(diào)用ERP的采購管理Web service的“采購信息保存”接口方法將采購的物料編號(hào)、采購數(shù)量、價(jià)格范圍、供應(yīng)商等存儲(chǔ)到ERP的DB中。

6)服務(wù)提供者實(shí)現(xiàn)服務(wù)之后,將SOAP返回信息傳回給OA系統(tǒng),其中包括單據(jù)編號(hào)和單據(jù)狀態(tài)等。

7)當(dāng)工作流引擎收到ERP系統(tǒng)傳來返回信息后,根據(jù)WSDL文檔將SOAP返回消息解析成自己能夠理解的內(nèi)容,然后自動(dòng)將其存入流程表單中。

8)工作流引擎將工作流表單傳送給服務(wù)器,然后根據(jù)工作流控制數(shù)據(jù)和組織/角色模型將流程表單傳遞給下一個(gè)執(zhí)行者,并同時(shí)發(fā)送E2mail通知。

4 結(jié)語

基于SOA的OA與ERP的集成方案,可將ERP的各個(gè)功能組件通過發(fā)布成Web service、Service Bus進(jìn)行集中管理與OA的工作流管理模塊完全整合在一起,做到既能有效地進(jìn)行軟件服務(wù)的整合,又能實(shí)現(xiàn)松耦合的集成。通過把ERP中零散的功能通過業(yè)務(wù)流程連接在一起,從而改變了ERP系統(tǒng)原有的按照功能模塊劃分的模式,使ERP的每個(gè)功能業(yè)務(wù)通過工作流,按照業(yè)務(wù)流程模式靈活地執(zhí)行結(jié)合,快速完成企業(yè) BPR和ERP系統(tǒng)的搭建,更好地完成對(duì)企業(yè)經(jīng)營(yíng)過程運(yùn)行的支持,在更廣的范圍內(nèi),不同的時(shí)間跨度上做好企業(yè)的經(jīng)營(yíng)管理,提高了企業(yè)的整體水平和競(jìng)爭(zhēng)。(CIO時(shí)代論壇)

 

發(fā)布:2007-05-06 10:21    編輯:泛普軟件 · xiaona    [打印此頁]    [關(guān)閉]
網(wǎng)上辦公軟件
聯(lián)系方式

成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓

咨詢:400-8352-114

加微信,免費(fèi)獲取試用系統(tǒng)

QQ在線咨詢

泛普OA辦公軟件系統(tǒng)其他應(yīng)用

OA辦公軟件系統(tǒng) 高級(jí)辦公軟件 企業(yè)OA辦公系統(tǒng) 網(wǎng)絡(luò)辦公系統(tǒng) 無紙化辦公系統(tǒng) 自動(dòng)化辦公軟件 手機(jī)OA辦公系統(tǒng) 手機(jī)日程管理軟件 移動(dòng)OA辦公系統(tǒng) 云OA辦公 微信OA系統(tǒng)