Детали задачи
-
Ошибка
-
Решение: Готово
-
High
-
Community 2025.1
-
Не заполнено
-
Не заполнено
-
Major
-
21.04-19.05
Описание
ecos-process
При обработке транзакции после Signal Intermediate Catch Event подтягивается неверный рекорд в дефолтную переменную document
Шаги воспроизведения:
1) Создать процесс с блоком Signal Intermediate Catch Event + блоком выставления статуса у текущего пакета после блока Catch
2) В блоке Signal Intermediate Catch Event указать фильтр из переменной процесса
В указанной переменной предварительно необходимо указывать любой другой record (по сути просто завязываемся на изменение стороннего рекорда для отловли эвента и продвижения по процессу)
3) Запустить процесс и дойти по нему до ожидание эвента из пункта 2
4) Изменить сторонний рекорд, который мы указывали в перменной для срабатывания триггера и продвижения процесса
ОР: Процесс идет дальше и выставляет указанный нами статус
ФР: Ошибка, процесс не идет дальше и застревает на текущем эвенте
Ошибка из примера со статусом 'scanning' после эвента:
Error: Unknown status: 'scanning'. Available statuses:
Судя по всему при триггере от строннего рекорда в дефолтную переменную document в процессе записывается именно он, вместо текущего документа по которому идет процесс.
Воспроизведение на ent стенде
Основной процесс - https://enterprise.ecos24.ru/v2/dashboard?activeTab=0&recordRef=emodel%2Fecos-contract%40a09d36e0-7f68-40c6-8de7-6734eb7208c3&ws=default
Сторонний рекорд для изменения - https://enterprise.ecos24.ru/v2/dashboard?activeTab=0&recordRef=emodel/edi-package@c358e1e8-f4de-4069-b048-dae82b1d3cd9&ws=default
Достаточно выполнить для воспроизведения и получения ошибки:
var testDoc = Citeck.Records.get("emodel/edi-package@c358e1e8-f4de-4069-b048-dae82b1d3cd9"); testDoc.att("packageStatus", "SIGNED"); testDoc.save();