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

Потоки операций часто применяются для согласования документов/заявок, либо же просто для рассылки уведомлений определенным пользователям, или же группам пользователей. Если рассматривать применение workflow в разрезе области HCM, то стоит упомянуть Performance management, E-Recruiting, LSO. Использование workflow необходимо для автоматизации каких-либо функций в рамках бизнес-процессов компании. В один поток операций может быть включено определенное количество участников, которые, согласно их бизнес-роли, будут выполнять какое-нибудь действие (согласовывать заявку, вносить изменения et cetera)

Для каждого потока операций должно быть определено инициирующее событие. Например, сформированная заявка на подбор, изменение основных данных сотрудника. Отследить это самое событие в системе возможно с использованием класса или бизнес-объекта. Для связи инициирующего события с потоком операций, используется транзакция SWETYPV

Рисунок 1. Транзакция SWETYPV

Бизнес-объект с точки зрения системы представляет собой набор атрибутов, методов и событий для определенной области (например, HCM, FI, PM). Посмотреть список доступных бизнес-объектов можно с помощью транзакции SWO1

Рисунок 2. Репозиторий бизнес-объектов

Рассмотрим ситуацию, в которой функциональному консультанту необходимо настроить поток операций, относящийся к области Performance Management. В качестве инициирующего события для старта потока операций консультант решил использовать событие бизнес-объекта APPR_DOC. Допускаем, что, ознакомившись со списком стандартных событий, консультант принимает решение о том, что требуемого события в стандартном бизнес-объекте нет. Задача: создать новый бизнес-объект, указав в качестве «родительского» — стандартный, и в новом бизнес объекте создать требуемое событие.

Рисунок 3. Просмотр бизнес-объекта APPR_DOC

1. Создание нового бизнес-объекта

Открываем транзакцию SWO1, вводим наименование нового бизнес-объекта и нажимаем на кнопку Создать

Рисунок 4. Создание нового бизнес-объекта

В данной заметке в качестве имени бизнес объекта будет использоваться значение ZAPPR_DOC. В открывшемся окне создания нового бизнес-объекта необходимо внести данные, по аналогии с теми, что указаны на Рисунке №5

Рисунок 5. Создание нового бизнес-объекта

Обратите внимание на поле Супертип. В качестве значения для данного поля необходимо указать наименование стандартного бизнес-объекта, на основании которого в новый бизнес-объект будут скопированы существующие события, методы, атрибуты. В нашем случае, наименование стандартного бизнес-объекта APPR_DOC

Рисунок 6. Созданный бизнес-объект ZAPPR_DOC

Сравните, что получилось, в результате выполнения данной операции. На рисунке ниже представлен вновь созданный бизнес-объект (слева), и стандартный (справа)

Рисунок 7. Сравнение бизнес-объектов

2. Настройка делегирования

Для вновь созданного бизнес-объекта ZAPPR_DOC необходимо настроить делегирование от стандартного APPR_DOC. Для этого, находясь в транзакции SWO1, выберите в меню Параметры настройки -> Делегирование, и создайте новую запись

Рисунок 8. Настройка делегирования

3. Создание нового события

Откройте созданный бизнес-объект в режиме изменения, и, установив курсор на поле События, нажмите на кнопку Создать

Рисунок 9. Создание нового события

В открывшемся окне введите необходимые данные:

Рисунок 10. Создание нового события

Новое событие должно появиться в списке

[caption id="attachment_704" align="alignnone" width="300"]Рисунок 11. Созданное событие Рисунок 11. Созданное событие[/caption]

4. Изменение статуса созданного события и бизнес-объекта

Установите курсор на созданное событие, и выберите в меню Изменить статус деблокирования -> Компонент типа объекта -> Во внедрении

Рисунок 12. Изменение статуса события

В результате успешного выполнения данной операции появится сообщение вида: 

Затем установите курсор на тип объекта и выберите в меню Изменить статус деблокирования -> Тип объекта -> Во внедрении

Рисунок 13. Изменение статуса бизнес-объекта

В результате успешного выполнения данной операции появится сообщение вида: workflow-14

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

Чтобы провести полноценное тестирование, нам понадобится поток операций, и созданная связь между новым событием бизнес-объекта и потоком. Так как на данном этапе поток операций отсутствует, попробуем в транзакции SWETYPV создать запись для бизнес-объекта APPR_DOC и посмотрим, будет ли доступно только что созданное событие:

Рисунок 14. Новое событие бизнес-объекта

Отлично! Событие доступно в списке.

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