В рамках данного примера рассмотрим создание простого двухэтапного последовательно-параллельного процесса согласования.

На вкладке "Атрибуты" добавить необходимые атрибуты в соответствии с требованиями к процессу.
Базовые атрибуты, необходимые для работы процессов, будут унаследованы от родительских типов элементов: Элемент → Рабочий процесс → Согласование документации (2 этапа) |






Выбрать атрибут "Статус процесса" для построения канбан вида автоматизации.
После выбора атрибута отобразятся колонки канбан вида, соответствующие значениям списка "Статусы процесса".
Добавить правила автоматизации в соответствии с требованиями к процессу.
| Статус процесса | Название | Тип блока | Условие | Действие | Примечание |
|---|---|---|---|---|---|
| Инициализация | Установить права для процесса | Установить права на элемент | Права для подразделения инициатораУровень доступа: Изменить | Устанавливает права на процесс для подразделения инициатора процесса. Внимание! Данное действие не работает с полями - мультилукап. | |
| Инициализация | Установить значения атрибутов | Установить значение поля | Дата начала (Факт)Атрибут: Дата начала (Факт) Дата окончания (План)Атрибут: Дата окончания (План) | Вычисляет значения для атрибутов процесса: "Дата начала (Факт)" и "Дата окончания (План)". | |
| Инициализация | Переход на следующий этап | Установить значение поля | Переход на этап "Согласующие"Атрибут: Статус процесса | Переводит процесс на следующий этап "Согласующие". | |
| Согласующие | Сменить статус вложенным файлам | Установить значение поля связанных объектов | Статус документа "На согласовании"Атрибут: Статус документа | Устанавливает вложенным в процесс файлам значение "На согласовании" для атрибута "Статус документа". | |
| Согласующие | Создать задачи этапа | Этап процесса | Создать задачи для "Согласующие"Исполнители: This("Согласующие") | Формирует задачи на исполнителей этапа "Согласующие". В данном примере атрибут "Согласующие" позволяет указывать множественные значения, в этом случае задачи будут созданы параллельно. | |
| Согласующие | Обработка результатов этапа | Вызов внешнего сервиса | Завершение процесса при отклонении во всех задачах этапаСервис обработки: Format("{0}/api/automation/completestage", Cfg("Site.PortalUrl")) | Сервис "completestage" устанавливает файлам статус "Отклонено", а процессу - статус "Завершен", если статус согласования у всех вложений в каждой задаче этапа - "Отклонено". | |
| Согласующие | Переход на следующий этап | Установить значение поля | Проверка состояния процессаФормула: This("Статус процесса.Название") != "Завершен" | Переход на этап "Утверждающие"Атрибут: Статус процесса | При условии, что процесс не завершен (предыдущим правилом "Обработка результатов этапа"), переводит процесс на следующий этап "Утверждающие". |
| Утверждающие | Создать задачи этапа | Этап процесса | Создать задачи для "Утверждающие"Исполнители: This("Утверждающие") | Формирует задачи на исполнителей этапа "Утверждающие". | |
| Утверждающие | Обработка финальных результатов процесса | Вызов внешнего сервиса | Установка финальных статусов вложенным файламСервис обработки: Format("{0}/api/automation/completeapprovalstage", Cfg("Site.PortalUrl")) | Сервис "completeapprovalstage" устанавливает вложенным файлам итоговые результаты на основании решений на данном этапе процесса. | |
| Утверждающие | Установить значения атрибутов | Установить значение поля | Дата окончания (Факт)Атрибут: Дата окончания (Факт) | Вычисляет значение для атрибута процесса "Дата окончания (Факт)". | |
| Утверждающие | Завершение процесса | Установить значение поля | Завершение процессаАтрибут: Статус процесса | Переводит процесс в статус завершено, таким образом завершая процесс. |