流程变量
流程变量的作用域
设置流程定义的key为myEvection2
使用流程变量
定义好流程变量后,就可以在整个流程定义中使用这些流程变量了。例如可以在某些任务属性如
assignee上使用${assignee},或者在某些连线上使用${day<3}。
Activiti中可以使用UEL表达式来使用这些流程变量。UEL表达式可以直接获取一个变量的值,可以
计算一个Boolean结果的表达式,还可以直接使用某些对象的属性。例如对于之前创建的请假流
程,如果要实现3天以内部门经理审核,3天以上增加总经理审核,可以做如下调整:
1.出差天数大于等于3天连线条件,必须总经理审批
2.出差天数小于3天连线条件,直接部门经理就可以审批
设置Global流程变量
在流程定义中使用到了流程变量,就需要在后台JAVA代码中设置对应的流程变量。
实际上在流程执行的很多过程中都可以设计自流程变量。
设置一个3天的实例:
设置一个2天的实例:
查询整体的任务:
备注:taskAssignee(assingee)是单独查某个的任务
李四完成任务:
由于2天和3天的请假都是李四发起的,是list,改下代码,需要李四完成多个任务
查询整体的任务:
王经理完成任务:
结果报错,估计是num不能识别,修改下
改完后要重新走一遍了
王经理审批:
杨总经理审批:
审批完查询,所有流程结束:
以上测试通过!!!
参考:
学习笔记之-Activiti7工作流引擎,概述,环境搭建,类关系图,使用Activiti BPMN visualizer,流程变量,组任务 网关,Activiti整合Spring SpringBoot_努力敲代码买猪脚啃的博客-CSDN博客_activiti bpmn visualizer
设置Local流程变量
比较简单,不测试了