




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第1章工作流參考手冊初稿V01
在使用EOSWorkFlow的過程中,不管是開發(fā)者在“開發(fā)環(huán)境”中定義業(yè)務(wù)
流程,還是“工作流引擎”操縱流程流轉(zhuǎn),或者是工作流參與者使用的“客戶
端”,再或者者管理員使用的“管理與監(jiān)控工具”,在這期間都會貫穿EOS
Workflow的5個要緊對象一一流程定義、活動定義、流程實(shí)例、活動實(shí)例與工
作項(xiàng)。
1.1EOS工作流開發(fā)過程簡述
EOS的工作流開發(fā)過程能夠看作是一個不斷迭代的過程,如下圖:
首先是分析需求,然后根據(jù)需求定義流程,在這個階段最要緊的工作任務(wù)事
實(shí)上是設(shè)計,根據(jù)業(yè)務(wù)需求來設(shè)計流程,這個流程要怎么走,流程有關(guān)的數(shù)據(jù)如
何流淌,流程的參與者如何界定,與流程有關(guān)的業(yè)務(wù)數(shù)據(jù)如何流淌及儲存等等。
在這個階段的工作結(jié)果是一個能夠公布的流程,第一次形成的流程可能是一個比
較簡單的,并不完善的版本,但是隨著迭代的進(jìn)行,這個流程將不斷地被修正與
改進(jìn),直到形成一個能夠使用的版本。
流程公布后就能夠執(zhí)行了,流程在執(zhí)行階段叫流程實(shí)例,它有待啟動、運(yùn)行、
掛起、完成、結(jié)束、中止等六種狀態(tài)。
我們在設(shè)計及開發(fā)的過程中可能會犯一些錯誤,從而導(dǎo)致公布的流程執(zhí)行不
正確,或者者還可能己經(jīng)開發(fā)好的流程滿足不了現(xiàn)在的需求,需要進(jìn)行調(diào)整,這
個時候迭代就開始了。
1.2概念說明
流程定義:描述一個完整的業(yè)務(wù)過程,它由若干活動構(gòu)成。包含了流程的基
本信息、流程的開始與結(jié)束條件、構(gòu)成的活動、活動間流轉(zhuǎn)的規(guī)則、需要用戶執(zhí)
行的工作任務(wù)(工作項(xiàng))、可能調(diào)用的應(yīng)用程序與流程有關(guān)數(shù)據(jù)等信息。提交到
流程定義庫(WFProcessDefine)后會包含流程定義ID(流程定義的唯一標(biāo)識)、
流程定義名稱、版本號、流程定義描述與提交時間等描述。
活動定義:包含在流程定義之中,代表了一個相對獨(dú)立的、邏輯的工作單元。
一個活動代表一個需要由有關(guān)資源處理,或者者由計算機(jī)處理的任務(wù)。其中定義
了該活動的基本信息、執(zhí)行該活動的參與者、時間限制、工作項(xiàng)信息、觸發(fā)事件、
啟動策略等信息。
流程實(shí)例:當(dāng)流程定義提交、公布到服務(wù)器以后,就能夠啟動該流程,啟動
時會創(chuàng)建流程定義的一個實(shí)例,叫流程實(shí)例。同一個流程定義能夠有多個流程實(shí)
例。每一個流程實(shí)例會被儲存在流程實(shí)例庫(WFProcessInst)中,包含流程實(shí)例
ID(唯一標(biāo)識)、流程實(shí)例名稱、流程定義ID、流程實(shí)例的狀態(tài)、該實(shí)例的啟
動者、啟動時間、有關(guān)數(shù)據(jù)等信息。
活動實(shí)例:流程實(shí)例中的每個活動稱之活動實(shí)例。每一個活動實(shí)例會被儲存
在活動實(shí)例庫(WFActivitylnst)中,包含活動實(shí)例ID(唯一標(biāo)識)、活動實(shí)例的狀
態(tài)、所屬的活動定義ID與流程實(shí)例ID、時間限制、是否超時、創(chuàng)建時間等信息。
工作項(xiàng):表示流程實(shí)例在流轉(zhuǎn)過程中為完成某個活動實(shí)例所要參與者做的工
作。一個活動實(shí)例能夠?qū)?yīng)一個或者多個工作項(xiàng)。每個工作項(xiàng)會被儲存在工作項(xiàng)
庫(WFWorkltem)中,包含工作項(xiàng)ID(唯一標(biāo)識)、參與者ID、工作項(xiàng)的狀態(tài)、
所屬的活動實(shí)例ID,流程實(shí)例ID等信息。
對象間的要緊關(guān)系
流程定義與活動定義是在工作流開發(fā)階段所確定;流程實(shí)例、活動實(shí)例與工
作項(xiàng)則是在工作流運(yùn)行階段確定。
一個流程定義由多個活動定義構(gòu)成。
一個流程定義能夠創(chuàng)建多個流程實(shí)例。
一個流程實(shí)例包含多個活動實(shí)例,每個活動實(shí)例能夠包含一個或者多個工作
項(xiàng)
在一些特定的情況下(比如,一個活動要循環(huán)執(zhí)行多次),一個活動定義會
存在多個活動實(shí)例
具體如下圖所示:
其他概念
【工作流】
工作流管理聯(lián)盟(WFMC)給出的“工作流”定義是:
①全部或者者部分,由計算機(jī)支持或者自動處理的業(yè)務(wù)過程;
②干預(yù)過程、業(yè)務(wù)程序的自動化處理,文檔、信息或者者任務(wù)按照定義好
的規(guī)則在參與者間傳遞,來完成整個業(yè)務(wù)目標(biāo)或者者對整個業(yè)務(wù)目標(biāo)的
完成做奉獻(xiàn)。同時,“工作流”可能由手工組織。
【參與者】
它要緊描業(yè)務(wù)流程在實(shí)例化后的運(yùn)行過程中參與操作的人員、角色或者組織。
【工作流有關(guān)數(shù)據(jù)】
工作流引擎根據(jù)工作流有關(guān)數(shù)據(jù)與轉(zhuǎn)換條件進(jìn)行推進(jìn),工作流有關(guān)數(shù)據(jù)的屬性包
含數(shù)據(jù)名稱、數(shù)據(jù)類型與數(shù)據(jù)值等。它是工作流引擎執(zhí)行任務(wù)推進(jìn)的根據(jù)。
【轉(zhuǎn)移條件】
要緊負(fù)責(zé)為流程實(shí)例的推進(jìn)提供導(dǎo)航根據(jù),引擎根據(jù)轉(zhuǎn)移條件實(shí)現(xiàn)流程的流轉(zhuǎn)。
【聚合模式】
指當(dāng)流程中的一個活動存在多個前驅(qū)活動時,該活動產(chǎn)生實(shí)例的規(guī)則將根據(jù)“聚
合模式”而定。聚合模式包含:全部聚合/單一聚合/多路聚合(AND/XOR/OR);“全
部聚合”模式表示只有當(dāng)所有前驅(qū)活動都運(yùn)行結(jié)束后才啟動該活動實(shí)例,假如存
在尚未運(yùn)行結(jié)束的前驅(qū)活動,則該活動處于等待狀態(tài)?!皢我痪酆稀蹦J奖硎局灰?/p>
任何一個前驅(qū)活動運(yùn)行結(jié)束,則該活動即進(jìn)入運(yùn)行狀態(tài)?!岸嗦肪酆稀蹦J奖硎緷M
足條件的前驅(qū)活動都完成,該活動才可進(jìn)入運(yùn)行狀態(tài)。
【分支模式】
當(dāng)一個活動的后繼活動有多個時,需要確定這些后繼活動產(chǎn)生活動實(shí)例的規(guī)則
(即分支模式)。分支模式包含:全部分支/單一分支/多路分支(AND/XOR/OR);
“全部分支”模式表示條件表達(dá)式計算結(jié)果為"True”的所有活動都產(chǎn)生活動實(shí)例;
“單一分支”模式則表示從后繼活動中任選一個條件表達(dá)式為“True”的活動產(chǎn)生
實(shí)例?!皢我环种В?,模式下需要指定一個“缺省遷移”,當(dāng)所有條件都為“False”時,
此缺省遷移對應(yīng)的活動則會產(chǎn)生實(shí)例?!岸嗦贩种А北硎驹摶顒拥耐瓿蓵|發(fā)所有
滿足條件的后繼活動。
【工作流客戶端】
工作流客戶端是提供給用戶完成工作流任務(wù)的瀏覽,查詢,執(zhí)行的界面,與工作
流程啟動的界面。EOS工作流客戶端通過web界面的方式提供給用戶。
?按用戶與角色取得工作項(xiàng)
?工作列表的自定義歸類
?工作項(xiàng)的簽收、拒收、執(zhí)行、提醒
?競爭工作項(xiàng)的處理
?圖形化的啟動過程
【工作流管理監(jiān)控工具】
工作流管理監(jiān)控工具是為用戶提供基于Web方式的工作流實(shí)例的管理與監(jiān)控功
能與業(yè)務(wù)流程的管理。
?支持圖形化工作流實(shí)例的管理
?支持圖形化監(jiān)控過程實(shí)例的運(yùn)行情況
?支持圖形化業(yè)務(wù)流程的管理
?運(yùn)行期實(shí)時數(shù)據(jù)查詢
?圖形化再現(xiàn)流程運(yùn)行過程
?工作項(xiàng)的重分配
?流程統(tǒng)計分析、工作項(xiàng)統(tǒng)計分析
1.3有關(guān)配置說明
下列是一些有用的配置說明,關(guān)于EOS工作流的具體配置說明請參考附錄一〉
配置文件wfconfig.xmlo
工作流數(shù)據(jù)連結(jié)的配置在哪里
帶有工作流的EOS應(yīng)用一定要使用數(shù)據(jù)源的方式(配置了數(shù)據(jù)源與連接池,且
eosconfig.xml文件中single值為false)連接數(shù)據(jù)庫,這樣才能保證工作流與
業(yè)務(wù)系統(tǒng)中事務(wù)的完整性。而且工作流調(diào)度引擎需要連接池來處理對數(shù)據(jù)庫的并
發(fā)操縱,不能使用JDBC直接連接,否則在實(shí)際的使用中會出現(xiàn)并發(fā)操縱錯誤。
比如:使用E0S5.0,在工作流客戶端的“我的任務(wù)一》待執(zhí)行的工作任務(wù)”執(zhí)行
一個待執(zhí)行的工作項(xiàng),該工作項(xiàng)的任務(wù)是調(diào)用一個人工活動去查一張表。假如在
studio中啟動項(xiàng)目server,功能一切正常,假如啟動外部server,這個功能有
的時候候正常,有的時候候出錯,出錯頁面的截圖與全面的log見附件?。ㄗⅲ?/p>
出錯是不確定的,有的時候候連續(xù)好幾次都報錯,有的時候候連續(xù)好幾次都對?。?/p>
在編寫工作流的業(yè)務(wù)自動機(jī)(業(yè)務(wù)邏輯)中,有關(guān)的工作流操作(如:完成工作
流節(jié)點(diǎn),回退,設(shè)置工作流的有關(guān)數(shù)據(jù)等操作)與外部的業(yè)務(wù)操作都要并在一個
transaction(事務(wù))中。
工作流歷史表的有關(guān)說明
EOS數(shù)據(jù)庫中存在以WF_H開頭的幾張表,這是工作流歷史表,分別對應(yīng)了流
程實(shí)例、活動項(xiàng)實(shí)例、工作項(xiàng)實(shí)例等等,業(yè)務(wù)上經(jīng)常需要通過這些歷史數(shù)據(jù)進(jìn)行
統(tǒng)計分析,至于什么時候進(jìn)行記錄備份,幫助文檔中沒有提到。
事實(shí)上,在EOS系統(tǒng)配置文件wfconfig,xml中,定義了歷史記錄備份的策略,
如下:
<groupname=,,trans_history,,>
<!一轉(zhuǎn)移歷史的策略:可能的值TIME_BASED(固定時間轉(zhuǎn)移)|ON_FINISH(流
程實(shí)例結(jié)束時轉(zhuǎn)移)INEVER(不轉(zhuǎn)移)|ON_START(系統(tǒng)啟動時候后移)一〉
<configValuekey="/trans_strategy,z>TIME_BASED</configValue>
<!一轉(zhuǎn)移時間點(diǎn)列表:當(dāng)trans_strategy配置為TIME_BASED時候有效。表示轉(zhuǎn)
移到歷史表的時間,格式示例:1:00,2:00,8:18—>
<configValuekey="time_list”〉0:30,5:00</configValue>
</group>
第2章建模過程
EOSStudio提供了可視化的開發(fā)環(huán)境來定義工作流業(yè)務(wù)流程模型,提供串行、
分支、并行、聚合、循環(huán)、同步、子流程等豐富的流程邏輯結(jié)構(gòu),與人工活動、
自動活動、路由活動等多種活動類型,并可對這些活動屬性進(jìn)行定義,如參與者
類型、觸發(fā)事件、子流程屬性、時間限制、回退動作、多工作項(xiàng)等,定義屬性時
可選擇不一致的數(shù)據(jù)類型、可靈活的擴(kuò)展活動;能夠通過表單數(shù)據(jù)為活動節(jié)點(diǎn)設(shè)
置動態(tài)表單,其表單數(shù)據(jù)實(shí)現(xiàn)了動態(tài)表單的編輯,為日常工作中表單的定制提供
了良好的設(shè)計工具。
2.1流程定義
流程定義由流程屬性、活動屬性、連接線三部分構(gòu)成。開發(fā)者能夠根據(jù)實(shí)際
中的業(yè)務(wù)需要設(shè)置流程上的基本屬性、觸發(fā)事件、時間限制與流程啟動者。對每
一個具體的活動則可根據(jù)實(shí)際情況設(shè)定其運(yùn)行的方式、參與者與調(diào)用的應(yīng)用等信
息。完成流程定義的描述后即可提交、公布。提交后的流程將生成XML格式的流
程定義文件,存入流程定義庫中
2.1.1流程版本
版本號的產(chǎn)生方式如下:
1、開發(fā)人員指定
版本號的格式為:X.Y.Z(其中X〉0;Y:0-99;Z:0-99),若指定的版本在流程
定義庫中不存在,則按指定的版本號生成新版本。若指定的版本在流程定義庫中
存在,則覆蓋流程定義庫中已有的版本。比如,某流程在流程定義庫中存在
1.1.1與1.2.3兩個版本。若要提交第三個版本,開發(fā)人員指定新版本號1.1.2,
那么該流程提交流程定義庫的版本號即為LL2;若指定版本號為1.1.1,則該流
程在提交流程定義庫時會覆蓋原有LL1版本的流程
2、自動生成新版本
獲取流程定義庫中同一流程的最大版本,并在此基礎(chǔ)上"加1〃作為當(dāng)前流程
的版本號。
2.1.2觸發(fā)事件
2.1.2.1觸發(fā)事件說明
流程觸發(fā)事件表示按照流程定義中的設(shè)置流程實(shí)例在運(yùn)行到某個階段所需
要工作流引擎做某種類型的某個動作。''某個階段”即為事件的觸發(fā)時機(jī),“某
種類型”即為事件類型,“某個動作”即為事件的動作。
觸發(fā)時機(jī):表示指定的事件動作在何時觸發(fā)。EOSWorkFlow提供了創(chuàng)建、動、
結(jié)束、超時與提醒5個觸發(fā)時機(jī)。
創(chuàng)建:表示指定的事件在流程實(shí)例創(chuàng)建時觸發(fā)。如今流程實(shí)例實(shí)際上處于
“待啟動”的狀態(tài),并沒有合適的活動實(shí)例產(chǎn)生。簡言之,流程實(shí)例如今只是做
好運(yùn)行的準(zhǔn)備,但未真正開始運(yùn)行。比如I:把田徑比賽中的110米欄比作流程實(shí)
例,那么創(chuàng)建時的流程實(shí)例就相當(dāng)于已站在助跑器前的運(yùn)動員們等待發(fā)令槍響的
那一刻。
啟動:表示指定的事件在流程實(shí)例啟動時觸發(fā)。如今,流程實(shí)例已真正處于
運(yùn)行狀態(tài)了,流程實(shí)例已開始運(yùn)行,各活動實(shí)例將會相繼產(chǎn)生。比如:流程實(shí)例
如今的狀態(tài)若比作110米欄,就相當(dāng)于運(yùn)動員們聽到發(fā)令槍響沖離起跑線的那一
刻。
結(jié)束:表示指定的事件在流程實(shí)例結(jié)束時觸發(fā)。即流程實(shí)例中所有的活動實(shí)
例均已完成時觸發(fā)。
超時:表示指定的事件在流程實(shí)例超時時觸發(fā)。比如:若流程的超時時間訂
為1天,那么定義的事件將在流程實(shí)例啟動時開始計時,并在1天之后觸發(fā)此事
件。
提醒:表示指定的事件在流程實(shí)例指定的提醒時間觸發(fā)。比如:若流程的提
醒時間訂為1小時,那么定義的事件將在流程實(shí)例啟動時開始計時,并在超時前
1小時觸發(fā)此事件。
事件類型:標(biāo)明事件動作的類型。EOSWorkFlow提供基于EOS平臺的業(yè)務(wù)
邏輯與運(yùn)算邏輯兩種類型。
事件動作:由開發(fā)人員根據(jù)具體的業(yè)務(wù)需求自行定義。能夠是一個運(yùn)算邏輯也能夠是一
個業(yè)務(wù)邏輯。
2.1.2.2觸發(fā)事件設(shè)置方法
【場景】
在流程“啟動的同時,獲取指定節(jié)點(diǎn)信息并放入該流程實(shí)例有關(guān)數(shù)據(jù)的指定
節(jié)點(diǎn)下。如獲取流程信息中創(chuàng)建者節(jié)點(diǎn)(WFContext/WFProcessInst/creator),放入
有關(guān)數(shù)據(jù)區(qū)Node/creator下。
【分析】
通過【場景】的描述,我們能夠使用流程觸發(fā)事件的方式實(shí)現(xiàn)該需求。分析
為:
1、”在流程啟動的同時……”,表示觸發(fā)的時機(jī)為啟動,調(diào)用方式為同步。
這里需要特別注意的是,調(diào)用方式同步與異步的區(qū)別。同步是指:以“同步”的方
式調(diào)用觸發(fā)事件,等待事件運(yùn)行完成后,該流程才啟動。同步是指:以“異步”
的方式調(diào)用觸發(fā)事件,該流程在啟動完觸發(fā)事件后就啟動,而無需等待觸發(fā)事件
運(yùn)行完成。
2、“獲取指定節(jié)點(diǎn)信息”為事件動作,能夠用業(yè)務(wù)邏輯來實(shí)現(xiàn)。觸發(fā)事件中
產(chǎn)生的數(shù)據(jù)還能夠在業(yè)務(wù)邏輯中輸出,這樣就能夠?qū)⑦@些數(shù)據(jù)直接設(shè)置為有關(guān)數(shù)
據(jù)了。
3、要將步驟2中獲取的信息放入該流程實(shí)例有關(guān)數(shù)據(jù)的指定節(jié)點(diǎn)下,具體
可在事件參數(shù)中設(shè)置。
輸入?yún)?shù)設(shè)置為WFContext,在各類觸發(fā)事件與回退事件中,WFContext屬
于流程實(shí)例的有關(guān)數(shù)據(jù)區(qū)部分,這塊數(shù)據(jù)區(qū)有固定的數(shù)據(jù)結(jié)構(gòu),具體請見:3.2.2
流程實(shí)例數(shù)據(jù)區(qū)。觸發(fā)事件的數(shù)據(jù)來源于有關(guān)數(shù)據(jù)區(qū),WFContext是有關(guān)數(shù)據(jù)區(qū)
中固有的一塊區(qū)域信息,這些信息都放在Wfcontext節(jié)點(diǎn)下。其中,WFContext
數(shù)據(jù)區(qū)內(nèi)容是流程實(shí)例自身的信息,有關(guān)數(shù)據(jù)區(qū)的內(nèi)容還有流程中產(chǎn)生的過程數(shù)
據(jù),即業(yè)務(wù)數(shù)據(jù)。
基本信息觸發(fā)事件’時間限制!流程后動者
參數(shù)定義
|口I觸發(fā)時機(jī)I事件類組I調(diào)用方式I事件動作I描a
\iis業(yè)務(wù)邏輯同忘ZT-
[圖-設(shè)置觸發(fā)事件的參數(shù)]
注意:
假如調(diào)用的事件類型為業(yè)務(wù)邏輯,而參數(shù)的數(shù)據(jù)類型為字符串常量或者字符
串變量,那么路徑中填入的格式務(wù)必為:nodeName="val.ue”或者
nodeName='value'(由于業(yè)務(wù)邏輯不支持直接傳入常量或者變量)
比如:要傳入常量tiger到所調(diào)用的業(yè)務(wù)邏輯中,就務(wù)必做如下設(shè)置
參數(shù)
參數(shù)定義_______________________________
嗎L參數(shù)類型[數(shù)據(jù)類81I陋_____I參數(shù)名稱I目標(biāo)路徑
[T篇k—{~字布wnratF;口岸飛芯尸;-7
提交后常量tiger將作為name節(jié)點(diǎn)
的值作為動作的參數(shù)傳入,形式為
<root>
-<data>
<name>tiger</name>
</data>
</root>
2.1.3超時設(shè)置
假如想擴(kuò)展與替換EOS工作流的超時與預(yù)警機(jī)制,能夠根據(jù)工作流配置文件
wfconfig.xml中的工作流引擎服務(wù)層有關(guān)配置
<modulename="service">
<groupname="timer">
<configValuekey="interval">10000</configValue>
<configValuekey="timelimit_calculator"x/configValue>
</group>
參數(shù)timelimit-calculator流程與活動時間限制的計算方法類名稱,該類務(wù)必實(shí)現(xiàn)
接口com.primeton.eos.wf.service.api.TimeLimitCalculatoro
配置為空或者者不做配置,表示使用確省實(shí)現(xiàn)類:
com.primeton.eos.wf.service.TimeLimitCalculatorDefaulto
2.1.3.1時間限制說明
流程的時間限制表示流程啟動后務(wù)必在多長時間內(nèi)完成。在流程時間限制的
設(shè)置中EOSWorkFlow為開發(fā)人員提供了指定具體的限制時間、超時是否進(jìn)行郵
件通知、是否在超時前進(jìn)行提醒、是否發(fā)提醒通知等功能。
流程時間限制的計時:從流程啟動時開始計時
流程時間限制的獲?。褐苯又付?、從有關(guān)數(shù)據(jù)獲?。ǜ袷剑?.5.20表示時限
為3天5小時20分鐘)
發(fā)送提醒郵件:EOSWorkFlow可根據(jù)流程定義中的具體設(shè)置給流程啟動者發(fā)
提醒郵件,提醒他該流程還有多長時間將超時
發(fā)送超時郵件:EOSWorkFlow可根據(jù)流程定義中的具體設(shè)置給流程啟動者發(fā)
送超時郵件,告之他該流程己經(jīng)超時
提醒時間務(wù)必小于指定的時間限制
EOSWORKFLOW推斷流程或者人工活動超時的原理
流程或者人工活動的時間限制中設(shè)置的限制時間將寫入表WFProcessInst或
者WFWorkltem的limitNum字段中,單位為毫秒,limitNumDesc是其描述字段;
finalTime是時間限制到達(dá)后的時間。EOSWorkFlow將當(dāng)前時間與startTime
相減的結(jié)果與limitNum比較,一旦超出時間限制就將isTimeOut字段置為Y,
表示超時;timeOutNum表示超時了多長時間,在流程結(jié)束時寫入。假如設(shè)置了
超時提醒,該字段可能出現(xiàn)負(fù)數(shù),是未超時的表現(xiàn),只有正數(shù)才表示超時的時間,
timeOutNumDesc是其描述字段。
2.1.3.2時間設(shè)置說明
【描述】
【應(yīng)用場景】
規(guī)定流程A務(wù)必在1天內(nèi)完成,超時進(jìn)行通知;并在超時前10小時發(fā)提醒通知
【操作步驟】
1、雙擊流程A的編輯區(qū),彈出屬性設(shè)置窗口,點(diǎn)擊時間限制選項(xiàng)卡
2、勾選啟用時間限制
3、指定時間限制為:1天0小時0分鐘
4、勾選是否按設(shè)置的時間限制進(jìn)行超時通知。此處將會根據(jù)wfconfig.xml有關(guān)
配置給流程啟動者發(fā)送郵件。
5、指定提早0天10小時0分鐘提醒
6、勾選是否按設(shè)置的提醒時間進(jìn)行超時預(yù)警。此處將會根據(jù)wfconfig.xml有關(guān)配置
給流程啟動者發(fā)送郵件。
I圖-設(shè)置流程時間限制1]
說明:
1、不管是超時通知的郵件還是提醒的郵件,收件人都是流程啟動者
2、這些郵件的發(fā)件人,可根據(jù)具體情況在配置文件設(shè)置$Primeton
HOME\eosserver\config目錄下的wfconfig.xml設(shè)置,有關(guān)部分如下所示:
<groupname="sendmail">
<configValuekey="username">zll</configValue>
<configValuekey="password">zll</configValue>
<configValuekey="mailPort">25</configValue>
<configValuekey=,,fromName,'>zll</configValue>
<configValuekey=MauthLogin">true</configValue>
</group>
參數(shù)說明:
Field名稱可否空說明
mailServer是郵件服務(wù)器SMTP地址
mailPort是SMTP端口,通常設(shè)置為25
authLogin是SMTP服務(wù)器是否需要進(jìn)行用戶驗(yàn)證,設(shè)置true則需
要進(jìn)行用戶認(rèn)證,設(shè)置false則不需要進(jìn)行認(rèn)證
username是SMTP服務(wù)器的用戶名
password是SMTP的用戶口令
特別說明:EOS工作流超時提醒只提醒一次。流程實(shí)例一旦超時,就會觸發(fā)相
應(yīng)的操作將流程實(shí)例中的WFProcessInst/isTimeOut節(jié)點(diǎn)設(shè)置為Y。假如想實(shí)現(xiàn)
重復(fù)提醒功能,通常的做法是為流程設(shè)置超時的觸發(fā)事件。在超時觸發(fā)事件中注
冊一個定時器,定時掃描該流程實(shí)例是否完成,假如沒有完成就執(zhí)行發(fā)放郵件或
者者短信都通知的操作。
2.1.4流程啟動者
流程啟動者表示能夠啟動某個流程的組織、角色或者人。EOSWorkFlow提
供兩種流程啟動策略:任意人員啟動與從組織機(jī)構(gòu)樹獲取。這樣做的目的要緊是
從實(shí)際工作中的安全性考慮,視流程的具體情況限定能夠啟動該流程的人員范
圍。
[圖-流程啟動者]
當(dāng)流程實(shí)例運(yùn)行的時候,能夠在有關(guān)數(shù)據(jù)區(qū)的如下節(jié)點(diǎn)xpath找到流程啟動者:
<WFContext>
<WFProcessInst>
<creator>tiger</creator>
</WFProcessInst>
</WFContext>
2.1.5流程定義特別說明
工作流的自動活動或者觸發(fā)事件調(diào)用帶事務(wù)的業(yè)務(wù)邏輯的注意事項(xiàng)
由于工作流的事務(wù)操縱與業(yè)務(wù)邏輯的事務(wù)操縱是分開的,因此,當(dāng)工作流的
自動活動或者觸發(fā)事件調(diào)用了帶事務(wù)操縱的業(yè)務(wù)邏輯時,工作流引擎默認(rèn)忽略業(yè)
務(wù)邏輯中的事務(wù),這樣就存在一個問題:
業(yè)務(wù)邏輯中出現(xiàn)了特殊,并通過特殊線回滾,這時,業(yè)務(wù)數(shù)據(jù)提交不成功,
但是,工作流引擎并沒有接收到特殊,它會繼續(xù)往后走,最終就出現(xiàn)工作流事務(wù)
與業(yè)務(wù)事務(wù)不一致的現(xiàn)象。
【解決方案與步驟】
建議業(yè)務(wù)邏輯中不要用特殊線回退到回滾,讓特殊直接拋出,這樣工作流引
擎會接收到特殊,繼而做回滾!
【備注】
1)特殊線不能隨便使用,假如一定要用,最好設(shè)置返回值返回,最后轉(zhuǎn)向
出錯頁面;
2)使用特殊線前還要注意BL方法是否會拋特殊,由于不是所有的BL方法
都會拋特殊。
2.2活動定義
EOSWorkFlow提供了六種類型的活動。開始活動、結(jié)束活動、人工活動、自
動活動、子流程活動與路由活動。
活動圖元介紹
圖元名稱含義
表示一個業(yè)務(wù)流程的開始。在流程開始活動能夠定義流程的
開始活動
啟動表單與業(yè)務(wù)流程的觸發(fā)事件。
O人工活動指需要人工干預(yù)、進(jìn)行某種操作的活動0比如填寫表單等。
指無需人工干預(yù),系統(tǒng)自動執(zhí)行的活動。比如獲取系統(tǒng)時間、
自動活動
往數(shù)據(jù)庫中插入記錄等。
一種特殊的活動,此活動本身是指向某一個流程,表示當(dāng)流
子流程程實(shí)例運(yùn)行至如今,啟動另外一個流程。子流程的啟動分為
?同步與異步兩種方式。
是一種邏輯活動,根據(jù)操縱條件推斷流程的流向。該活動本
路由活動
身并不執(zhí)行任何具體的操作。
結(jié)束活動表示一個業(yè)務(wù)流程的結(jié)束。
2.2.1設(shè)置活動基本信息
活動包含:人工活動、自動活動、子流程。
1)自動活動的基本信息設(shè)置如下:
0屬性設(shè)置
進(jìn)油入耀
設(shè)置屬性進(jìn)油入維
隹置屋性進(jìn)油入圖
基本信息|參數(shù)觸發(fā)事件|回退|啟動策略]
擴(kuò)展雇性
調(diào)用類型畫畫與
⑥gBi翥果|是一三!
選擇...|
確定|取消
?調(diào)用方式:
“同步”:直到調(diào)用的執(zhí)行動作運(yùn)行完后當(dāng)前自動活動才結(jié)束
“異步”:當(dāng)前自動活動在調(diào)用執(zhí)行動作后就結(jié)束,而無需等待執(zhí)行動
作運(yùn)行完
?結(jié)束方式.
“自動”:調(diào)用完執(zhí)行動作后,工作流引擎自動將當(dāng)前自動活動結(jié)束
“人工:”調(diào)用完執(zhí)行動作后,引擎不將當(dāng)前自動活動結(jié)束,而是等待
外部調(diào)用結(jié)束該活動
2)子流程的基本信息設(shè)置如下:
調(diào)用方式:
“同步”:以“同步”的方式調(diào)用子流程,等待子流程運(yùn)行完成后,該
子流程活動才結(jié)束
“異步”:以“異步”的方式調(diào)用子流程,當(dāng)前活動在啟動完子流程后
就結(jié)束,而無需等待子流程運(yùn)行完成
子流程:單擊【選擇…】按鈕,從彈出窗口的資源樹中選擇子流程或者直
接輸入子流程,填寫規(guī)則為:構(gòu)件包名.工作流構(gòu)件名.業(yè)務(wù)流程名。假如調(diào)
用的子流程需要輸入或者輸出一些參數(shù)請在參數(shù)選項(xiàng)卡中設(shè)置
2.2.2聚合模式、分支模式
活動的“分支”與“聚合”模式在流程定義時設(shè)置,分別描述了活動在運(yùn)行
時何時被觸發(fā)與或者個運(yùn)行結(jié)束后,它的后繼活動如何被觸發(fā)。
2.2.2.1聚合模式
聚合模式,表示該活動得以觸發(fā)的方式。它包含“全部聚合(AND)”、“單一
聚合(XOR)”與“多路聚合(OR)”三種情況:
1.“全部聚合”型聚合模式
表示該活動務(wù)必等到它的所有前驅(qū)活動全部完成才能夠觸發(fā)。
2.“單一聚合”型聚合模式
表示當(dāng)該活動的若干前驅(qū)活動中只要有一個滿足條件的活動完成,該活動即
可被觸發(fā)。
3“多路聚合”型聚合模式
表示該活動務(wù)必等到它的所有滿足條件的前驅(qū)活動全部完成才能夠觸發(fā)。
滿足條件的前驅(qū)活動包含:
1)它與該活動的連線是“默認(rèn)值”;
2)它與該活動連線上條件為“true”;
3)多路聚合還需要特別說明的是:多路聚合不一定要設(shè)置默認(rèn)連線,也就
是說一個多路聚合的全部連線都能夠設(shè)置條件。
【示例】
1.“全部聚合”型聚合模式示例
[圖-“全部聚合”型聚合模式]
如上圖所示,“人工活動3”的“聚合模式(JoinMode)”設(shè)置為“全
部聚合”,那么只有在它的前驅(qū)“人工活動”、“人工活動1”,“人工活
動2”都完成后,“人工活動3”才能夠運(yùn)行。
2.“單一聚合”型聚合模式示例
[圖-“單一聚合”型聚合模式]
如上所示,由于“人工活動3”的“聚合模式(JoinMode)”設(shè)置為“單一
聚合”,那么根據(jù)上面的算法說明,當(dāng)“人工活動”完成后,“人工活動3”
就能夠運(yùn)行了。而無需考慮“人工活動1”或者“人工活動2”是否完成。
3.“多路聚合”型聚合模式示例
1)由前驅(qū)活動射出的連線上中有默認(rèn)值
?摩色表示活勖已結(jié)束
?紅色表示活助正在運(yùn)行
人工活動2
[圖-“多路聚合”型聚合模式]
如上圖所示,由于“人工活動3”的“聚合模式(JoinMode)”是“多路聚合”
同時在處理的過程中"num==6",那么根據(jù)上面的算法說明由于“人工活動”與
“人工活動3”與“人工活動1”與“人工活動3”的連線上的條件都滿足,因
此“人工活動3”在“人工活動”與“人工活動1”完成后被觸發(fā)。
2)由前驅(qū)活動射出的連線上都設(shè)置條件
9
活動C
[圖-“多路聚合”型聚合模式]
如上圖所示,由于“活動E”的“聚合模式(JoinMode)”是“多路聚合”同
時在處理的過程中"num==6",那么根據(jù)上面的算法說明由于“活動B與“活動
D”的射出的連線上的條件都滿足,因此“活動B與“活動D”都完成后,活動E
才被觸發(fā)。
2.2.2.2分支模式
分支模式,表示該活動結(jié)束后,它的后繼活動的觸發(fā)情況。它包含“全部分
支(AND)”、“單一分支(X0R)”與“多路分支(OR)”三種情況:
1.“全部分支”型分支模式
表示該活動結(jié)束后它的所有后繼活動將同時被觸發(fā)。
2.“單一分支”型分支模式
假如該活動的分支模式為“單一分支”,那么引擎會根據(jù)由該活動“射出”
的連接線上的條件進(jìn)行推斷,決定該觸發(fā)哪個后繼活動。具體分為下面三種
情況:
1)滿足條件的連接線所指的活動被觸發(fā);
2)假如有若干個連接線上的條件都滿足,那么比較連接線上的優(yōu)先級,
優(yōu)先級高的那條連接線所指的活動將被觸發(fā);
3)假如連接線上的條件都不滿足,那么取“默認(rèn)值”的那條連接線所
指的活動將被觸發(fā)。
[注]活動的“分支模式”為“單一分支”時,由它射出的連接線有且只有
一條線的取值是“默認(rèn)值”。
3.“多路分支”型分支模式
假如該活動的分支模式為“多路分支",那么引擎會根據(jù)由該活動“射出”
的連接線上的條件進(jìn)行推斷,決定觸發(fā)哪個或者什么后繼活動。具體分為下
面二種情況:
1)假如連接線上取“默認(rèn)值”,那么由此連接線所指的后繼活動會被觸發(fā);
2)假如連接線上的條件滿足,那么由此連接線所指的后繼活動會被觸發(fā)。
3)多路分支還需要特別說明的是:多路分支不一定要設(shè)置默認(rèn)連線,也就
是說一個多路分支的全部連線都能夠設(shè)置條件。
【示例】
1.“全部分支”型分支模式示例
[圖-“全部分支”型分支模式]
如上圖所示,由于A活動的分支模式是“全部分支”,那么當(dāng)A活動完成
后它后繼的所有活動(B、C、D)將同時被觸發(fā)。
2.“單一分支”型分支模式示例
1)由該活動射出的連線上只有一個滿足條件時
開始活動AC結(jié)束
默認(rèn)
XiF?綠色表示活動已結(jié)束
D?紅色表示活動正在運(yùn)行
[圖-“單一分支”型分支模式1]
如圖所示,由于“A”活動的分支模式是“單一分支”同時在處理
的過程中"num==6",因此由“A”射出的連接線上只有“num>5”滿足
條件,因此“B”活動滿足條件被觸發(fā)。
2)由該活動射出的連線上有若干個滿足條件時
開始活動AC結(jié)束
默認(rèn)
??綠色表示活動已結(jié)束
D?紅色表示活動正在運(yùn)行
[圖-“單一分支”型分支模式2]
如上圖所示,由于"A”活動的分支模式是“單一分支”同時在處
理的過程中"num==l",盡管由A指向B與C的兩條分支都滿足條件,
但指向B的優(yōu)先級大于指向C的優(yōu)先級,因此“B”活動被觸發(fā)。
3)由該活動射出的連線上沒有一個滿足條件時
B
?紅色表示活動正在運(yùn)行
[圖-“單一分支”型分支模式3]
如上圖所示,由于“A”活動的分支模式是“單一分支”同時在處理的
過程中"num==2",那么由“A”射出的連接線上沒有滿足條件的,因
此“D”活動被缺省觸發(fā)。
3.“多路分支”型分支模式示例
1)由活動射出的連線上中有默認(rèn)值
口
開始局動人工活動1人工活動3結(jié)束
綠色表示活劭已結(jié)束
紅色表示活動正在運(yùn)行
人工活動2
[圖-“多路分支”型分支模式]
如上圖所示,由于“開始活動”的分支模式是“多路分支”同時在處理
的過程中“num=6",那么根據(jù)上面的算法說明,由“開始活動”射出的連
接線上為“默認(rèn)值”所指的后繼活動“人工活動”一定會被觸發(fā);又由于
滿足“num>5”的條件因此“人工活動1”也會被觸發(fā)
2)由活動射出的連線上中沒有默認(rèn)值,全部設(shè)置條件
活動C
如上圖所示,由于“開始活動”的“分支模式”是“多路分支”同時在處理
的過程中"num==6",那么根據(jù)上面的算法說明由于射向“活動B與"活動D”
的連線上的條件都滿足,因此“活動B與“活動D”在開始活動結(jié)束后被觸發(fā)。
2.2.3參與者設(shè)置
活動參與者實(shí)際上是指在流程實(shí)例運(yùn)行過程中,流程實(shí)例“流轉(zhuǎn)”至如今該
活動實(shí)例所對應(yīng)的工作項(xiàng)有什么人能夠執(zhí)行。在流程定義時設(shè)置活動的參與者實(shí)
際上是圈定流程實(shí)例運(yùn)行至如今能夠執(zhí)行該活動實(shí)例所對應(yīng)工作項(xiàng)的人員范圍,
能夠是機(jī)構(gòu)、角色或者人。
EOSWorkFlow提供了4種能夠獲取參與者的方式:
組織機(jī)構(gòu)與角色:參與者由開發(fā)人員從機(jī)構(gòu)樹中獲取
-只選擇一人:表示該活動所對應(yīng)的工作項(xiàng)直接分配給該人處理
--超過一人:表示該活動所對應(yīng)的工作項(xiàng)由這些人中的某個人以“領(lǐng)取”
的方式處理
虛擬崗位(機(jī)構(gòu)+角色):表示在不設(shè)置崗位的情況下,由部門+角色共同決定一
個人工活動的參與者。
流程啟動者:表示活動參與者為該流程的啟動者
活動執(zhí)行者:表示活動參與者為某個已完成的活動實(shí)例所對應(yīng)工作項(xiàng)的執(zhí)行者
特別說明:假如要改寫組織機(jī)構(gòu)權(quán)限并在參與者設(shè)置的時候顯示新的組織機(jī)構(gòu)
樹,具體操作請參見知識庫文檔:組織機(jī)構(gòu)與工作流集成方案.doc
2.2.3.1虛擬崗位(機(jī)構(gòu)+角色)設(shè)置參與者
-圖通過機(jī)構(gòu)+角色實(shí)現(xiàn)虛擬崗位設(shè)置參與者
用角色+機(jī)構(gòu)的方式設(shè)置參與者需要特別注意的是,在該活動激活往常一定
要將上圖中機(jī)構(gòu)變量路徑設(shè)置到有關(guān)數(shù)據(jù)區(qū)中。
此外,還有一種方法設(shè)置一組機(jī)構(gòu):把多個機(jī)構(gòu)寫成如下格式:
<list>
<org>
<id>l</id>
</org
<org>
<id>2</id>
</org>
</list>
這樣機(jī)構(gòu)變量路徑xpath寫成:list/org/id即可。這樣,工作流引擎也會找到
多個機(jī)構(gòu)id,從而實(shí)現(xiàn)設(shè)置一組機(jī)構(gòu)+角色的要求。如下圖所示:
基本信息參與者設(shè)置|表單數(shù)據(jù)|時間限制|多工作項(xiàng)|觸發(fā)事件|回退|自由流|啟動策略!
⑥組織機(jī)構(gòu)與角色
ID]參與者ID|名稱添加@)
蒞8A
插入(X)
編輯⑥
刪除⑼
剪切也
復(fù)制?
粘貼9
一選擇...|
取消
圖-設(shè)置一組機(jī)構(gòu)變量
2.2.3.2從有關(guān)數(shù)據(jù)區(qū)設(shè)置參與者
1)從有關(guān)數(shù)據(jù)獲得一個具體的參與者
【算法說明】
從有關(guān)數(shù)據(jù)的XPATH中,直接指定一個參與者。
注:這種方式獲得的參與者只能是個人。有關(guān)數(shù)據(jù)務(wù)必滿足下面的結(jié)構(gòu)。
<XXXX>tiger</XXXX>
2)從有關(guān)數(shù)據(jù)獲貓某一類型的參與者(指定一個或者一組人員)
【算法說明】
從有關(guān)數(shù)據(jù)的XPATH中,獲得某一類型的參與者。能夠是一個人,也能夠是某
一角色或者某一機(jī)構(gòu)的一組人。有關(guān)數(shù)據(jù)務(wù)必滿足下面的結(jié)構(gòu)。
<xxxx>
<id/>
<name/>
<type/>
</xxxx>
3)從有關(guān)數(shù)據(jù)獲得一系列參與者
【算法說明】
從有關(guān)數(shù)據(jù)的XPATH中,獲得一組參與者。能夠是一個人、一個角色、一個崗
位、一個機(jī)構(gòu),也能夠是機(jī)構(gòu)、角色或者個人的集合,還能夠是崗位列表的集合。
有關(guān)數(shù)據(jù)務(wù)必滿足下面的結(jié)構(gòu)。
<list>
<Participant>
<id/>
<name/>
<type/>
</Participant>
<Participant>
<id/>
<name/>
<type/>
</Participant>
</list>
id與type的含義如上所示
[特別說明]:在上面XPATH結(jié)構(gòu)中假如type是“person",那么id即為用戶
ID;假如type是"role",那么id即為角色I(xiàn)D;假如type是“organization",那
么id即為機(jī)構(gòu)ID;假如type是“position",那么id即為崗位ID;假如type
是"positionJist",那么id即需滿足如下格式:
<Conditiontype=,,OR">〃type=”O(jiān)R”表示組織機(jī)構(gòu)
<roleID>rolea</roleID>//角色I(xiàn)D
<orgID>$orgID</orgID>//獲取機(jī)構(gòu)ID的XPATH(相關(guān)于有關(guān)數(shù)據(jù)的根路徑
不可少,標(biāo)識其后的串是個XPATH。
</Condition>
此外,還有一種方法設(shè)置一組機(jī)構(gòu):把多個機(jī)構(gòu)寫成如下格式:
<list>
<org>
<id>l</id>
</org
<org>
<id>2</id>
</org>
</list>
這樣機(jī)構(gòu)變量路徑xpath寫成:list/org/id即可。這樣,工作流引擎也會找到
多個機(jī)構(gòu)id,從而實(shí)現(xiàn)設(shè)置一組機(jī)構(gòu)+角色的要求。
2.2.3.3從規(guī)則邏輯設(shè)置參與者
從規(guī)則邏輯獲取參與者
【算法說明】
從業(yè)務(wù)邏輯獲取參與者列表,然后再按照“分配到組織機(jī)構(gòu)”的模式進(jìn)行分配。
從業(yè)務(wù)邏輯返回Dom當(dāng)中找到參與者列表的方法:
1)假如返回的結(jié)果中包含下面的結(jié)構(gòu),系統(tǒng)從list節(jié)點(diǎn)中獲取多個參與者。
<list>
<Participant>
<id></id>
<name></name>
<type></type>
</Participant>
<Participant>
<id></id>
<name></name>
<type></type>
</Participant>
</list>
2)假如從規(guī)則邏輯中沒有找到list節(jié)點(diǎn),那么系統(tǒng)會查找Participant節(jié)點(diǎn).
獲取參與者。格式如下所示:
<Participant>
<id></id>
<name></name>
<type></type>
</Participant>
id與type的含義同上。
[特別說明]:假如如上所示的兩種結(jié)構(gòu)都存在于調(diào)用的規(guī)則邏輯的返回的結(jié)
果中,那么系統(tǒng)只會從list節(jié)點(diǎn)中獲取參與者。
在上面XPATH結(jié)構(gòu)中假如type是“person”,那么id即為用戶ID;假如type
是“role",那么id即為角色I(xiàn)D;假如type是"organization那么id即
為機(jī)構(gòu)ID;假如type是“position”,那么id即為崗位ID;假如type
是“position」ist",那么id即需滿足如下格式:
<Conditiontype=〃0R〃>//type="OR”表示組織機(jī)構(gòu)
<roleID>rolea</roleID>//角色I(xiàn)D
<orgID>$orgID</orgID>//獲取機(jī)構(gòu)ID的XPATH(相關(guān)于有關(guān)數(shù)據(jù)的根
路徑不可少,標(biāo)識其后的串是個XPATH。
</Condition>
此外,還有一種方法設(shè)置一組機(jī)構(gòu):把多個機(jī)構(gòu)寫成如下格式:
<list>
<org>
<id>l</id>
</org
<org>
<id>2</id>
</org>
</list>
這樣機(jī)構(gòu)變量路徑xpath寫成:list/org/id即可。這樣,工作流引擎也會找到
多個機(jī)構(gòu)id,從而實(shí)現(xiàn)設(shè)置一組機(jī)構(gòu)+角色的要求。
2.2.3.4工作流參與者設(shè)置機(jī)制說明
流程實(shí)例根據(jù)流轉(zhuǎn)條件依次激活實(shí)例中的相應(yīng)的活動,當(dāng)活動分配給某個參
與者(唯一的userID)的時候,就在WFWorkltem表中形成一條工作項(xiàng)記錄,主
鍵為workltemlDo在WFWorkltem工作項(xiàng)信息表里還有個很重要的字段:
participanto這個字段描述該工作項(xiàng)的參與者具體是誰。在工作項(xiàng)參與者
WFWIParticipant表中,也有工作項(xiàng)workltemlD與參與者participant,只是,
這個表里描述的是根據(jù)流程定義,活動被激活后工作項(xiàng)的分配情況,根據(jù)流程定
義的設(shè)置形成相應(yīng)的記錄,比如,流程定義中有3種參與者,那么在
WFWIParticipant表中也形成3條記錄,因此這里的參與者有可能是具體個人
(userID),也可能是角色(role),也可能是機(jī)構(gòu)(orgID),也可能是崗位
(positionlD),當(dāng)工作項(xiàng)沒有領(lǐng)取的時候,在WFWorkltem表中也會形成一條記
錄,這條記錄的參與者字段participant是用隔開的參與者串,這個串中
的參與者是在流程定義的時候定義的。當(dāng)工作項(xiàng)被領(lǐng)取以后,就會在工作項(xiàng)表
WFWorkltem表里出現(xiàn)具體的執(zhí)行人信息。此外,有的時候候工作項(xiàng)會出現(xiàn)該派
的情況,這個時候,改派以后具體參與者也在工作項(xiàng)表WFWorkltem表有描述,
而工作項(xiàng)參與者WFWIParticipant表不可能有什么變化。
2.2.4時間限制
活動的時間限制表示活動實(shí)例啟動啟動后務(wù)必在多長時間內(nèi)完成。在活動時
間限制的設(shè)置中EOSWorkFlow為開發(fā)人員提供了指定具體的限制時間、超時是
否進(jìn)行郵件通知、是否在超時前進(jìn)行提醒、是否發(fā)提醒通知等功能。
活動時間限制的設(shè)置:開發(fā)人員能夠根據(jù)業(yè)務(wù)需要在“人工活動”與“子流程活
動”中進(jìn)行設(shè)置。
活動時間限制的計時:從活動實(shí)例啟動時開始計時
活動時間限制的獲?。褐苯又付ā挠嘘P(guān)數(shù)據(jù)獲取(格式:3.5.20表示時限
為3天5小時20分鐘)
活動還有超時的觸發(fā)事件設(shè)置,能夠針對超時做具體的操作。
EOSWORKFLOW推斷流程或者人工活動
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 加班夜宵采購合同范本
- 單位間借用合同范本
- 個人股東入股合同范本
- 保安公司加盟合同范本
- 產(chǎn)學(xué)研技術(shù)采購合同范本
- 勞務(wù)聘用員工合同范本
- 企業(yè)綠化采購合同范本
- 加工中心租賃合同范本
- 勞務(wù)協(xié)議解除合同范本
- 公司股權(quán)集資合同范本
- 牛肉干市場洞察報告
- 《Photoshop CC圖像處理》課件-任務(wù)9 使用時間軸與動作
- 04S519小型排水構(gòu)筑物(含隔油池)圖集
- 2024中國糖尿病合并慢性腎臟病臨床管理共識解讀
- 中職《生理學(xué)》課件第一章-緒論
- 2024年執(zhí)法資格考試題庫(附答案)
- 華與華方法論合集【超級符號】【營銷干貨】
- 運(yùn)用PDCA循環(huán)提高全麻患者體溫檢測率
- 外研版(2024)七年級上冊英語全冊教案教學(xué)設(shè)計
- 《管理會計》說課及試講
- 遺傳咨詢行業(yè)研究報告
評論
0/150
提交評論