Загрузить изображение для проекта: 'Citeck Community'
  1. Citeck Community
  2. ECOSCOM-5772

Process: Error on handling catch event transaction

    XMLWordДля печати

Детали задачи

    • Icon: Ошибка Ошибка
    • Решение: Готово
    • Icon: High High
    • Community 2025.1
    • 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(); 

      Вложенные файлы

        Активность

          Люди

            roman.makarskiy@citeck.ru Roman Makarskiy
            denis.rulev@citeck.ru Denis Rulev
            Голоса:
            0 Голосовать за эту задачу
            Наблюдатели:
            1 Начать наблюдение за этой задачей

            Даты

              Создано:
              Обновленo:
              Дата решения:

              Учет времени

                Оценка:
                Первоначальная оценка - 1 час
                1h
                Осталось:
                Оставшееся время - 0 минуты
                0m
                Затрачено:
                Затраченное время - 1 час
                1h