遞迴在演算法在工作流程引擎中的應用
遞迴做為一種演算法在程式語言中廣泛應用
.是指函式/過程
/子程式在執行過程中直接或間接呼叫自身而產生的重入現象
.遞迴是電腦科學的乙個重要概念
,遞迴的方法是程式設計中有效的方法
,採用遞迴編寫程式能使程式變得簡潔和清晰.。
遞迴在工作流程引擎中有廣泛的應用,以以下事例來說明:
應用一:退回到指定的節點,要把當前節電與退回節點之間的節點資料清空。
//////遞ìy
歸¨¦刪¦?
除y兩¢?
個?節¨²
點ì?之?
間?的ì?
數ºy據y
//////到ì?
達ä?的ì?
節¨²點ì?
集¡¥合?
public
void deletetonodesdata(nodes nds)/*說
¦ì明¡â:已°?經
-刪¦?除
y該?節
¨²點ì?數
ºy據y。
¡ê*/
dbaccess.runsql("delete wf_generworkerlist where (workid=" + this.workid + " or fid=" + this.workid + ") and fk_node=" + nd.nodeid);//刪
¦?除y正
y常¡ê的
ì?垃¤?圾
?數ºy據
y。¡êdbaccess.runsql("delete wf_generworkflow where workid not in (select workid from wf_generworkerlist )");
dbaccess.runsql("delete wf_generfh where fid not in (select fid from wf_generworkerlist)");
deletetonodesdata(nd.histonodes);}}
應用二:在分合流程過程中,流程結束時,要根據使用者的需要判斷並殺掉沒有完成的程序。
//////結¨¢
束º?流¢¡â程¨¬
//////
public
string doflowover()
。。。。。。。。。。。。。。
}應用三
:根據當前節點的
id,向上追溯乙個分流節點。
//////獲?
取¨?它¨¹
的ì?上¦?
一°?步?
的ì?分¤?
流¢¡â點ì?
///private
node _gethispriflnode(nodes nds)
return
null;
}///
///它¨¹的
ì?上¦?一
°?步?分
¤?流¢¡â節¨²點
ì?///
public
node hispriflnode
}
類別:工作流開發
土製狀態機在工作流引擎中的應用
author ahuaxuan date 2009 10 27 很早之前 應該是一年以前 ahuaxuan在用dfa實現文字過濾一文中使用確定有限自動機實現了詞典的高速查詢。其實在當時那段時間裡,由於對狀態機有了一定的研究,ahuaxuan也觸類旁通的理解了工作流引擎的核心體制。於是當時就用pyth...
馳騁工作流程引擎在流程設計發生變化後如何處理?
流程變更分為如下幾種情況.1,增加節點.2,減少節點.3,節點工作人員發生變化.4,表單內容增加.5,表單內容減少.6,方向條件變化.面對以上的變化 ccflow 採取的應對方案如下.1,增加節點.re 解決方案 對流程沒有影響.1.對原來與現有的流程沒有什麼影響,歷史的工作報告還能開啟.流程軌跡圖...
判斷單據是否在工作流中
描述 檢查單據是否在工作流中 param ui 當前ui,顯示訊息時用 param id 單據id public static void checkbillinworkflow coreuiobject ui,string id catch bo ception e for int i 0,n pr...