Таймаут в Flexible Workflow

Возникла необходимость в Workflow по утверждению заказа (сценарий WS00800238) ограничить период, в течении которого пользователь может утвердить или отклонить его. В процессе поиска решения выяснилось, что функционал Flexible Workflow в облачном SAP шире. В S4HANA ON PREMISE 02.2023 удалось решить следующим образом:

Далее в Fiori добавили вызов действия timeout по истечению фиксированного времени — для теста поставили 3 минуты.

В результате, по истечению времени deadline вызывается метод CL_SWF_FLEX_IFS_RUN_APPL_BASE->IF_SWF_FLEX_IFS_RUN_APPL_STEP~ON_CREATION_CALLBACK

Остаются только технические детали

Убеждаемся, что iv_step_id это ‘ReleasePO‘, iv_deadline_action_id равен ‘timeout‘.

Определяем номер текущей задачи

Номер заказа можно получить из контейнера workflow

Помечаем текущую задачу как выполненная

Тогда в SWIA можно увидеть отклонение заказа

В результате письмо пропадает из входящих ответственного сотрудника и по истечению таймаута он больше не может утвердить её

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *