如何用业务流程的方式实现动态流程的效果
3 天前
129
0
应用场景: 在单据流程中,一部分审批人固定,一部分审批人不固定的情况。例如:发起人发起流程后,中间审批人的人员以及审批人个数都不固定,但中间审批人审批完成之后,后续的流程都是给上级领导审批。 实现方式: 一、模板设计 1、数据项设计: 主键(单据主键,后续流转需要用到,根据实际需求设计) 选择审批人(填写规范调用未禁用用户列表,勾选可多选,可以一次选择多个审批人) 当前序号(辅助字段,如不需要可隐藏,定义数据类型为整数) 当前执行人(辅助字段,如不需要可隐藏) 总行数(辅助字段,总执行人数,如不需要可隐藏,定义数据类型为整数) 执行人明细(辅助明细表,运行时可隐藏,包含两个字段,分别是序号以及执行人,序号定义数据类型为整数) 2、数据接口设计: 数据接口1:统计行数,数据项包含明细表中的账号,调用计数函数对账号进行计数,设置一个参数为单据主键,使用单据主键进行过滤 数据接口2:当前执行人,数据项包含明细表中的账号以及序号,过滤参数设置两个,分别是单据主键以及明细的序号 3、填表公式设计: 填表公式1:在表单激活下面设置填表公式,选择控件属性设置,设置表格2的可视化为常量.否 填表公式2:设置值变化事件下面的填表公式,值变化数据项为明细的账号,添加保存公式 填表公式3:设置值变化事件下面的填表公式,值变化数据项为选择审批人,调用文本列表函数,对明细进行插入操作,勾选插入时删除所有行 4、业务公式设计:在保存表单后事件中,设置新建时和更新时下面的公式,对本表单进行更新操作,匹配条件为单据主键,调用数据接口1,对总行数进行赋值接口中的账号字段,绑定参数为单据主键 二、流程设计 1、流程图如下: 2、流程内公式设计: a、在流程开始节点,设置业务公式,目标模板为单据模板,调取数据接口2,绑定参数为单据主键,序号参数写1即可 b、在循环节点,在任务完成时节点设置公式,目标模板为单据模板, 情况1:对序号进行赋值,赋值为本表单.当前序号+1;(这一步为判断使用,对序号赋值,当前公式运行结果需要通过接口才能取出,所以下一个公式运行时,不会获取当前公式运行结果) 情况2:调取数据接口2,绑定参数为单据主键,需要参数为本表单.当前序号+1,对当前执行人以及当前序号赋值为接口中的账号以及序号 3、流程变量设计: 流程变量1:在开始节点设计一个流程变量,为总执行人,赋值为单据模板的总行数字段 流程变量2:在循环节点设计一个流程变量,为已执行人,赋值为单据模板的当前序号字段 4、判断条件设计 判断条件1:流程变量.总执行人>=流程变量.已执行人,则继续进行循环任务 判断条件2:流程变量.总执行人<流程变量.已执行人,则往后进行审批任务 5、其他设计: 单据其他字段、审批人、任务类型、退回节点等等按需设计即可。 |
+1
0
0条回帖