據(jù)消息頭信息記錄流程集成歷史;
控制流程代理步驟和消息代理順序執(zhí)行。
[0033]所述流程服務(wù)代理實(shí)現(xiàn)了應(yīng)用集成服務(wù)接口的實(shí)現(xiàn)類,該流程服務(wù)代理中包括流程進(jìn)程的邏輯,該邏輯分為輸出類流程服務(wù)代理和輸入類流程服務(wù)代理;輸出類流程服務(wù)代理根據(jù)業(yè)務(wù)對(duì)象的數(shù)據(jù)變化或者顯示的調(diào)用來(lái)觸發(fā),功能是進(jìn)行相關(guān)性檢查、組裝消息、承擔(dān)服務(wù)消費(fèi)者或事件通知者的角色;輸入類流程服務(wù)代理是服務(wù)的提供者,根據(jù)收到的消息進(jìn)行相應(yīng)的邏輯處理。
[0034]所述輸出類流程服務(wù)代理,一旦服務(wù)調(diào)用者代理被業(yè)務(wù)流框架調(diào)用,需要順序執(zhí)行以下任務(wù)去組裝發(fā)送消息:
首先將輸出類流程服務(wù)代理初始化,確定所有相關(guān)的業(yè)務(wù)對(duì)象實(shí)例;
判斷與后續(xù)流程的相關(guān)性,判斷哪個(gè)節(jié)點(diǎn)與后續(xù)流程相關(guān),如果沒(méi)有,則返回;
條件判斷,判斷業(yè)務(wù)數(shù)據(jù)變化的類型,業(yè)務(wù)流框架檢查所有流程相關(guān)的條件類型;
組裝消息的內(nèi)容;
檢查返回消息的內(nèi)容、消息結(jié)構(gòu)和值的完整性和一致性,收到錯(cuò)誤消息時(shí)進(jìn)行異常處理;
通過(guò)業(yè)務(wù)對(duì)象框架接口修改業(yè)務(wù)數(shù)據(jù)。
[0035]收到錯(cuò)誤消息時(shí)進(jìn)行異常處理的具體過(guò)程為:如果不能成功執(zhí)行的流程步驟,代理設(shè)置錯(cuò)誤標(biāo)志,添加至消息處理程序中;如果服務(wù)調(diào)用者返回的消息到消息處理程序中,業(yè)務(wù)對(duì)象框架需要去處理消息。
[0036]所述輸入類流程服務(wù)代理由服務(wù)提供者定義,該服務(wù)提供者的任務(wù)是檢查接收的消息內(nèi)容并更新一個(gè)或多個(gè)業(yè)務(wù)對(duì)象,該輸入類流程服務(wù)代理包含以下順序步驟:
首先將輸入類流程服務(wù)代理初始化,確定所有相關(guān)的業(yè)務(wù)對(duì)象實(shí)例;
鎖定業(yè)務(wù)對(duì)象;
檢查輸入的消息內(nèi)容; 通過(guò)業(yè)務(wù)對(duì)象框架接口修改業(yè)務(wù)數(shù)據(jù);
檢索服務(wù)提供者受影響的業(yè)務(wù)數(shù)據(jù);
組裝響應(yīng)消息。
[0037]所述的流程集成歷史,用來(lái)存儲(chǔ)業(yè)務(wù)流框架運(yùn)行時(shí)處理過(guò)程的信息;它是由一組數(shù)據(jù)庫(kù)表連同API來(lái)進(jìn)行訪問(wèn)的;流程集成歷史包含控制過(guò)程邏輯的必要信息,存儲(chǔ)了發(fā)送和接收信息、操作代碼、相關(guān)業(yè)務(wù)對(duì)象節(jié)點(diǎn)的引用關(guān)系,來(lái)記錄業(yè)務(wù)流的執(zhí)行過(guò)程;流程集成歷史既是調(diào)用端流程的一部分,也是服務(wù)提供端流程的一部分。
[0038]所述的流程跟蹤管理,是追蹤業(yè)務(wù)對(duì)象之間伴隨業(yè)務(wù)流轉(zhuǎn)過(guò)程中的引用和參照關(guān)系,通過(guò)一個(gè)業(yè)務(wù)對(duì)象,追溯到后續(xù)業(yè)務(wù)流程中哪些業(yè)務(wù)對(duì)象被創(chuàng)建,并能夠聯(lián)查到后續(xù)業(yè)務(wù)對(duì)象的詳細(xì)信息。流程跟蹤目的是為了增加流程的透明度,通過(guò)流程追蹤可以形成當(dāng)前實(shí)例業(yè)務(wù)流轉(zhuǎn)的路徑,如果需要可以查詢到業(yè)務(wù)流流轉(zhuǎn)在哪一步出現(xiàn)了瓶頸,人工督促相關(guān)的負(fù)責(zé)人加快處理。
[0039]實(shí)施例:
圖4是銷售訂單生成銷售發(fā)票的業(yè)務(wù)流程圖,需要進(jìn)行銷售訂單服務(wù)接口的注冊(cè)(圖6),服務(wù)代理的定義(圖7),及消息結(jié)構(gòu)的定義(圖8)。同理,也需要進(jìn)行銷售發(fā)票接口的注冊(cè),服務(wù)代理的定義,及消息結(jié)構(gòu)的定義。
[0040]其中銷售訂單和發(fā)票的服務(wù)注冊(cè)基本信息記錄在業(yè)務(wù)流系統(tǒng)中。定義消息結(jié)構(gòu)時(shí),可以從業(yè)務(wù)對(duì)象模型中引入字段,在開(kāi)發(fā)階段可以修改引入字段。在對(duì)應(yīng)表節(jié)點(diǎn)上可以擴(kuò)展字段,在節(jié)點(diǎn)上點(diǎn)擊擴(kuò)展字段,可添加自定義字段,來(lái)滿足定制化需求。
[0041]圖5是銷售訂單生成銷售發(fā)票的業(yè)務(wù)流原理圖,在產(chǎn)品開(kāi)發(fā)階段,銷售訂單開(kāi)發(fā)人員需要基于業(yè)務(wù)流框架的輸出類服務(wù)代理接口,開(kāi)發(fā)出銷售訂單的輸出類消息代理。同理,發(fā)票業(yè)務(wù)系統(tǒng)也需要開(kāi)發(fā)相應(yīng)的輸入類服務(wù)代理接口。如果在消息結(jié)構(gòu)上進(jìn)行擴(kuò)展字段后,與之有關(guān)的服務(wù)代理實(shí)現(xiàn)也需要進(jìn)行擴(kuò)展
在客戶方進(jìn)行開(kāi)始環(huán)境部署時(shí),需要將服務(wù)注冊(cè)消息注冊(cè)到ESB中,并且擴(kuò)充信息,如系統(tǒng)標(biāo)識(shí)等。服務(wù)發(fā)布發(fā)布時(shí)還需要生成根據(jù)ESB要求生成服務(wù)。
[0042]業(yè)務(wù)系統(tǒng)開(kāi)發(fā)人員在開(kāi)發(fā)期,已經(jīng)在ESB系統(tǒng)中預(yù)置了流程模版,具體實(shí)施期間,實(shí)施人員可以基于客戶實(shí)際需求,調(diào)整路由規(guī)則和轉(zhuǎn)換規(guī)則。
[0043]如上所述,對(duì)于兩個(gè)模塊間這一類的流程主要是要考慮服務(wù)之間點(diǎn)對(duì)點(diǎn)的集成,通過(guò)業(yè)務(wù)服務(wù)的合理分拆,服務(wù)之間兩兩連接最終形成一個(gè)完整的可配置的靈活的業(yè)務(wù)流程圖。使業(yè)務(wù)流程靈活可配置,自適應(yīng),可擴(kuò)展,可管理,滿足了系統(tǒng)的上下游業(yè)務(wù)之間需要頻繁的協(xié)作需求,實(shí)現(xiàn)企業(yè)經(jīng)營(yíng)效益的最大化。
[0044]通過(guò)上面【具體實(shí)施方式】,所述技術(shù)領(lǐng)域的技術(shù)人員可容易的實(shí)現(xiàn)本發(fā)明。但是應(yīng)當(dāng)理解,本發(fā)明并不限于上述的【具體實(shí)施方式】。在公開(kāi)的實(shí)施方式的基礎(chǔ)上,所述技術(shù)領(lǐng)域的技術(shù)人員可任意組合不同的技術(shù)特征,從而實(shí)現(xiàn)不同的技術(shù)方案。
[0045]除說(shuō)明書(shū)所述的技術(shù)特征外,均為本專業(yè)技術(shù)人員的已知技術(shù)。
【主權(quán)項(xiàng)】
1.一種ERP領(lǐng)域的業(yè)務(wù)流實(shí)現(xiàn)方法,其特征在于,其實(shí)現(xiàn)過(guò)程為: 服務(wù)調(diào)用者在服務(wù)調(diào)用端的業(yè)務(wù)對(duì)象框架通過(guò)觸發(fā)或顯示調(diào)用的方式調(diào)用業(yè)務(wù)流框架,業(yè)務(wù)流框架調(diào)度輸出類的流程服務(wù)代理處理消息后,把消息傳遞給企業(yè)服務(wù)總線ESB,該流程服務(wù)代理實(shí)現(xiàn)了應(yīng)用集成服務(wù)接口的實(shí)現(xiàn)類,其具體分為輸出類流程服務(wù)代理和輸入類流程服務(wù)代理; ESB進(jìn)行消息的路由和映射,調(diào)用業(yè)務(wù)流框架的服務(wù)提供者:業(yè)務(wù)流框架調(diào)度服務(wù)提供者的輸入類流程服務(wù)代理來(lái)處理消息的檢驗(yàn)和轉(zhuǎn)換,然后調(diào)用業(yè)務(wù)對(duì)象框架接口讀/寫(xiě)業(yè)務(wù)對(duì)象數(shù)據(jù),流程集成框架在修改完業(yè)務(wù)對(duì)象數(shù)據(jù)后,組織響應(yīng)消息,通過(guò)ESB響應(yīng)服務(wù)調(diào)用者; 服務(wù)調(diào)用端的流程服務(wù)代理根據(jù)響應(yīng)消息修改BO系統(tǒng),同時(shí)業(yè)務(wù)流框架還提供包括流程跟蹤管理、錯(cuò)誤與沖突處理的功能。2.根據(jù)權(quán)利要求1所述的一種ERP領(lǐng)域的業(yè)務(wù)流實(shí)現(xiàn)方法,其特征在于,所述業(yè)務(wù)對(duì)象,是指企業(yè)應(yīng)用中的業(yè)務(wù)實(shí)體的技術(shù)抽象和封裝,該業(yè)務(wù)對(duì)象包含了數(shù)據(jù)模型和業(yè)務(wù)操作邏輯的封裝,是從業(yè)務(wù)邏輯的角度不可細(xì)分的最小實(shí)體單位。3.根據(jù)權(quán)利要求1所述的一種ERP領(lǐng)域的業(yè)務(wù)流實(shí)現(xiàn)方法,其特征在于,所述業(yè)務(wù)流框架,包括以下的服務(wù): 查找注冊(cè)的服務(wù)代理,即根據(jù)業(yè)務(wù)對(duì)象編號(hào)去代理注冊(cè)表查詢對(duì)應(yīng)服務(wù)代理; 控制順序執(zhí)行服務(wù)代理的任務(wù),根據(jù)不同的類型有條件的控制服務(wù)代理的執(zhí)行,這里的不同類型包括異步、同步、輸入、輸出; 更新流程集成歷史信息,對(duì)框架流轉(zhuǎn)過(guò)程數(shù)據(jù)的變化歷史進(jìn)行記錄; 異常處理和沖突機(jī)制,對(duì)流轉(zhuǎn)過(guò)程異常和沖突進(jìn)行實(shí)時(shí)處理,提供錯(cuò)誤和沖突恢復(fù)機(jī)制; 根據(jù)消息結(jié)構(gòu)和擴(kuò)展結(jié)構(gòu)初始消息結(jié)構(gòu),服務(wù)代理中組織數(shù)據(jù)時(shí)填充消息數(shù)據(jù); 初始錯(cuò)誤消息結(jié)構(gòu),并控制消息傳遞,根據(jù)消息內(nèi)容進(jìn)行錯(cuò)誤或沖突策略處理; 控制流程轉(zhuǎn)換過(guò)程消息頭信息,根據(jù)消息頭信息記錄流程集成歷史; 控制流程代理步驟和消息代理順序執(zhí)行。4.根據(jù)權(quán)利要求1所述的一種ERP領(lǐng)域的業(yè)務(wù)流實(shí)現(xiàn)方法,其特征在于,所述流程服務(wù)代理實(shí)現(xiàn)了應(yīng)用集成服務(wù)接口的實(shí)現(xiàn)類,該流程服務(wù)代理中包括流程進(jìn)程的邏輯,該邏輯分為輸出類流程服務(wù)代理和輸入類流程服務(wù)代理;輸出類流程服務(wù)代理根據(jù)業(yè)務(wù)對(duì)象的數(shù)據(jù)變化或者顯示的調(diào)用來(lái)觸發(fā),功能是進(jìn)行相關(guān)性檢查、組裝消息、承擔(dān)服務(wù)消費(fèi)者或事件通知者的角色;輸入類流程服務(wù)代理是服務(wù)的提供者,根據(jù)收到的消息進(jìn)行相應(yīng)的邏輯處理。5.根據(jù)權(quán)利要求4所述的一種ERP領(lǐng)域的業(yè)務(wù)流實(shí)現(xiàn)方法,其特征在于,所述輸出類流程服務(wù)代理,一旦服務(wù)調(diào)用者代理被業(yè)務(wù)流框架調(diào)用,需要順序執(zhí)行以下任務(wù)去組裝發(fā)送消息: 首先將輸出類流程服務(wù)代理初始化,確定所有相關(guān)的業(yè)務(wù)對(duì)象實(shí)例; 判斷與后續(xù)流程的相關(guān)性,判斷哪個(gè)節(jié)點(diǎn)與后續(xù)流程相關(guān),如果沒(méi)有,則返回; 條件判斷,判斷業(yè)務(wù)數(shù)據(jù)變化的類型,業(yè)務(wù)流框架檢查所有流程相關(guān)的條件類型; 組裝消息的內(nèi)容; 檢查返回消息的內(nèi)容、消息結(jié)構(gòu)和值的完整性和一致性,收到錯(cuò)誤消息時(shí)進(jìn)行異常處理; 通過(guò)業(yè)務(wù)對(duì)象框架接口修改業(yè)務(wù)數(shù)據(jù)。6.根據(jù)權(quán)利要求5所述的一種ERP領(lǐng)域的業(yè)務(wù)流實(shí)現(xiàn)方法,其特征在于,收到錯(cuò)誤消息時(shí)進(jìn)行異常處理的具體過(guò)程為:如果不能成功執(zhí)行的流程步驟,代理設(shè)置錯(cuò)誤標(biāo)志,添加至消息處理程序中;如果服務(wù)調(diào)用者返回的消息到消息處理程序中,業(yè)務(wù)對(duì)象框架需要去處理消息。7.根據(jù)權(quán)利要求4所述的一種ERP領(lǐng)域的業(yè)務(wù)流實(shí)現(xiàn)方法,其特征在于,所述輸入類流程服務(wù)代理由服務(wù)提供者定義,該服務(wù)提供者的任務(wù)是檢查接收的消息內(nèi)容并更新一個(gè)或多個(gè)業(yè)務(wù)對(duì)象,該輸入類流程服務(wù)代理包含以下順序步驟: 首先將輸入類流程服務(wù)代理初始化,確定所有相關(guān)的業(yè)務(wù)對(duì)象實(shí)例; 鎖定業(yè)務(wù)對(duì)象; 檢查輸入的消息內(nèi)容; 通過(guò)業(yè)務(wù)對(duì)象框架接口修改業(yè)務(wù)數(shù)據(jù); 檢索服務(wù)提供者受影響的業(yè)務(wù)數(shù)據(jù); 組裝響應(yīng)消息。8.根據(jù)權(quán)利要求3所述的一種ERP領(lǐng)域的業(yè)務(wù)流實(shí)現(xiàn)方法,其特征在于,所述的流程集成歷史,用來(lái)存儲(chǔ)業(yè)務(wù)流框架運(yùn)行時(shí)處理過(guò)程的信息;它是由一組數(shù)據(jù)庫(kù)表連同API來(lái)進(jìn)行訪問(wèn)的;流程集成歷史包含控制過(guò)程邏輯的必要信息,存儲(chǔ)了發(fā)送和接收信息、操作代碼、相關(guān)業(yè)務(wù)對(duì)象節(jié)點(diǎn)的引用關(guān)系,來(lái)記錄業(yè)務(wù)流的執(zhí)行過(guò)程;流程集成歷史既是調(diào)用端流程的一部分,也是服務(wù)提供端流程的一部分。9.根據(jù)權(quán)利要求1所述的一種ERP領(lǐng)域的業(yè)務(wù)流實(shí)現(xiàn)方法,其特征在于,所述的流程跟蹤管理,是追蹤業(yè)務(wù)對(duì)象之間伴隨業(yè)務(wù)流轉(zhuǎn)過(guò)程中的引用和參照關(guān)系,通過(guò)一個(gè)業(yè)務(wù)對(duì)象,追溯到后續(xù)業(yè)務(wù)流程中哪些業(yè)務(wù)對(duì)象被創(chuàng)建,并能夠聯(lián)查到后續(xù)業(yè)務(wù)對(duì)象的詳細(xì)信息。
【專利摘要】本發(fā)明公開(kāi)了一種ERP領(lǐng)域的業(yè)務(wù)流實(shí)現(xiàn)方法,其實(shí)現(xiàn)過(guò)程為:服務(wù)調(diào)用者在服務(wù)調(diào)用端的業(yè)務(wù)對(duì)象框架通過(guò)觸發(fā)或顯示調(diào)用的方式調(diào)用業(yè)務(wù)流框架,業(yè)務(wù)流框架調(diào)度輸出類的流程服務(wù)代理處理消息后,把消息傳遞給企業(yè)服務(wù)總線ESB;ESB進(jìn)行消息的路由和映射,調(diào)用業(yè)務(wù)流框架的服務(wù)提供者;服務(wù)調(diào)用端的流程服務(wù)代理根據(jù)響應(yīng)消息修改BO系統(tǒng),同時(shí)業(yè)務(wù)流框架還提供包括流程跟蹤管理、錯(cuò)誤與沖突處理的功能。本發(fā)明的一種ERP領(lǐng)域的業(yè)務(wù)流實(shí)現(xiàn)方法與現(xiàn)有技術(shù)相比,過(guò)將業(yè)務(wù)服務(wù)的合理分拆、服務(wù)之間兩兩連接最終形成一個(gè)完整的可配置的靈活的業(yè)務(wù)流程圖,使業(yè)務(wù)流程靈活可配置、自適應(yīng)、可擴(kuò)展、可管理,滿足系統(tǒng)的上下游業(yè)務(wù)之間需要頻繁的協(xié)作需求。
【IPC分類】H04L29/08, H04L29/06, G06Q10/06
【公開(kāi)號(hào)】CN105654251
【申請(qǐng)?zhí)枴?br>【發(fā)明人】高偉
【申請(qǐng)人】浪潮通用軟件有限公司
【公開(kāi)日】2016年6月8日
【申請(qǐng)日】2016年2月19日