#camunda #camunda-modeler
Вопрос:
У меня есть поток Camunda с действием вызова (последовательным), действие вызова вызывает несколько подпотоков на основе списка ключей процесса (идентификаторов) в определенном порядке.
Например, я получаю список [«поток-1», «поток-2»], затем выполняются flow-1.bpmn и flow-2.bpmn.
Но также в области есть данные, относящиеся к потоку, добавленные в область в разделе «Конфигурация партии чтения». Например [{«имя», «поток-1», «идентификатор» : «некоторые данные»}, {имя: «поток-2», «идентификатор» : «некоторые другие данные»}].
Я хотел бы, чтобы действие вызова определяло, что для потока-1 мне нужно отправить объект, связанный с потоком-1. Я не хочу отправлять всю коллекцию, а только конкретные данные потока.
Как я могу этого достичь?
Ответ №1:
Некоторые идеи:
a) используйте переменную элемента из настроек активности вызова в качестве ключа для извлечения правильного элемента данных в сопоставлении данных
б) окружите действие вызова встроенным подпроцессом с несколькими экземплярами. В этой области у вас будет переменная элемента (ProcessId), которую затем можно использовать для выполнения сопоставления переменных делегата (https://docs.camunda.org/manual/7.16/reference/bpmn20/subprocesses/call-activity/#delegation-of-variable-mapping)
c) передайте идентификатор процесса в качестве данных и извлеките конфигурацию для конкретного процесса только внутри его реализации подпроцесса
Комментарии:
1. спасибо за ответ! Я посмотрю на это и обновлю эту проблему, когда она у меня появится.