插件环境变量

流程插件在调用 Groovy引擎的时候会将 BpmExecutionPluginSession 做为运行时数据,所以您可以在 插件中使用到 插件常量、流程变量、业务对象。

插件常量

  • submitActionDesc: 流程提交的动作名字(eg:点击同意按钮,则为“同意”)
  • submitActionName: 流程提交的动作 key (eg: 点击同意按钮,则为“agree”,其他按钮请查看流程配置中按钮的别名)
  • submitOpinion: 任务提交意见
  • bpmInstance: 流程实例 IBpmInstance
  • isTask: 是否为任务(实例类型的插件,在任务事件执行的时候、可以通过此变量判断)
  • bpmTask: 流程任务 IBpmTask

  • actionCmd: 当前线程的 ActionCmd ActionCMD(新手不建议直接使用该参数。wf版本 > 1.4.0)

  • eventType: 当前时机(可根据不同时机做不同的处理)

流程变量

插件 BpmExecutionPluginSession 注入了 Activiti variableScope
ACT流程变量操作类 VariableScope可以使用它操作原生 Activiti 流程生命周期中的变量
如获取流程变量:variableScope.getVariable("variableKey")

更多可用方法

Map<String, Object> getVariables();
Object getVariable(String variableName);
Set<String> getVariableNames();
void setVariable(String variableName, Object value);
void removeVariable(String variableName);
boolean hasVariable(String variableName);

业务对象

业务对象即 IBusinessData 存储了流程的业务数据(URL 表单不支持)。
一个流程实例支持配置多个业务对象,您可以通过业务对象的 key 作为变量名,在 groovy 脚本中使用到 BussinessData 对象 来获取业务数据
eg: Demo.getString("name")

适用范围

适用 于脚本插件、自由跳转插件、节点消息插件、人员脚本插件、催办、代理插件