Flowable入门系列文章58 - 子过程
Posted 分享牛
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flowable入门系列文章58 - 子过程相关的知识,希望对你有一定的参考价值。
1、描述
子过程是包含其他活动,网关,事件,等等,其本身形成的过程,是更大的处理的一部分的活性。一个子流程在父流程中完全定义(这就是为什么它通常被称为嵌入式子流程)。
子流程有两个主要用例:
- 子流程允许分层建模。许多建模工具允许折叠子流程,隐藏子流程的所有细节,从而形成业务流程的高级端到端概览。
- 子流程为事件创建一个新的范围。在子过程执行期间抛出的事件可以被子过程边界上的边界事件捕获,从而为该事件创建一个限于子过程的范围。
使用子流程确实施加了一些限制:
- 子进程只能有一个无启动事件,不允许有其他的启动事件类型。一个子过程必须至少有一个结束事件。请注意,BPMN 2.0规范允许在子进程中省略开始和结束事件,但是当前的Flowable实现不支持这一点。
- 序列流不能通过子流程边界。
2、图形表示法
一个子过程被视为典型的活动(一个圆角的矩形)。如果子流程被折叠,则只显示名称和加号,从而高度概括了流程:
如果子流程被扩展,则子流程的步骤显示在子流程边界内:
使用子流程的主要原因之一是为某个事件定义一个范围。以下过程模型显示了这一点:调查软件/调查硬件任务需要并行执行,但是这两个任务都需要在一定时间内完成,然后才能咨询第2级支持。在这里,计时器的范围(其中活动必须按时完成)受到子进程的限制。
3、XML表示
子流程由subProcess元素定义。作为子过程一部分的所有活动,网关,事件和子元素都需要包含在这个元素中。
<subProcess id="subProcess">
<startEvent id="subProcessStart" />
... other Sub-Process elements ...
<endEvent id="subProcessEnd" />
</subProcess>
上面文章来自盘古BPM研究院:http://vue.pangubpm.com/
文章翻译提交:https://github.com/qiudaoke/flowable-userguide
了解更多文章可以关注微信公众号:
以上是关于Flowable入门系列文章58 - 子过程的主要内容,如果未能解决你的问题,请参考以下文章
Flowable入门系列文章30 - Activity解读 06
Flowable入门系列文章27 - Activity解读 03