1.多工具插件中包含多个BeanShell插件时,后面的插件获取前面插件设置的工作流变量值

当多工具插件内包含多个插件,并已设置 “在当前线程中按顺序运行工具”时。多工具内后面的插件获取前面插件中设置的工作流变量值,需使用 getActivityVariableList 方法。

HASH变量会在多工具初始化时统一解析,无法获取到多工具插件中改动后的值

import org.joget.workflow.model.service.WorkflowManager;
import org.joget.workflow.model.WorkflowVariable;

Collection vars = wm.getActivityVariableList(workflowAssignment.getActivityId());
for (WorkflowVariable v: vars) {
    System.out.println("\r\nvar " + v.getId() + "------[" + v.getVal() + "]");
}

2.多工具插件中获取多工具插件前已设置的工作流变量

如果获取在多工具插件前已设置好的工作流变量值,可直接使用hash变量或 getProcessVariable 方法获取。

import org.joget.workflow.model.service.WorkflowManager;
//1.通过hash变量获取
String status = "#variable.status#";
System.out.println("status------["+status+"]");


//2.通过getProcessVariable获取
WorkflowManager wm = (WorkflowManager) pluginManager.getBean("workflowManager");
status=wm.getProcessVariable(workflowAssignment.getProcessId(), "status");
System.out.println("\r\ngetProcessVariable------["+status+"]");
  • No labels