在脚本中使用引擎提供的api
引言
- 文档目的 在Camunda中使用脚本可以方便的使用引擎提供的一些服务,例如获取变量、设置变量以及获取流程实例id等
功能或技巧概述
- 功能或技巧简介
- 适用场景
- 在脚本中利用camunda提供的api完成一些操作
具体实现
获取变量
1
var variableValue = execution.getVariable("variableName");
设置更新变量
1
execution.setVariable("variableName", variableValue);
获取当前的流程实例id
1
var processInstanceId = execution.getProcessInstanceId();
启动流程
1
var subProcessInstanceId = execution.getProcessEngineServices().getRuntimeService().startProcessInstanceByKey("processKey").getId();
上面的代码将发布名为”messageName”的消息,以触发相应的消息事件。
发布消息
1
execution.getProcessEngineServices().getRuntimeService().createMessageCorrelation("messageName").correlate();
示例中的execution是脚本中的内置变量,代表当前执行的流程实例。您可以使用其他Camunda提供的API来执行更多操作,如查询任务、查询历史记录、发送信号等。