step
大致相當於流程所在的位置。譬如企業年檢,年檢報告書在企業端算乙個
step
,在工商局算第二個
step
,在複核視窗算第三個
step
。每個step
可以有多種狀態(
status
)和多個動作(
action
),用workflow.getcurrentsteps()
可以獲得所有當前的
step
(如果有並列流程,則可能同時有多個
step
,例如一次年檢可能同時位於「初審
」step和「
廣告經營資格審查
」step)。
status
流程在某個
step
中的狀態
。很容易理解,譬如
「待認領」、
「審核不通過
」之類的。
osworkflow
中的狀態完全是由開發者自定義的,狀態判別純粹是字串比對,靈活性相當強,而且可以把定義檔案做得很好看。
action
導致流程狀態變遷的動作
。乙個
action
典型地由兩部分組成:可以執行此動作的條件(
conditions
),以及執行此動作的結果(
results
)。條件可以用
beanshell
指令碼來判斷,因此具有很大的靈活性,幾乎任何與流程相關的東西都可以用來做判斷。
result
執行動作後的結果
。這是個比較重要的概念。
result
分為兩種,
conditional-result
和unconditional-result
。執行乙個動作之後,首先判斷所有
conditional-result
的條件是否滿足,滿足則使用該結果;如果沒有任何
contidional-result
滿足條件,則使用
unconditional-result
。unconditional-result
需要指定兩部分資訊:
old-status
,表示「
當前step
的狀態變成什麼
」;後續狀態,可能是用
step+status
指定乙個新狀態,也可能進入
split
或者join。
conditional-result
非常有用。還是以年檢為例,同樣是提交年檢報告書,
「未提交」和
「被退回
」是不同的狀態,在這兩個狀態基礎上執行「提交
」動作,結果分別是
「初次提交」和
「退回之後再次提交
」。這時可以考慮在「提交
」動作上用
conditional-result。
split/join
流程的切分和融合
。很簡單的概念,
split
提供多個
result
;join
則判斷多個
current step
的狀態,提供乙個
result。
* * *
熟悉這些概念,在流程定義中盡量使用中文,可以給業務**和表現層帶來很多方便
OSWorkflow基本概念
step 大致相當於流程所在的位置。譬如企業年檢,年檢報告書在企業端算乙個step,在工商局算第二個step,在複核視窗算第三個step。每個step可以有多種狀態 status 和多個動作 action 用workflow.getcurrentsteps 可以獲得所有當前的step 如果有並列流程...
基本概念 C 基本概念
由於工作中需要用到c 編寫的一些工具,有時候需要根據需求修改或者定製工具,所以現在不得不學習一下c 的基礎語法,此為筆記,不成章法!機器語言 組合語言 高階語言 面向過程的程式設計方法 物件導向的程式設計方法 泛型程式設計方法 1 演算法設計 2 源程式編輯 3 編譯 4 連線 5 執行除錯 輸入裝...
基本概念 數控系統基本概念
第一章 基本概念 數控工具機cnc是一種按事先編制好的加工零件程式進行加工的高效 自動化加工裝置。是 computer numerical control machine tools 的簡稱。數控工具機較好地解決了複雜 精密 小批量 多品種的零件加工問題,是一種柔性的 高效能的自動化工具機。西門子系...