在脚本中使用引擎提供的api

Uncategorized
712 words

在脚本中使用引擎提供的api

引言

  • 文档目的
    在Camunda中使用脚本可以方便的使用引擎提供的一些服务,例如获取变量、设置变量以及获取流程实例id等

功能或技巧概述

  • 功能或技巧简介
  • 适用场景
    • 在脚本中利用camunda提供的api完成一些操作

具体实现

  1. 获取变量

    1
    var variableValue = execution.getVariable("variableName");
  2. 设置更新变量

    1
    execution.setVariable("variableName", variableValue);
  3. 获取当前的流程实例id

    1
    var processInstanceId = execution.getProcessInstanceId();
  4. 启动流程

    1
    var subProcessInstanceId = execution.getProcessEngineServices().getRuntimeService().startProcessInstanceByKey("processKey").getId();

    上面的代码将发布名为”messageName”的消息,以触发相应的消息事件。

  5. 发布消息

    1
    execution.getProcessEngineServices().getRuntimeService().createMessageCorrelation("messageName").correlate();

示例中的execution是脚本中的内置变量,代表当前执行的流程实例。您可以使用其他Camunda提供的API来执行更多操作,如查询任务、查询历史记录、发送信号等。