DMN / Camunda Modeller:如何定义并行多实例结果

问题描述 投票:1回答:1

我想在流程中包括决策表。

由于输入是元素列表,因此我想为每个元素并行调用它。

当我查看输出时,它仅包含一个条目。因此,似乎每个执行都将覆盖前一个执行。例如:[{pricePerProcessInstance=150.0, pricePerTask=0.0}]

我怀疑我在定义中做错了。

这里是定义:

dmn definition

bpmn camunda camunda-modeler dmn
1个回答
0
投票

我相信执行侦听器(1)应该可以解决您的问题。

您可以如here所示配置最终执行侦听器>

[请看一下上面的侦听器部分中定义的类的示例实现。

public class MyService implements JavaDelegate {

  @Override
  public void execute(DelegateExecution delegateExecution) {
    List<String> resultList = (List<String>) delegateExecution.getVariable("resultList");

    if (resultList == null) {
      resultList = new ArrayList<>();
    }

    resultList.add((String) delegateExecution.getVariable("processPrices"));

    delegateExecution.setVariable("resultList", resultList);

  }

}

在每次执行决策表时,结果变量{{processPrices}}将被添加到ArrayList {{resultList}}。

((1)https://docs.camunda.org/manual/latest/user-guide/process-engine/delegation-code/#execution-listener

© www.soinside.com 2019 - 2024. All rights reserved.