顺序流
顺序流是一个 BPMN 元素,表示活动在业务流程中的执行顺序。 定义了从一个活动到另一个活动的工作或信息的逻辑流, 表示任务或子流程的执行顺序。
顺序流连接 BPMN 图中的两个活动, 显示流程的流动方向以及活动之间的依赖关系。 顺序流在业务流程中工作流的可视化和建模中发挥着至关重要的作用, 有助于提高流程设计的清晰度和一致性。
图形和 XML 表示
顺序流在图中展示为从出发元素到目的元素的箭头。 箭头始终指向目标。
在 XML 文件中,顺序流表示为其他 BPMN 元素之间的单独对象:
<sequenceFlow id="Flow_1sjggq6" sourceRef="Event_15w11z6" targetRef="Gateway_0r2ejfv" />
可以看到,XML 中顺序流有两个属性:sourceRef 和 targetRef
表示箭头出发和目的的元素。
传入和传出流
由于顺序流连接两个活动,第一个活动是 传出流(outgoing),第二个活动是 传入流(incoming)。
最佳实践是每个活动只有一个传入流和传出流。
在 XML 文件中,可以在相应的 BPMN 元素中看到对顺序流的引用:
<task id="Activity_1pncn0v" name="Activity">
<incoming>Flow_1tncfsd</incoming>
<outgoing>Flow_1nxsuoi</outgoing>
</task>
顺序流属性
在 BPMN 建模器中,可以为顺序流配置下列属性:
属性 |
描述 |
Id |
元素的标识符。自动生成,但是可以自己修改为更有意义的内容,以便提高日志的可读性。 |
Name |
元素的名称 |
Condition source |
条件 的来源:Expression、User task outcome 或 Business rule task result。参考 条件。 |
Condition expression |
源自 Expression 的条件表达式。参考 表达式。 |
User task id, User task outcome |
源自 User task outcome 条件的配置:用户任务的 id 和任务结果。参考 用户任务结果。 |
Condition type |
多用户任务的完成条件。选择 User task outcome 且用户任务是多实例时可配置。参考 多实例。 |
Business rule task, Decision table output variable name, Decision table output value |
源自 Business rule task result 条件的配置:业务规则任务及其结果。参考 业务规则任务结果。 |
Execution listeners |
参考 执行监听器。 |
Documentation |
元素的描述或其他的附加信息。 |
条件顺序流
BPMN 2.0 将 条件流(conditional flow) 定义为一种特殊的符号元素。 从图形上看,是一个常规的顺序流,但是连接线的开头有一个小菱形。 如图:
条件流只能用作活动的 传出 流。 条件在运行时进行计算,以确定该顺序流是否使用。
在 Jmix BPM 中,所有顺序流都可以有一个条件,但只有在必要时才会被计算和使用。
|
强烈建议 不要使用条件流,因为有可能发生错误。 例如在上图中,如果条件为 false 且没有其他路径可用,则流程将停止。 |