跳到主要内容

子流程

1.节点功能

当某个业务流程是通用流程,可以被重复使用,则可以配置为子流程,供其他流程调用,极大的减少了流程的重复配置。 子流程可作为单独的工作流看待,当子流程执行完后,数据将会回到主流程。 但子流程不能单独创建,需要在主流程中才能创建并使用。

2.场景示例

例如,在售后退货场景中,一个订单发起退货后需要进行派单取货,再进行退货入库,当商品完成入库后才执行财务退款。那么我们可以将退货派单到入库这部分业务拆分到子流程去处理。 当子流程完成入库操作以后,再回到主流程里,进行财务退款审批,完成最终的退货退款流程。

流程设计:

  • 主流程:发起退货(新增退货单)→ 退货审批(审批通过时)→ 子流程入库 →(已入库)→ 财务退款

image.png

  • 子流程:发起派单(填写取件人)→ 取件人取件(录入取件情况)→ 仓库入库(录入是否入库)

image.png

3.子流程节点设置

3.1 选择数据对象

在主流程里添加一个子流程节点,选择数据对象,数据对象指的是选择将哪个节点的数据传给子流程,选择的节点对象将作为子流程的数据源。 注意:数据源有可能是单条数据,也可能是多条数据,这可以决定子流程的执行方式。 image.png

3.2 配置子流程

如果没有可选择的子流程,我们直接点击保存,保存后,可以直接从主流程中进入到子流程配置页面 image.png

如图所示,点击子流程节点的箭头处 image.png

进入为命名子流程页面,配置方式和流程配置一样,配置好后点击发布即可 image.png

回到主流程配置子流程节点,即可选择刚刚发布的子流程 image.png

3.3 参数传递

你还可以设置参数,向子流程的流程参数传递初始值,供子流程执行时使用。 image.png A:可以直接在子流程中设置参数,流程参数参考 更新流程参数 B:将参数添加为子流程参数字段

设置后好,我们就可以在子流程配置中将这些字段作为条件参数等。

3.4 选择执行方式

如果是多条数据(数据对象选择的是获取批量数据节点),那么子流程有两种执行顺序的设定:

  • 并行:如果这些记录是各自处理各自的内容,则并行即可。即便某条子流程运行中止,也不影响其他子流程的执行。
  • 逐条执行:每条子流程需要等前一条子流程通过后再开始触发;如果某条子流程运行终止,则后续的子流程都不再执行。

3.5 子流程执行完毕后,再开始执行下一个节点

  • 如果勾选, 那么会等待子流程执行完毕后,才会执行后面的节点;另外,勾选后,当子流程数据源为单条对象,之后节点可使用子流程中的参数。
  • 如果不勾选, 那么子流程和后续的节点同时进行,子流程的执行结果对当前流程没有任何影响了。