天天看點

Flowable入門系列文章31 - Activity解讀 07

1、終止結束事件

描述

當達到終止結束事件時,目前程序執行個體或子程序将被終止。從概念上講,當執行到達終止結束事件時,第一個作用域(程序或子程序)将被确定并結束。請注意,在BPMN 2.0中,子流程可以是嵌入式子流程,調用活動,事件子流程或事務子流程。該規則通常适用于:例如,當存在多執行個體調用活動或嵌入式子程序時,隻有該執行個體将結束,其他執行個體和流程執行個體不受影響。

有一個可以添加的可選屬性terminateAll。如果為true,則無論在流程定義中放置終止事件,也不管在子流程(甚至嵌套)中,(根)流程執行個體都将終止。

圖形表示法

一個取消結束事件被視為一個典型的結束事件(粗大的圓圈),裡面有一個完整的黑色圓圈。

Flowable入門系列文章31 - Activity解讀 07

XML表示

終止結束事件被表示為結束事件,帶有一個terminateEventDefinition子元素。

請注意,terminateAll屬性是可選的(預設為false)。

<endEvent id="myEndEvent >
	<terminateEventDefinition flowable:terminateAll="true"></terminateEventDefinition>
</endEvent>
           

2、取消結束事件

描述

取消結束事件隻能與BPMN事務子流程結合使用。當到達取消結束事件時,取消事件被引發,必須被取消邊界事件捕獲。取消邊界事件然後取消交易并觸發賠償。

圖形表示法

取消結束事件被視為一個典型的結束事件(粗體輪廓),裡面有取消圖示。取消圖示是完全黑色的,以訓示其抛出的語義。

Flowable入門系列文章31 - Activity解讀 07

XML表示

取消結束事件被表示為一個結束事件,帶有一個cancelEventDefinition子元素。

<endEvent id="myCancelEndEvent">
<cancelEventDefinition />
</endEvent>
           

3、邊界事件

邊界事件是捕捉附加到一個活動的事件(邊界事件永遠不會被抛出)。這意味着當活動正在運作時,事件正在監聽某種類型的觸發器。當事件被捕獲時,活動被中斷,順序流出事件。

所有邊界事件都以相同的方式定義:

<boundaryEvent id="myBoundaryEvent" attachedToRef="theActivity">
<XXXEventDefinition/>
</boundaryEvent>
           

邊界事件是用

  • 唯一辨別符(全過程)
  • 對通過attachedToRef屬性附加到的活動的引用。請注意,邊界事件的定義與其所附的活動處于同一級别(換句話說,不在活動内部包含邊界事件)。
  • 定義邊界事件類型的形式為XXXEventDefinition的XML子元素(例如,TimerEventDefinition,ErrorEventDefinition等等)。有關更多詳細資訊,請參閱特定邊界事件類型。

上面文章來自盤古BPM研究院:http://vue.pangubpm.com/

文章翻譯送出:https://github.com/qiudaoke/flowable-userguide

了解更多文章可以關注微信公衆号:

Flowable入門系列文章31 - Activity解讀 07