如何调用工作流中的“查看流程图”操作
问题描述:
如何在单据、单据列表、动态表单中调用工作流的“查看流程图”操作
解决方案:
一、参数配置
查看流程图操作使用列表页面选中行的ID为单据ID,如果列表表格行的ID不是单据ID则需要在“参数设置”中设置表单标识和单据ID字段。在此操作中会以表格行为ID在“表单标识”中查“单据ID字段”的值作为单据ID。
例如:
有一个标识为wzk_bill_test的表单,其中有两个字段reason和amount:
列表页面中有一个“测试流程图”的按钮绑定了”viewflowchart”操作:
对于这个列表表格来说,它的id并不是单据id,“原因”列中的值才是单据id,那么需要在流程图操作的参数设置中作如下配置:
此配置表示在“查看工作流”操作中会在wzk_bill_test中查ID为选中行ID的reason字段的值作为单据的ID。
二、接口
提供查看流程的代码调用接口:
public class WorkflowServiceHelper
/**
* 查看流程图
* @param pageId 当前view的pageId
* @param billId 单据ID
*/
public static void viewFlowchart(String pageId, Object billId);
调用方式如下:
WorkflowServiceHelper.viewFlowchart(getView().getPageId(), 347562958684947456L);
备注:列表和单据页面可直接配置查看流程图操作,动态表单可以调用提供的接口实现。
三、应用场景举例
1、单据
(1)、添加按钮
(2)、配置查看流程图操作
参数设置根据需要设置
(3)、在列表界面添加一个按钮,绑定”查看”操作
(4)、预览列表,选中一条记录后点击“查看”
(5)、在打开的查看界面中点击“查看流程图”
2、单据列表
(1)、同样,在列表页面工具栏添加一个按钮,配置“查看流程图”的操作,
操作中的参数设置也是按需设置。
(2)、选中一行后点击“测试流程图”
3、动态表单
(1)、新建一个动态表单
(2)、添加一个按钮
(3)、配置表单插件,并给按钮增加click监听
@Override
public void registerListener(EventObject e) {
addClickListeners("按钮ID");
}
@Override
public void click(EventObject evt) {
Control control = (Control) evt.getSource();
switch(control.getKey()){
case "按钮ID":
WorkflowServiceHelper.viewFlowchart(getView().getPageId(), “单据ID”);
break;
}
}
流程服务社区文档入口:https://club.kdcloud.com/article/183308
如何调用工作流中的“查看流程图”操作
本文2024-09-23 00:57:54发表“云苍穹知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-cangqiong-142885.html