工作流Activiti5流程变量 任务变量 setVariables 和 setVariablesLocal区别
来源:互联网 发布:it便利店 编辑:程序博客网 时间:2024/05/09 06:38
因为网上的资料比较少。结合源码把相关API写下来。
设置流程级别变量:
runtimeService.startProcessInstanceById(
template.getTemplateId(), variables);
runtimeService.setVariables(executionId, variables);
taskService.complete(String.valueOf(taskId), variables); //流程变量 这个开始我以为是设置任务变量 看了一下源码才发现是流程级别的
设置任务级别变量:
taskService.setVariable(String.valueOf(taskId), "va", "2"); //流程变量
taskService.setVariableLocal(String.valueOf(taskId), "va", "2");//任务变量
变量表:
select * from act_hi_varinst
setVariables 和 setVariablesLocal区别?
可以简单认为,variable都是针对processInstance的。
local可能是针对某个execution分支的,也可能针对task的。
这里就要谈一下变量的作用域,变量肯定是依附于某个流程里的概念而存在的,所以才能在流程流转过程中使用这些变量。
默认的变量都是流程实例级别的,也就是说,分支execution和task都可以读取到对应processInstance里的变量。
与之相对的就是local变量,简单来说就不是processInstance范围的变量,如何区分global和local呢?差别就是local的作用范围小,如果是分支execution的local变量,就只能在execution分支生存期使用。
比如并发分支结束了,变量也就没了
比如task结束了,变量也就没了。
local变量的好处是,可以在每个分支使用同名的变量,互相之间不受影响,会签multi-instance就是通过local局部变量实现的。
- 工作流Activiti5流程变量 任务变量 setVariables 和 setVariablesLocal区别
- 工作流Activiti5流程变量 任务变量 setVariables 和 setVariablesLocal区别
- JBPM中流程变量和任务变量的区别
- 07-jbpm工作流之根据流程变量分配任务Task
- JBPM中流程变量与任务变量的区别
- JBPM4工作流之流程变量的应用和动态指定工作流中某一个任务的办理者以及工作流的决策理解和实现
- 工作流引擎Activiti学习---使用流程变量进行个人任务分配
- 工作流引擎Activiti学习---使用流程变量进行个人任务分配
- 工作流框架--activiti(三)--流程变量
- Activiti第二篇【管理流程定义、执行任务和流程实例、流程变量】
- JBPM具体应用之流程变量与任务变量
- 工作流学习——Activiti流程变量五步曲
- Activiti工作流(三)——流程变量
- 工作流管理系统开发之十五 流程变量与表达式
- 工作流学习——Activiti流程变量五步曲
- 工作流学习——Activiti流程变量五步曲
- 工作流学习——Activiti流程变量五步曲
- 5.工作流学习——Activiti流程变量五步曲
- 智慧航空大数据可视化决策平台
- Codility- MaxCounters
- esayui 编辑单元格 双击编辑一个单元格,不是一行,单击其他后,关闭编辑状态,单击双击编辑可以任意调整
- HDOJ1048盐水的故事
- E
- 工作流Activiti5流程变量 任务变量 setVariables 和 setVariablesLocal区别
- 静态代码块、非静待代码块、静态变量的执行次序
- DHCP拒绝服务攻击工具DHCPig
- SpringMVC的文件上传
- 使用ls命令列举当前工作目录下所有目录的可用命令
- Android6.0及后续版本拿不到Top Activity但能拿到前台进程的方法
- Spring的事物类型
- 项目管理——需求收集与管理
- maven项目下JSTL表达式联系出现java.lang.ClassNotFoundException: org.apache.jsp.WEB_002dINF.jsp.index_jsp