流程结转、数据传递、子流程
功能及平台机制说明
通过本流程触发另一个流程的功能,可以实现父流程和子流程之间的数据流转
具体操作
各子流程使用场景设置说明
主流程和子流程使用相同的业务数据
主流程和子流程使用同一个业务数据:如主流程采购申请,其中财务审批需要经过若干个环节,抽取成一个财务审批子流程;
- 首先创建两个使用同一业务数据的采购申请业务流程;主流程表单及流程如图
子流程表单及流程如下如:
- 主流程属性设置
- 在流程定义中添加子流程环节
- 选中子流程环节,在右侧子流程属性
- 点击⚙打开流程列表并选择对应流程添加为子流程;
- 子流程启动方式属性设置为自动,当流程进入到子流程环节会自动启动子流程。
- 子流程属性设置
- 打开子流程流程定义页面,设置业务主键属性;
- 点击⚙打开业务主键设置对话框,选中“流程上下文中的业务主键”确定
- 如不允许子流程功能菜单在门户显示,则打开【高级设置】,勾选不在菜单上显示
- 选中流程首环节,并在首环节的处理人属性设置执行者:“流程上下文中的执行者”
- 点击⚙打开组织选择页面,在上下文环境中选中“流程上下文中的执行者”确定。
主流程和子流程使用不同的业务数据(1对n)
主流程是一个主从表,到了某个子流程环节,需要针对每个从表单独启动一个子流程进行审批;
- 首先创建两个使用同一业务数据的采购申请业务流程;主流程表单及流程如图
- 主流程属性设置
- 在流程定义中添加子流程环节
- 选中子流程环节,在右侧子流程属性
- 点击⚙打开流程列表并选择对应流程添加为子流程;
- 子流程启动方式属性设置为自动,当流程进入到子流程环节会自动启动子流程。
- 子流程属性设置
- 打开子流程流程定义页面,设置业务主键属性;
- 点击⚙打开业务主键设置对话框,选中“流程上下文中的业务主键”确定
- 如不允许子流程功能菜单在门户显示,则打开【高级设置】,勾选不在菜单上显示
- 选中流程首环节,并在首环节的处理人属性设置执行者:“流程上下文中的执行者”
- 点击⚙打开组织选择页面,在上下文环境中选中“流程上下文中的执行者”确定。
主流程和子流程使用不同的业务数据(1对1)
主流程是关联一个业务数据,子流程关联另一个业务数据,两个业务数据是一对一的关系;
- 首先创建两个使用不同业务数据的业务流程;子流程的业务数据添加存储主数据的业务主键字段;主流程表单及流程如图
子流程表单及流程图如下:
- 主流程属性设置
- 在流程定义中添加子流程环节
- 选中子流程环节,在右侧子流程属性
- 点击⚙打开流程列表并选择对应流程添加为子流程;
- 子流程启动方式属性设置为自动,当流程进入到子流程环节会自动启动子流程。
- 子流程属性设置
- 打开子流程流程定义页面,设置业务主键属性;
- 点击⚙打开业务主键设置对话框,选中“根据流程上下文生成业务主键”并设置两个参数: 主键字段为:主数据的主键字段;存储流程上下文业务主键的字段为:主数据上用来存储流程上下文业务主键的字段;
- 如不允许子流程功能菜单在门户显示,则打开【高级设置】,勾选不在菜单上显示
- 选中流程首环节,并在首环节的处理人属性设置执行者:“流程上下文中的执行者”
- 点击⚙打开组织选择页面,在上下文环境中选中“流程上下文中的执行者”确定。
- 打开子流程的页面,将主数据上用来存储流程上下文业务主键的字段的默认值为:流程组件的"获取流程上下文中的业务主键";
子流程启动后,自动获取主流程的业务主键
流程结转(n对1)
若干个主流程实例,在某个子流程环节需要合并启动一个子流程,子流程业务数据是主从表,其中从表是主流程关联的业务数据。
- 首先创建两个业务流程;主流程表单及流程如图
子流程表单及流程如图
- 主流程属性设置
- 首先在主流程结束之前添加子流程环节
- 选中子流程环节,在右侧子流程属性
- 点击⚙打开流程列表并选择对应流程添加为子流程;
- 子流程启动方式属性设置为手工,将不自动启动子流程,由用户手工启动子流程。
- 子流程属性设置
- 打开子流程流程定义页面,切换到【高级设置】设置,点击流程事件属性设置流程启动后事件;
- 在流程启动后事件,处理事件中调用"绑定子流程",
- 参数为"主流程业务主键",例子中为:[从表]结转子流程从表.结转主流程ID