是否可以在camunda定义xml中将变量设置为用户任务?
我想设置一个变量(可删除),从一个任务变为另一个任务.
任务1的实例:deletable = true
任务2的实例:deletable = true
任务3的实例:deletable = false
任务4的实例:deletable = false
这是实际的任务配置:
<bpmn2:userTask id="createtrunkdoc" camunda:candidateUsers="${candidateUser}" camunda:candidateGroups="provisioning" camunda:assignee="${candidateUser}" name="Create New
Trunk Request">
<bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>
<bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>
</bpmn2:userTask>
Run Code Online (Sandbox Code Playgroud)
测试用例(camunda:7.1.0-Final)
@RunWith(MockitoJUnitRunner.class)
public class testTest {
@Rule
public ProcessEngineRule processEngineRule = new ProcessEngineRule();
@Test
@Deployment(resources = { "test.bpmn20.xml" })
public void testHappyPath() {
ProcessInstance processInstance = runtimeService().startProcessInstanceByKey("nipa-createsipinterconnect");
assertThat(processInstance).isStarted().isNotEnded().task().hasDefinitionKey("reviewnewtrunk");
Task task = taskService().createTaskQuery().processInstanceId(processInstance.getId()).singleResult();
assertEquals(true, taskService().getVariable(task.getId(), "deletable"));
}
}
Run Code Online (Sandbox Code Playgroud)
完整的XML:
<?xml version="1.0" encoding="UTF-8"?>
<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_1RW-0F22EeOq-_ehbw1S0Q" exporter="camunda modeler" exporterVersion="2.5.0" …Run Code Online (Sandbox Code Playgroud)