Workflow. Запуск потока операций при работе с классами сообщений

В этой заметке я расскажу про возможность запуска потока операций для определенных классов сообщений. Сообщения, про которые пойдет речь, как раз те самые, что возникают для индикации ошибки, предупреждения, либо просто для информации.

Прелюдия

Допускаем, что на вашем предприятии, в бизнес-процессе, который автоматизируется посредством какого-нибудь из компонентов продукта SAP, принимают активное участие два отдела. Ответственные специалисты из одного отдела ведут основные данные без которых, не менее ответственные специалисты из другого отдела, не могут завершить свои важные операции в системе SAP.

На этой почве часто могут устраиваться баталии по электронной почте, а также организовываться n-ое количество встреч, по результатам которых, скорее всего, не будет сделано никаких выводов, и т.д. и т.п. Ну да не будем пессимистами.

Вариация на заданную тему, или что можно сделать?

Допускаем ситуацию, при которой, после проведения одной из встреч по взаимодействию двух отделов, были приняты и зафиксированы следующие решения:

  • Согласно разработанному регламенту, перед выполнением какой-то важной операции в системе SAP специалисты одного отдела, разрабатывают и в последствии запускают программу, в которой выполняется проверка на наличие в системе данных, которые должны быть подготовлены специалистами другого отдела;
  • Если данные отсутствуют в системе на момент выполнения этой программы, необходимо инициировать вызов сообщения, получив которое, пользователь может решить, нужно ли информировать специалистов смежного отдела(ов), либо нет.

В стандартном решении системы SAP есть возможность запустить поток операций для определенного сообщения. Запускать или не запускать поток операций - решает пользователь. Запуск потока операций может быть произведен посредством нажатия соответствующей кнопки в просмотре детальной информации по сформированному сообщению.

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

Создание сообщения

См. Maintaining Messages

Посредством транзакции SE91 создайте сообщение, для которого в последствии требуется организовать возможность запуска потока операций. В моем случае это будет сообщение вида

Рисунок 1.

Создание модели потока операций для типа сообщения

Вам не нужно выполнять большого количества манипуляций для создания самого потока и всех прочих сопутствующих этому процессу шагов. У вендора есть инструмент, позволяющий создать модель потока операций для интересующего вас сообщения. Найти его можно в SAP меню по следующему пути

SAP Menu: Tools -> Business Workflow -> Development ->Definition tools -> Execute the Wizard "Create Workflow-Message Linkage"

Чтобы не выполнять лишних телодвижений, выполните транзакцию SWUY

Рисунок 2.

Выберите нужное вам сообщение и нажмите на кнопку 

Рисунок 3.

Система подготовит болванку потока операций

Рисунок 4.

В результате выполнения этой процедуры будет создана соответствующая пара (класс сообщения и номер, идентификатор модели потока операций) в таблице T100W

Рисунок 5.

Корректировка потока операций

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

Создание ABAP программы для вызова сообщения

Для вызова нужного мне сообщения я создам простую ABAP программу. Напоминаю, что программу можно создать в транзакции SE38

Рисунок 6.

Тестирование

Сценарий тестирования довольно прост:

  1. Запустите программу
  2. Вызовите соответствующее сообщение
  3. Выполните запуск потока операций
  4. Проверьте, что нотификация пользователя выполнена, посредством запуска транзакции SBWP

На следующем видеофрагменте представлена соответствующая последовательность действий

Отдельно акцентирую ваше внимание на том, что в детальной информации по сообщению стала доступной кнопка  (Workflow). Решение запускать или не запускать поток операций, повторюсь, принимает сам пользователь.

Рисунок 7.

Для деактивации возможности формирования потока операций из сообщения, выполните удаление соответствующей записи в таблице T100W

P.S. Все сходства с реальными ситуациями по взаимодействию разных отделов, возникающими у вас в проектной деятельности, совершенно случайны.