專利名稱:基于業(yè)務(wù)流程建模標(biāo)注國際標(biāo)準(zhǔn)的流程實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種基于業(yè)務(wù)流程建模標(biāo)注國際標(biāo)準(zhǔn)的流程實(shí)現(xiàn)方法。
背景技術(shù):
企業(yè)的業(yè)務(wù)處理過程是由一系列的基本業(yè)務(wù)處理環(huán)節(jié)構(gòu)成的,這些業(yè)務(wù)處理環(huán)節(jié)按照一定的邏輯順序進(jìn)行排列組合后就構(gòu)成了企業(yè)的流程,業(yè)務(wù)流程可能流轉(zhuǎn)于企業(yè)的多個(gè)部門。如果一個(gè)企業(yè)的規(guī)模比較大,有總部和地域分公司之分,此時(shí)如果有一個(gè)業(yè)務(wù)流程需要從在總部和分公司之間流轉(zhuǎn),就會(huì)涉及總部與分公司之間的交互。在這種情況下,業(yè)務(wù)流程的流轉(zhuǎn)與單獨(dú)在一個(gè)公司(總部或分公司)內(nèi)流轉(zhuǎn)有所不同,業(yè)務(wù)流程雖然在總部和分公司之間流轉(zhuǎn),但是它實(shí)際上是一個(gè)業(yè)務(wù)流程。為了使業(yè)務(wù)流程能夠順利的流轉(zhuǎn),可以分別使用子流程或外部子流程的流程建模 方法來。例如,流程是從分公司發(fā)起的,以分公司為主線,凡是需要流轉(zhuǎn)到總部的環(huán)節(jié),就用子流程或外部子流程來實(shí)現(xiàn)。這樣一來,在一個(gè)總部與分公司需要頻繁交互的業(yè)務(wù)流程中會(huì)產(chǎn)生眾多的子流程和外部子流程。這種解決辦法雖然可以滿足業(yè)務(wù)系統(tǒng)的需求,但是外部子流程難于配置,而且眾多的子流程和外部子流程也不易管理和監(jiān)控,從而導(dǎo)致流程的開發(fā)效率低。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供了一種基于業(yè)務(wù)流程建模標(biāo)注國際標(biāo)準(zhǔn)的流程實(shí)現(xiàn)方法,以克服現(xiàn)有技術(shù)中由于外部子流程難于配置,而且眾多的子流程和外部子流程也不易管理和監(jiān)控,從而導(dǎo)致的流程的開發(fā)效率低的問題。為實(shí)現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案一種基于業(yè)務(wù)流程建模標(biāo)注國際標(biāo)準(zhǔn)的流程實(shí)現(xiàn)方法,包括當(dāng)前流程通過發(fā)送信息行為,調(diào)用所述另一流程的開始處理行為,以將項(xiàng)目的相關(guān)信息發(fā)送至另一流程;所述另一流程接收所述項(xiàng)目的相關(guān)信息,對(duì)所述項(xiàng)目的相關(guān)信息進(jìn)行處理;所述另一流程中的發(fā)送結(jié)果行為調(diào)用所述當(dāng)前流程的接收結(jié)果行為,以將處理結(jié)果發(fā)送至所述當(dāng)前流程;所述當(dāng)前流程接收所述處理結(jié)果。其中,所述當(dāng)前流程通過發(fā)送信息行為,調(diào)用所述另一流程的開始處理行為,以將項(xiàng)目的相關(guān)信息發(fā)送至另一流程包括所述發(fā)送信息行為調(diào)用所述開始處理行為;與所述開始處理行為對(duì)應(yīng)的流程服務(wù)器在數(shù)據(jù)庫的消息表中添加一條消息,所述消息包括所述項(xiàng)目的相關(guān)信息。其中,所述另一流程接收所述項(xiàng)目的相關(guān)信息包括所述開始處理行為產(chǎn)生一與所述項(xiàng)目的相關(guān)信息對(duì)應(yīng)的匹配信息;
將所述匹配信息存儲(chǔ)至所述數(shù)據(jù)庫中的匹配表中;所述另一流程從所述匹配表中獲取所述匹配信息;當(dāng)根據(jù)所述匹配信息獲取到所述消息時(shí),確認(rèn)接收到所述項(xiàng)目的相關(guān)信息。其中,所述另一流程中的發(fā)送結(jié)果行為調(diào)用所述當(dāng)前流程的接收結(jié)果行為,以將處理結(jié)果發(fā)送至所述當(dāng)前流程包括所述發(fā)送結(jié)果行為調(diào)用所述接收結(jié)果行為;
所述接收結(jié)果行為所在流程服務(wù)器在數(shù)據(jù)庫的消息表中添加一條消息,所述消息包括所述處理結(jié)果。其中,所述當(dāng)前流程接收所述處理結(jié)果包括所述接收結(jié)果行為產(chǎn)生一與所述項(xiàng)目的相關(guān)信息對(duì)應(yīng)的匹配信息;將所述匹配信息存儲(chǔ)至所述數(shù)據(jù)庫中的匹配表中;所述當(dāng)前流程從所述匹配表中獲取所述匹配信息;當(dāng)根據(jù)所述匹配信息獲取到所述消息時(shí),確認(rèn)接收到所述處理結(jié)果。經(jīng)由上述的技術(shù)方案可知,本發(fā)明實(shí)施例提供的方法是基于BPMN標(biāo)準(zhǔn)的流程交互模型,當(dāng)前流程通過發(fā)送信息行為,調(diào)用所述另一流程的開始處理行為,以將項(xiàng)目的相關(guān)信息發(fā)送至另一流程,所述另一流程接收所述項(xiàng)目的相關(guān)信息,對(duì)所述項(xiàng)目的相關(guān)信息進(jìn)行處理,所述另一流程中的發(fā)送結(jié)果行為調(diào)用所述當(dāng)前流程的接收結(jié)果行為,以將處理結(jié)果發(fā)送至所述當(dāng)前流程;所述當(dāng)前流程接收所述處理結(jié)果。從而很好的實(shí)現(xiàn)流程中的交互,由于本發(fā)明實(shí)施例中不存在外部子流程以及子流程,所以沒有外部子流程以及眾多子流程導(dǎo)致的問題,從而提高了流程的開發(fā)效率。
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。圖I為本發(fā)明實(shí)施例提供的第一種基于業(yè)務(wù)流程建模標(biāo)注國際標(biāo)準(zhǔn)的流程實(shí)現(xiàn)方法的流程圖;圖2為本發(fā)明實(shí)施例提供的第二種基于業(yè)務(wù)流程建模標(biāo)注國際標(biāo)準(zhǔn)的流程實(shí)現(xiàn)方法的流程圖;圖3為本發(fā)明實(shí)施例提供的一種消息產(chǎn)生及添加到數(shù)據(jù)庫方法的流程圖;圖4為本發(fā)明實(shí)施例提供的一種接收消息的方法的流程圖;圖5為本發(fā)明實(shí)施例提供的一種工作流實(shí)現(xiàn)方法的示意圖。
具體實(shí)施例方式為了引用和清楚起見,下文中使用的技術(shù)名詞的說明、簡寫或縮寫總結(jié)如下BPMN :業(yè)務(wù)流程建模標(biāo)注,Business Process Modeling Notation。業(yè)務(wù)流程企業(yè)業(yè)務(wù)的處理過程?;顒?dòng)節(jié)點(diǎn)企業(yè)業(yè)務(wù)流程的基本處理環(huán)節(jié)。
人工活動(dòng)在業(yè)務(wù)流程中需要人工參與的活動(dòng)節(jié)點(diǎn)。外部子流程一個(gè)流程的子流程與主流程不在一個(gè)系統(tǒng)中時(shí),稱為外部子流程。Web服務(wù)是一種面向服務(wù)的架構(gòu)的技術(shù),通過標(biāo)準(zhǔn)的Web協(xié)議提供服務(wù),目的是保證不同平臺(tái)的應(yīng)用服務(wù)可以互操作。調(diào)用一個(gè)Web服務(wù)時(shí)可以執(zhí)行服務(wù)發(fā)布方的一個(gè)程序或是向其發(fā)送消息。下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。請(qǐng)參閱附圖I,為本發(fā)明實(shí)施例提供的第一種基于業(yè)務(wù)流程建模標(biāo)注國際標(biāo)準(zhǔn)的流程實(shí)現(xiàn)方法的流程圖,該方法包括
步驟SlOl :當(dāng)前流程通過發(fā)送信息行為,調(diào)用所述另一流程的開始處理行為,以將項(xiàng)目的相關(guān)信息發(fā)送至另一流程。當(dāng)流程中包括“發(fā)送活動(dòng)”時(shí),可以調(diào)用一個(gè)Web服務(wù),而當(dāng)流程中包括“消息開始事件”或“接收活動(dòng)”時(shí),會(huì)向外部發(fā)布一個(gè)Web服務(wù)。發(fā)送信息行為屬于發(fā)送活動(dòng),開始處理行為包括“消息開始事件”。本發(fā)明實(shí)施例可以利用發(fā)送信息行為來調(diào)用開始處理行為發(fā)布的Web服務(wù)來將當(dāng)前流程流轉(zhuǎn)到另一流程中。步驟S102 :所述另一流程接收所述項(xiàng)目的相關(guān)信息,對(duì)所述項(xiàng)目的相關(guān)信息進(jìn)行處理。步驟S103 :所述另一流程中的發(fā)送結(jié)果行為調(diào)用所述當(dāng)前流程的接收結(jié)果行為,以將處理結(jié)果發(fā)送至所述當(dāng)前流程。發(fā)送結(jié)果行為屬于發(fā)送活動(dòng)。當(dāng)流程中包括“發(fā)送活動(dòng)”時(shí),可以調(diào)用一個(gè)Web服務(wù),而當(dāng)流程中包括“消息開始事件”或“接收活動(dòng)”時(shí),會(huì)向外部發(fā)布一個(gè)Web服務(wù)。發(fā)送結(jié)果行為屬于發(fā)送活動(dòng),接收結(jié)果行為包括“接收活動(dòng)”。本發(fā)明實(shí)施例可以利用發(fā)送結(jié)果行為來調(diào)用接收結(jié)果行為發(fā)布的Web服務(wù)來將另一流程流轉(zhuǎn)到當(dāng)前流程中。步驟S104 :所述當(dāng)前流程接收所述處理結(jié)果。本發(fā)明實(shí)施例,基于BPMN標(biāo)準(zhǔn)的流程交互模型,即“接收活動(dòng)”和“發(fā)送活動(dòng)”的技術(shù)實(shí)現(xiàn)。利用這種交互模型,可以很好的實(shí)現(xiàn)存在兩級(jí)交互業(yè)務(wù)流程,特別是流程服務(wù)器是兩級(jí)部署的情況下。一級(jí)部署是指總部和分公司使用的流程服務(wù)器是同一個(gè)。兩級(jí)部署是指總部和分公司分別使用獨(dú)立的流程服務(wù)器。本發(fā)明實(shí)施例提供的方法是基于BPMN標(biāo)準(zhǔn)的流程交互模型,當(dāng)前流程通過發(fā)送信息行為,調(diào)用所述另一流程的開始處理行為,以將項(xiàng)目的相關(guān)信息發(fā)送至另一流程,所述另一流程接收所述項(xiàng)目的相關(guān)信息,對(duì)所述項(xiàng)目的相關(guān)信息進(jìn)行處理,所述另一流程中的發(fā)送結(jié)果行為調(diào)用所述當(dāng)前流程的接收結(jié)果行為,以將處理結(jié)果發(fā)送至所述當(dāng)前流程,所述當(dāng)前流程接收所述處理結(jié)果。從而很好的實(shí)現(xiàn)流程中的交互,由于本發(fā)明實(shí)施例中不存在外部子流程以及子流程,所以沒有外部子流程以及眾多子流程導(dǎo)致的問題,從而提高了流程的開發(fā)效率。實(shí)施例二請(qǐng)參閱圖2,為本發(fā)明實(shí)施例提供的第二種基于業(yè)務(wù)流程建模標(biāo)注國際標(biāo)準(zhǔn)的流程實(shí)現(xiàn)方法的流程圖,該方法包括步驟S201 :當(dāng)前流程的發(fā)送信息行為調(diào)用另一流程的開始處理行為。發(fā)送信息行為會(huì)調(diào)用一 Web服務(wù),該Web服務(wù)會(huì)調(diào)用開始處理行為發(fā)布的Web服務(wù)。
步驟S202 :與所述開始處理行對(duì)應(yīng)的流程服務(wù)器在數(shù)據(jù)庫的消息表中添加一條消息。所述消息包括當(dāng)前流程通過發(fā)送信息行為向另一流程發(fā)送的項(xiàng)目的相關(guān)信息。開始處理行為發(fā)布的Web服務(wù)被調(diào)用后,會(huì)產(chǎn)生一消息以及將該消息添加到數(shù)據(jù)庫中。步驟S201與步驟S202為步驟SlOl的一種具體的實(shí)現(xiàn)方法,當(dāng)然還有其他實(shí)現(xiàn)方法,在此就不再一一贅述了,所以本發(fā)明實(shí)施例中的步驟S201以及步驟S202還可以被其它相同功能的步驟所取代,例如用步驟SlOl取代。步驟S203 :所述開始處理行為產(chǎn)生一與所述項(xiàng)目的相關(guān)信息對(duì)應(yīng)的匹配信息,并將所述匹配信息存儲(chǔ)至所述數(shù)據(jù)庫中的匹配表中。步驟S204 :所述另一流程從所述匹配表中獲取所述匹配信息,當(dāng)根據(jù)所述匹配信息獲取到所述消息時(shí),確認(rèn)接收到所述項(xiàng)目的相關(guān)信息,并對(duì)所述項(xiàng)目的相關(guān)信息進(jìn)行處理。具體的,可以由某一線程不停的掃描匹配表,從匹配表中獲取匹配信息。步驟S203與步驟S204為步驟S102的一種具體的實(shí)現(xiàn)方法,當(dāng)然還有其他實(shí)現(xiàn)方法,在此就不再一一贅述了,所以本發(fā)明實(shí)施例中的步驟S203以及步驟S204還可以被其它相同功能的步驟所取代,例如用步驟S102取代。步驟S205 :所述發(fā)送結(jié)果行為調(diào)用所述接收結(jié)果行為。發(fā)送結(jié)果行為會(huì)調(diào)用一 Web服務(wù),該Web服務(wù)會(huì)調(diào)用接收結(jié)果行為發(fā)布的Web服務(wù)。步驟S206 :所述接收結(jié)果行為所在流程服務(wù)器在數(shù)據(jù)庫的消息表中添加一條消息,所述消息包括所述處理結(jié)果。步驟S205以及步驟S206為步驟S103的一種具體的實(shí)現(xiàn)方法,當(dāng)然還有其他實(shí)現(xiàn)方法,在此就不再一一贅述了,所以本發(fā)明實(shí)施例中的步驟S205以及步驟S206還可以被其它相同功能的步驟所取代,例如用步驟S104取代。步驟S207 :所述接收結(jié)果行為產(chǎn)生一與所述項(xiàng)目的相關(guān)信息對(duì)應(yīng)的匹配信息,并將所述匹配信息存儲(chǔ)至所述數(shù)據(jù)庫中的匹配表中。步驟S208 :所述當(dāng)前流程從所述匹配表中獲取所述匹配信息,當(dāng)根據(jù)所述匹配信息獲取到所述消息時(shí),確認(rèn)接收到所述處理結(jié)果。具體的,可以由某一線程不停的掃描匹配表,從匹配表中獲取匹配信息。步驟S207以及步驟S208為步驟S 104的一種具體的實(shí)現(xiàn)方法,當(dāng)然還有其他實(shí)現(xiàn)方法,在此就不再一一贅述了,所以本發(fā)明實(shí)施例中的步驟S207以及步驟S208還可以被其它相同功能的步驟所取代,例如用步驟S104取代。本發(fā)明實(shí)施例具有實(shí)施例一的有益效果。上述當(dāng)前流程與上述另一流程對(duì)應(yīng)的流程服務(wù)器可以為同一個(gè)流程服務(wù)器也可以為不同的流程服務(wù)器,上述當(dāng)前流程與上述另一流程對(duì)應(yīng)的數(shù)據(jù)庫可為同一個(gè)數(shù)據(jù)庫也可以為不同的數(shù)據(jù)庫。
實(shí)施例三上述實(shí)施例中的消息產(chǎn)生以及添加到數(shù)據(jù)庫的方法有多種,請(qǐng)參閱圖3,為本發(fā)明實(shí)施例提供的一種消息產(chǎn)生及添加到數(shù)據(jù)庫方法的流程圖,該方法包括步驟S301 :開始處理行為發(fā)布的Web服務(wù)接收到被調(diào)用的指示后,將相應(yīng)的項(xiàng)目的相關(guān)信息傳遞到WSCl ient。步驟S302 MessageProvider作為一個(gè)門面,接收WSClient傳遞過來的信息,根據(jù)規(guī)則將其組裝成消息。并且根據(jù)本圖元的配置設(shè)置該信息的流程定義屬性、流程版本號(hào)和活動(dòng)定義屬性。步驟S303 :將組裝好的信息通過MessageProducer發(fā)送到對(duì)應(yīng)的消息管道,進(jìn)入消息系統(tǒng),從而形成相應(yīng)的消息。步驟S304 :在消息管道的下游端點(diǎn),MessageConsumer將接收到的消息入池(即持久化到表中或數(shù)據(jù)庫中,該步驟為了消息傳遞的健壯性,避免丟失消息)。消息產(chǎn)生以及添加到數(shù)據(jù)庫的方法涉及的類有MessageProvider Receive Task對(duì)應(yīng)的Web服務(wù)收到項(xiàng)目的相關(guān)信息后,將項(xiàng)目的相關(guān)信息發(fā)送給該類,該類將發(fā)送過來的信息組裝成Receive Task規(guī)定的格式,并且設(shè)置相關(guān)的流程相關(guān)信息。MessageAccess :消息前端控制類,負(fù)責(zé)初始化信息生產(chǎn)者和信息消費(fèi)者,將接收到的信息分配給相應(yīng)的信息生產(chǎn)者。MessageProducer :信息生產(chǎn)者,負(fù)責(zé)將接收到的信息發(fā)送到消息管道中,以形成相應(yīng)的消息。MessageChannel :消息管道,負(fù)責(zé)消息分配和管理。MessageConsumer :消息消費(fèi)者,負(fù)責(zé)由消息管道中接受消息,負(fù)責(zé)將消息持久化到消息表中。MessageManager :消息管理類,負(fù)責(zé)消息的數(shù)據(jù)庫的操作。MessageUtil :負(fù)責(zé)消息的組裝與反序列化。實(shí)施例四上述實(shí)施例中從對(duì)方接收相應(yīng)的消息的方法有多種,請(qǐng)參閱圖4,為本發(fā)明實(shí)施例提供的一種接收消息的方法的流程圖。步驟S401 MessageLoader負(fù)責(zé)從池中讀取消息,然后將讀取出來的消息放到消息隊(duì)列中。步驟S402 MessageLoader將消息隊(duì)列中的消息發(fā)送到Messagechannel。步驟S403 MessageChannel下游消費(fèi)者為一個(gè)線程池。MessageChannel將發(fā)送到消費(fèi)者的消息通過多個(gè)線程來處理。
步驟S404 :每個(gè)線程將接收到的消息進(jìn)行匹配分發(fā)。接收消息的相關(guān)類有MessageLoader :消息讀取類,負(fù)責(zé)從消息池中讀取消息,然后等待通道從該對(duì)象中將消息“拉”出來。MessagePool :消息池,負(fù)責(zé)從消息表中將消息讀取到消息池中。MessageManager :消息管理類負(fù)責(zé)消息的數(shù)據(jù)庫的操作。MessageExecutorChannel :消息管道,負(fù)責(zé)消息分配和管理。ThreadManager :線程池,負(fù)責(zé)產(chǎn)生和管理線程。MessageMatch :消息匹配核心類,負(fù)責(zé)消息匹配與流程推進(jìn)。 MessageUtil :負(fù)責(zé)消息的組裝與反序列化。ProcessMessage :流程服務(wù)提供類,提供查詢與流程相關(guān)的信息。MessageEngine 消息引擎,負(fù)責(zé)具體的消息匹配與匹配規(guī)則的校驗(yàn)、加載等。ReceiveTaskUtil ReceiveTask的工具類,對(duì)外提供推進(jìn)流程流轉(zhuǎn)等操作。實(shí)施例五為了本領(lǐng)域技術(shù)人員更加清楚的理解本發(fā)明實(shí)施例,下面再舉一例子對(duì)上述實(shí)施例進(jìn)行說明,請(qǐng)參閱圖5,為本發(fā)明實(shí)施例提供的一種工作流實(shí)現(xiàn)方法的示意圖。圖5中“發(fā)送信息行為”用501標(biāo)記,“開始處理行為”用502標(biāo)記,“發(fā)送結(jié)果行為”用503標(biāo)記,“接收結(jié)果行為”用504標(biāo)記。圖5中包括兩個(gè)流程即流程A與流程B,假設(shè)流程A代表分公司的流程,流程B代表總部的流程,流程A中經(jīng)員工撰寫的申請(qǐng)文件需要流程B中員工審批,此時(shí),在員工撰寫完畢申請(qǐng)文件通過一“發(fā)送信息行為”501 (在圖5中用提交申請(qǐng)文件表示),將撰寫的申請(qǐng)文件發(fā)送到流程B中,流程B中的流程服務(wù)器會(huì)在數(shù)據(jù)庫中添加一條消息,該消息包括申請(qǐng)文件,流程B中的員工可能不會(huì)及時(shí)對(duì)該申請(qǐng)文件進(jìn)行審批,也就是流程B中的“開始處理行為” 502與流程A中的“發(fā)送信息行為” 501不同步,當(dāng)流程B中的員工進(jìn)行審批時(shí),“開始處理行為”502產(chǎn)生一與審批申請(qǐng)文件對(duì)應(yīng)的匹配信息,并將匹配信息存儲(chǔ)在數(shù)據(jù)庫中的匹配表中,流程服務(wù)中有一個(gè)線程會(huì)不停的循環(huán)掃描匹配表,如果匹配表中有數(shù)據(jù),則取出來,并且自動(dòng)匹配消息表中所有的消息,如果匹配上則確認(rèn)接收到“發(fā)送信息行為”501發(fā)送的消息即接收到申請(qǐng)文件,流程B中的員工對(duì)申請(qǐng)文件進(jìn)行審批,如果匹配表中沒有匹配信息或者匹配失敗,則一直等待直至匹配成功,若一直匹配失敗或在超過預(yù)定時(shí)間后匹配表中仍沒有匹配信息,流程B可能會(huì)僵死在“開始處理行為”502。當(dāng)匹配成功且流程B中的員工審批完成后,通過流程B中的“發(fā)送結(jié)果行為”503 (圖5中用發(fā)送審批結(jié)果表示)將審批結(jié)果發(fā)送至流程A,在流程實(shí)際運(yùn)行過程中,流程A運(yùn)行到“接收結(jié)果行為” 504 (流程A用接收審批結(jié)果表示)與流程B的運(yùn)行到“發(fā)送結(jié)果行為”503的時(shí)間先后不一致,有可能流程A已經(jīng)運(yùn)行到“接收結(jié)果行為” 504,而流程B還沒有運(yùn)行到“發(fā)送結(jié)果行為” 503,此時(shí)流程B不會(huì)向流程A發(fā)送消息,這時(shí)流程A的“接收結(jié)果行為”504會(huì)先產(chǎn)生一匹配信息,并存放在上述的數(shù)據(jù)庫中,匹配消息的線程一直會(huì)去消息表中尋找消息,直至找到與匹配信息相對(duì)應(yīng)的消息或者超過預(yù)定時(shí)間為止。當(dāng)流程A接收到審批結(jié)果后,可以執(zhí)行其他活動(dòng)環(huán)節(jié),例如圖5所示判斷申請(qǐng)文件是否審批通過,如果通過,則進(jìn)行歸檔,如果不同過,則進(jìn)行其他后動(dòng)環(huán)節(jié)等等。當(dāng)流程B發(fā)送審批結(jié)果后,也可以執(zhí)行其他活動(dòng)環(huán)節(jié)。
圖5中虛線的箭頭連線是在實(shí)際流程圖中是不存在的,此處只是為了方便說明流程A和流程B之間的關(guān)系才特意標(biāo)出。本說明書中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似部分互相參見即可。對(duì)于實(shí)施例公開的裝置而言,由于其與實(shí)施例公開的方法相對(duì)應(yīng),所以描述的比較簡單,相關(guān)之處參見方法部分說明即可。結(jié)合本文中所公開的實(shí)施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來實(shí)施。軟件模塊可以置于隨機(jī)存儲(chǔ)器(RAM)、內(nèi)存、只讀存儲(chǔ)器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動(dòng)磁盤、CD-ROM、或技術(shù)領(lǐng)域內(nèi)所公知的任意其它形式的存儲(chǔ)介質(zhì)中。對(duì)所公開的實(shí)施例的上述說明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對(duì)這些實(shí)施例的多種修改對(duì)本領(lǐng)域的專業(yè)技術(shù)人員來說將是顯而易見的,本文中所定義的 一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實(shí)施例中實(shí)現(xiàn)。因此,本發(fā)明將不會(huì)被限制于本文所示的這些實(shí)施例,而是要符合與本文所公開的原理和新穎特點(diǎn)相一致的最寬的范圍。
權(quán)利要求
1.一種基于業(yè)務(wù)流程建模標(biāo)注國際標(biāo)準(zhǔn)的流程實(shí)現(xiàn)方法,其特征在于,包括 當(dāng)前流程通過發(fā)送信息行為,調(diào)用所述另一流程的開始處理行為,以將項(xiàng)目的相關(guān)信息發(fā)送至另一流程; 所述另一流程接收所述項(xiàng)目的相關(guān)信息,對(duì)所述項(xiàng)目的相關(guān)信息進(jìn)行處理; 所述另一流程中的發(fā)送結(jié)果行為調(diào)用所述當(dāng)前流程的接收結(jié)果行為,以將處理結(jié)果發(fā)送至所述當(dāng)前流程; 所述當(dāng)前流程接收所述處理結(jié)果。
2.根據(jù)權(quán)利要求I所述方法,其特征在于,所述當(dāng)前流程通過發(fā)送信息行為,調(diào)用所述另一流程的開始處理行為,以將項(xiàng)目的相關(guān)信息發(fā)送至另一流程包括 所述發(fā)送信息行為調(diào)用所述開始處理行為; 與所述開始處理行為對(duì)應(yīng)的流程服務(wù)器在數(shù)據(jù)庫的消息表中添加一條消息,所述消息包括所述項(xiàng)目的相關(guān)信息。
3.根據(jù)權(quán)利要求2所述方法,其特征在于,所述另一流程接收所述項(xiàng)目的相關(guān)信息包括 所述開始處理行為產(chǎn)生一與所述項(xiàng)目的相關(guān)信息對(duì)應(yīng)的匹配信息; 將所述匹配信息存儲(chǔ)至所述數(shù)據(jù)庫中的匹配表中; 所述另一流程從所述匹配表中獲取所述匹配信息; 當(dāng)根據(jù)所述匹配信息獲取到所述消息時(shí),確認(rèn)接收到所述項(xiàng)目的相關(guān)信息。
4.根據(jù)權(quán)利要求I所述方法,其特征在于,所述另一流程中的發(fā)送結(jié)果行為調(diào)用所述當(dāng)前流程的接收結(jié)果行為,以將處理結(jié)果發(fā)送至所述當(dāng)前流程包括 所述發(fā)送結(jié)果行為調(diào)用所述接收結(jié)果行為; 所述接收結(jié)果行為所在流程服務(wù)器在數(shù)據(jù)庫的消息表中添加一條消息,所述消息包括所述處理結(jié)果。
5.根據(jù)權(quán)利要求4所述方法,其特征在于,所述當(dāng)前流程接收所述處理結(jié)果包括 所述接收結(jié)果行為產(chǎn)生一與所述項(xiàng)目的相關(guān)信息對(duì)應(yīng)的匹配信息; 將所述匹配信息存儲(chǔ)至所述數(shù)據(jù)庫中的匹配表中; 所述當(dāng)前流程從所述匹配表中獲取所述匹配信息; 當(dāng)根據(jù)所述匹配信息獲取到所述消息時(shí),確認(rèn)接收到所述處理結(jié)果。
全文摘要
本發(fā)明實(shí)施例提供了一種基于業(yè)務(wù)流程建模標(biāo)注國際標(biāo)準(zhǔn)的流程實(shí)現(xiàn)方法,該方法包括當(dāng)前流程通過發(fā)送信息行為,調(diào)用所述另一流程的開始處理行為,以將項(xiàng)目的相關(guān)信息發(fā)送至另一流程;所述另一流程接收所述項(xiàng)目的相關(guān)信息,對(duì)所述項(xiàng)目的相關(guān)信息進(jìn)行處理;所述另一流程中的發(fā)送結(jié)果行為調(diào)用所述當(dāng)前流程的接收結(jié)果行為,以將處理結(jié)果發(fā)送至所述當(dāng)前流程;所述當(dāng)前流程接收所述處理結(jié)果。本發(fā)明實(shí)施例提供的方法不存在外部子流程以及子流程,所以沒有外部子流程以及眾多子流程導(dǎo)致的問題,從而提高了流程的開發(fā)效率。
文檔編號(hào)G06Q10/06GK102880937SQ201210345028
公開日2013年1月16日 申請(qǐng)日期2012年9月17日 優(yōu)先權(quán)日2012年9月17日
發(fā)明者羅華永, 田應(yīng)生, 方國 申請(qǐng)人:北京中電普華信息技術(shù)有限公司, 國家電網(wǎng)公司