在设计流程的时候,如果涉及到子流程,就会有主子流程间传递参数的过程。
例如,将主流程的执行人,传递给子流程,子流程根据主流程的执行人不同,会有不同的处理方式;
又例如,采购流程中,卖方备货处理时,发现缺货时,需要启动缺货处理子流程。那么在缺货处理子流程发起时,需要将缺货产品的id号发送给子流程,子流程的业务模块,根据传递来的产品id号,处理缺货的过程。
。。。。
在eworkflow中是这样处理主子流程间的参数传递过程的。
在流程设计器中,主流程链接子流程中,子流程的参数设置中,设置子流程的输入输出参数。
设置输入输出参数的界面
按照数据类型设置,设置参数的表达式。
输入参数:当子流程实例被创建时,输入参数的值也被生成。
输出参数:当子流程实例运行结束时,输出参数的值被生成。
参数的值:流程按流程的表达式分析器分析生成结果值,保存到流程实例参数表中。
流程实例参数表结构:
子流程的业务模块按要求读取输入参数。
输出参数则在子流程结束时候,生成和主流程关联的参数值,生成过程和输入参数一样。主流程的业务模块或者前置后置函数中均可自定义代码获得输出参数的值。
相关链接:
web工作流管理系统开发之二 工作流引擎
web工作流管理系统开发之三 可视化流程设计器
web工作流管理系统开发之四 集成工作流与自定义表单
web工作流管理系统开发之五 开源osworkflow之用户系统改造
web工作流管理系统开发之八 开源osworkflow之任务管理
web工作流管理系统开发之十二 同一张表单在流程多节点中流转的权限控件