如何更新流程实例变量?
How to update process instance variables?
我正在使用 Camunda Java Api,我想更改 运行 流程的流程实例变量,这可能吗?
RuntimeService 有一个方法“setVariable”,可以用 processInstanceId、variableName 和 value 调用。
您可以使用“runtimeService.createProcessInstanceQuery()....”找到流程实例,例如使用流程业务键。
我终于找到了如何为所有 运行 流程实例更新变量:
List<ProcessInstance> processInstances =
runtimeService.createProcessInstanceQuery()
.processDefinitionKey(processKey)
.active()
.list();
processInstances.forEach(processInstance -> {
List<Execution> executions = runtimeService.createExecutionQuery()
.processInstanceId(processInstance.getId())
.list();
executions.forEach(execution -> {
runtimeService.setVariable(execution.getId(), variableName, variableValue);
});
});
我正在使用 Camunda Java Api,我想更改 运行 流程的流程实例变量,这可能吗?
RuntimeService 有一个方法“setVariable”,可以用 processInstanceId、variableName 和 value 调用。
您可以使用“runtimeService.createProcessInstanceQuery()....”找到流程实例,例如使用流程业务键。
我终于找到了如何为所有 运行 流程实例更新变量:
List<ProcessInstance> processInstances =
runtimeService.createProcessInstanceQuery()
.processDefinitionKey(processKey)
.active()
.list();
processInstances.forEach(processInstance -> {
List<Execution> executions = runtimeService.createExecutionQuery()
.processInstanceId(processInstance.getId())
.list();
executions.forEach(execution -> {
runtimeService.setVariable(execution.getId(), variableName, variableValue);
});
});