Как сохранить переменную процесса в глобальной переменной в KIE Workbench? (jBPM 7) - PullRequest
1 голос
/ 06 июня 2019

У меня есть глобальная целочисленная переменная RANDOM_NUMBER

Я просто хочу сохранить ответ от службы, которая возвращает случайное число, в эту глобальную переменную. Как мне это сделать в верстаке?

Так в основном RANDOM_NUMBER = result

Бизнес-процесс:

* +1012 *Business process

Переменные:

Python Variables

Сервисные данные ввода / вывода:

Data I/O

1 Ответ

0 голосов
/ 07 июня 2019

Я думаю, но не могу сказать, что тщательно проверял, что глобальные переменные совместно используются процессами или экземплярами процесса, а данные процесса доступны для конкретного экземпляра процесса.

РЕДАКТИРОВАТЬ: Таким образом, вы можете сохранить результат рабочего элемента в переменной процесса, но вы должны использовать код для доступа к глобальным переменным.Смотрите раздел 8.6.1.Переменные документации.

Проблема заключается в том, что «результат» недоступен в качестве переменной в контексте сценария выхода.Это выходной параметр рабочего элемента.Итак, чтобы получить результат рабочего элемента в переменную, которую затем можно скопировать в глобальную переменную, создайте переменную процесса (в вашем случае result , хотя я не являюсь поклонником повторяющегося имени)и присвойте результат тому, что, похоже, вы сделали

Так что, вероятно, сценарий на выходе сценария рабочего места REST должен быть.

kcontext.getKieRuntime().setGlobal("RANDOM_NUMBER", Integer.parseInt(result.trim()));
...