Пример правила автоматизации 6
Эскалация задачи утверждения до менеджера
Когда назначается задача утверждения, рабочий процесс не продолжается до тех пор, пока утверждающий не одобрит ее. Если утверждающий не утвердил или отклонил задачу, менеджер рабочего процесса может принять решение об эскалации, переназначив задачу утверждения менеджеру утверждающего. В этом примере менеджер рабочего процесса хочет выполнить эту эскалацию с помощью правил автоматизации.
Автоматизация состоит из двух частей. Первое правило автоматизации переназначает задачу утверждения на менеджера утверждающего. Это правило автоматизации запускается триггером ‘После задержки’. Задержка определяется во втором правиле автоматизации. После задержки в 2 дня запускается первое правило.
В следующих разделах описывается, как менеджер рабочего процесса может определить ключевые части этих правил автоматизации.
Эскалация утверждения
Триггер
Поскольку правило должно быть выполнено после задержки в 2 дня, в поле Триггер выбран параметр ‘После задержки’.
Выражения
Следующие выражения задаются для правила, чтобы впоследствии их можно было использовать для определения условия правила, а также действий, которые оно должно выполнять:
1. is_assigned
Выражение is_assigned
определяет, что поле "Статус" задачи утверждения все еще ‘Назначена’ (если статус ‘Отклонено’ или ‘Утверждено’, то эскалация не требуется). Оно определяется следующим образом:
status = assigned
2. approval
Выражение approval
добавляется для получения информации об утверждении. Задача утверждения может иметь несколько утверждающих. Для каждого утверждающего определяется запись утверждения. Поскольку в данной задаче утверждения есть только один утверждающий, будет получена первая запись об утверждении. Это выражение определяется следующим образом:
approvals[first]
3. approver
Выражение approver
Выражение "утверждающий" необходимо для поиска менеджера утверждения. Для получения утверждающего используется запись об утверждении, полученная в предыдущем выражении. Запись об утверждении состоит из имени утверждающего и статуса утверждения. В этом выражении извлекается имя утверждающего. Это выражение определено следующим образом:
approval.approver
4. request
Выражение request
используется для поиска первого запроса, связанного с рабочим процессом, к которому относится задача утверждения. Этот запрос нужен нам для получения имени продукта, указанного в запросе, а также имени автора запроса. Он определяется следующим образом:
workflow.requests[first]
5. product
Выражение product
используется для определения имени продукта, для которого требуется одобрение. Его можно найти в значениях расширения пользовательского интерфейса запроса. Значения расширений пользовательского интерфейса можно найти в поле custom_fields запроса. Выражение может быть определено следующим образом:
request.custom_fields.name
6. requester
Выражение requester
ищет имя человека, для которого должен быть реализован рабочий процесс. Оно может быть определено следующим образом:
request.requested_for.name
7. manager
Выражение manager
ищет менеджера утверждающего лица. Утверждающий уже был определен в предыдущем выражении. Поэтому менеджер может быть определен следующим образом:
approver.manager
8. escalated
Выражение escalated
проверяет, не была ли задача утверждения уже эскалирована. Это могло произойти, например, когда эскалированная задача утверждения была отклонена, и менеджер рабочего процесса обновил статус до ‘Назначена’, чтобы снова запросить утверждение. Чтобы предотвратить переназначение задачи руководителю руководителя первоначального утвердителя, правило автоматизации добавляет префикс “Эскалация:” к теме задачи утверждения (см. далее). Это выражение проверяет, начинается ли тема с текста “Эскалация:”. Если да, то выражение ‘escalated’ будет истинным. Для этой проверки доступен оператор ‘starts_with’. Он может быть определен следующим образом:
subject starts_with 'Escalation:'
9. subject
Выражение subject
извлекает предмет задачи утверждения. Оно может быть определено следующим образом:
subject
10. escalated_subject
Выражение escalated_subject
определяет новый субъект для задачи утверждения, когда задача утверждения эскалируется. Для этого добавляется префикс “Эскалация:”. Это можно определить следующим образом:
- ‘
Escalation:
{{subject
}}’
Условие
После того как выражения определены в правиле, можно задать условие, которое должно быть выполнено для того, чтобы правило было выполнено. В данном примере необходимо проверить два условия. Во-первых, статус задачи должен быть ‘Назначена’. Далее, задача утверждения не должна быть уже эскалирована. Условие можно определить с помощью выражений, которые уже определены. Оператор ‘and’ можно использовать для использования более одного выражения. Однако в данном конкретном случае выражение escalated
может не быть истинным, поэтому в условии также используется оператор ‘not’. Условие определяется следующим образом:
is_assigned and not escalated
Есть три действия, которые необходимо выполнить при выполнении условия:
- Добавить примечание к задаче утверждения, чтобы объяснить менеджеру первоначального утверждающего, что задача была эскалирована.
- Заменить первоначального утверждающего менеджером утверждающего
- Обновите тему задачи утверждения с префиксом "Эскалация: "
Обновление 1
Действие, которое должно быть выполнено правилом — это добавление примечания в задачу утверждения, чтобы уведомить менеджера первоначального утвердителя о том, что задача была передана ему. Поскольку правило автоматизации определено на задаче утверждения, поле "Обновить" не требует значения. Это приводит к тому, что значение по умолчанию присваивается текущей записи (т. е. задаче утверждения).
Добавить примечание
Требуемое действие - ‘Добавить примечание’. При этом появляется текстовое поле, в котором можно задать примечание. Переменные в примечании (имя менеджера, имя заявителя, имя утверждающего и имя продукта) уже определены в выражении. Выражения вставляются в текст, окруженный двумя фигурными скобками. Записка может быть определена следующим образом:
Уважаемый
{{менеджер
}},
{{заявитель
}} ждал 2 дня одобрения
{{утверждающего
}} для регистрации продукта
{{продукт
}} в SAP.
Обновление 2
Во втором действии правила необходимо заменить фактического утверждающего на менеджера утверждающего. Запись утверждения уже была определена в выражении. Поэтому поле "Обновить" можно установить на это выражение утверждения
.
Установить
Поле "Утверждающий" записи утверждения должно быть установлено на менеджера текущего утверждающего. Для этого в поле "Установить" нужно указать следующее:
approver = manager
Обновление 3
Третье действие заключается в обновлении темы задачи утверждения путем добавления в нее текста. Поскольку правило автоматизации определено для задачи утверждения, поле "Обновить" не требует значения. Поэтому по умолчанию оно будет соответствовать текущей записи (т. е. задаче утверждения).
Установить
Новый префикс субъекта был определен в выражении escalated_subject
. Поэтому обновление субъекта можно указать в поле "Установить" следующим образом:
subject = escalated_subject
Запланировать эскалацию утверждения через 2 дня
Триггер
Поскольку правило "Эскалация утверждения" должно выполняться через 2 дня после того, как задача утверждения была назначена утверждающему, в поле Триггер выбран вариант ‘При обновлении статуса’.
Выражения
Следующее выражение задается для правила, чтобы впоследствии его можно было использовать для определения условия для правила:
1. is_assigned
Выражение is_assigned
указывает, что поле "Статус" задачи утверждения имеет значение ‘Назначена’. Оно определяется следующим образом:
status = assigned
Условие
После того как выражение определено в правиле, можно задать условие, которое должно быть выполнено для того, чтобы правило было выполнено. В этом примере статус задачи должен быть ‘Назначена’. Поскольку для этого уже есть выражение, условие, которое должно быть истинным, просто:
is_assigned
Это все, что нужно ввести в поле "Условие" правила.
Отсрочка выполнения
Действие, которое должно быть выполнено по правилу, является отложенным действием. Отложенное действие состоит из двух частей. Сначала в поле "После" задается длительность задержки. Затем в поле "Начать" выбирается правило, которое должно быть запущено после задержки.
После
Необходимо определить время задержки. Это можно сделать в секундах, минутах, часах, днях, месяцах или годах. В данном примере продолжительность задержки в 2 дня определена следующим образом:
2.days
Запуск
Выберите правило автоматизации, для поля Триггер которого установлено значение ‘После задержки’. В этом примере правило ‘Эскалация утверждения’ выбрано следующим образом:
Эскалация утверждения