1.业务场景
在流程审批过程中,有时需要启动子流程,我们可以在流程任务创建时,完成时,或者流程结束时,可以启动子流程。而且我们可以在启动流程时,可以将表单数据传递到子流程。
表单数据支持两种方式传递:
- 启动一个子流程
这种情况一般时,单据实现数据拷贝。 - 启动多个流程
这种情况时子表对应子流程的主表启动流程,会根据子表的数据启动多个流程
2. 操作步骤
2.1 启动多个流程
比如一个采集信息的流程,子表有多条数据,每条数据启动一个流程。配置方法如下:
这里我们将子流程的主表进行映射,数据可以来自当前流程的主表,当前流程的子表。
我们看到现在有两条子表记录,点击启动后,我们可以看到启动的流程情况。
在启动子流程时,我们还可以设置子流程的条件。
上下文参数为:
参数名 | 参数说明 |
---|---|
vars | 流程变量 |
row | 当前子表的一行数据 |
data | 整个表单数据 |
data 数据结构如下
比如只有数量大于3的才能启动流程。
int amount=row.getInteger("amount");
return amount>=3;
2.2 启动一个子流程
映射规则:
- 主表对主表
- 子表对子表
- 主表对子表字段
我们也可以设置条件脚本,脚本上下文为:
参数名 | 参数说明 |
---|---|
vars | 流程变量 |
data | 整个表单数据 |
文档更新时间: 2022-09-08 11:18 作者:zyg