审批表设置
根据业务单信息,在流程审批环节或自定义按钮打开审批表,进行打印、导出操作。
1. 介绍
往下学习之前,比须熟悉【案例-流程应用启动流程】的配置过程,约30分钟。
审批表,指将表单数据,以及任务审批信息、流程变量相关信息,通过Excel设计器配置展示。
在流程审批环节或查看已办任务时,提供导出审批表pdf文件、Excel文件,以及打印审批表功能。
审批表设置有两种方式:
- 通过流程应用关联表单时,选入审批表关联,则直接在流程审批环节或查看已办任务中,可以直接查看审批表(如下图),无需在开发平台配置。
- 在表单窗体中,通过自定义按钮查看审批表的信息。
由于审批表需要在流程应用中才可以设置,因此以【案例-流程应用启动流程】为例,在该案例的基础上,进行审批表设置。
下面,在专题-流程应用启动流程的基础上,主要针对新功能部分进行配置讲解。
2. 审批表设计
(1)审批表配置入口:流程应用 → 流程表单管理 → 审批表
(2)点击【审批表】列,打开【流程表单审批表管理】窗体,在该窗体中可新增、删除、修改流程表单审批表信息(可对流程表单设置多个审批表,这样在流程应用 → 关联表单,设置审批表时,即可选择不同的审批表)
(3)设计器配置
第一步:画好审批表具体界面样式,注意:这里设计的审批表宽度大约在780px左右,太宽会分页显示。
第二步:在单元格中设置实体字段,并设为表达式。
由于一个请假单中,会有多条审核信息,因此需要将审核信息创建组(注意:创建组的数据必须为同一实体 ) 。
在单元格中,同样支持format和concatstr函数拼接字符串。
例如:{{Format("{0}审批意见:",#[AuditOpinion].[activityName])}}:解析出来的格式为:【xxx审批意见】
第三步:保存设计模板
3. 方式一:流程应用关联表单设置审批表
在【案例-流程应用启动流程】的基础上,直接更改流程应用设置。
通过流程应用关联表单时,选入审批表关联,则直接在流程审批环节或查看已办任务中,可以直接查看审批表,无需在开发平台配置。
4. 方式二:自定义按钮设置审批表
4.1 开发平台的配置
在【专题-流程应用启动流程】案例的基础上,页面新增构件方法、界面添加【审批表】按钮配置逻辑。
新增构件方法:openExamineTable(打开审批表)
(1)方法输入
编码 | 名称 | 类型 | 默认值 | 描述 |
---|---|---|---|---|
bizId | 业务ID | 文本 | 根据业务ID,获取对应的流程实例关联信息 |
(2)方法输出
编码 | 名称 | 类型 | 默认值 | 描述 |
---|---|---|---|---|
BizProcessInstRela | 业务与流程实例关联信息 | 实体 | 主要获取流程实例ID数据 | |
Task | 流程任务 | 实体 | 主要获取任务ID,以及任务完成的时间进行排序 | |
v_workflow_biz_window_excel | 流程待选表单审批表 | 实体 | 主要获取审批表ID |
(3)规则
① 执行方法API_GetBizProcessInstanceRela(API获取业务ID与流程实例关联信息),传入业务ID,获取流程实例ID。
方法的具体使用:参考流程常用方法-方法信息。
由于该方法在vbase_workflow (VBase_流程管理_API)
构件中,因此需要在【专题-流程应用启动流程】案例的基础上,添加引用vbase_workflow (VBase_流程管理_API)
构件。
② 执行方法API_GetProcessTask(API获取流程任务信息),传入流程实例ID,获取流程任务ID。方法的具体使用:参考流程常用方法-方法信息。
注意:由于一个流程实例对应多个任务信息,因此根据启动时间降序,保证流程任务返回实体第一条数据是最新的任务。
③ 执行方法_API_WorkFlowChainQueryBizWindowExcel(查询流程表单审批表),方法的具体使用:参考流程常用方法-方法信息。
由于该方法在vbase_prd_workflow_api (vbase_产品化流程API)
构件中,因此需要在【专题-流程应用启动流程】案例的基础上,再添加引用vbase_prd_workflow_api (vbase_产品化流程API)
构件。
入参含义:
bizComponentCode(表单构件编码)
:表单窗体所在构件对应的构件编码。
bizWindowCode(表单编码)
:表单窗体的编码。
isFilterStrategy(是否过滤启动策略)
:主要根据流程表单管理时设置的审批表打开策略是否启动,False则为不启动打开策略,True则为根据打开策略条件判断是否打开审批表,具体使用参考流程应用-审批表。
taskId(任务ID)
:对应流程任务ID。
1. 窗体添加【审批表】按钮
2. 【审批表】按钮事件
(1)方法变量
编码 | 名称 | 类型 | 默认值 | 描述 |
---|---|---|---|---|
Task | 流程任务 | 实体 | 主要获取任务ID,以及任务完成的时间进行排序 | |
v_workflow_biz_window_excel | 流程待选表单审批表 | 实体 | 主要获取审批表ID |
(2)规则
① 执行方法_openExamineTable(打开审批表),执行自定义构件方法,传入业务ID,获取流程任务和流程待选表单审批表信息。
② 执行方法_OpenExcelPreview(打开Excel模板预览),传入审批表模版ID和任务ID,方法的具体使用:参考流程常用方法-方法信息。
由于该方法在vbase_prd_workflow_excel_relative (vbase_产品化流程审批表关联)
构件中,因此需要在【专题-流程应用启动流程】案例的基础上,再添加引用vbase_prd_workflow_excel_relative (vbase_产品化流程审批表关联)
构件。
4.2 执行平台的配置
在【案例-流程应用启动流程】中,设置了在审批环节打开窗体时,窗体全局不使能,窗体页面按钮也不显示。
因此,在【案例-流程应用启动流程】的基础上,需要设置检查策略,设置表单中【审批表】按钮显示使能,无需在设置关联表单时选入审批表。