🤖 Автоматизации

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

Автоматизации в КОСКО BPM — это реакции на изменения данных в системе. Поэтому мы должны описать для системы правила:

  1. Изменения каких именно данных отслеживаем — за это отвечает каталог События.

  2. Что после этих изменений мы должны сделать — за это отвечает каталог Сценарии.

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

Когда нужны автоматизации

Автоматизации решают три класса задач:

  • Бизнес-логика — двигать заявку по этапам, менять статусы, назначать ответственных

  • Рутинные операции — автоматически отправлять уведомления, генерировать документы, заполнять поля

  • Интеграция с внешними системами — принимать данные от сторонних сервисов или отправлять их туда

Как это работает

Автоматизация в КОСКО BPM— это реакция на событие. Когда происходит событие (изменение записи, внешний запрос), КОСКО BPM ищет подписки на это событие и запускает связанные сценарии.

  1. Событие. Сотрудник изменяет запись, создаёт или удаляет её — или поступает внешний веб-запрос.

  2. Реакция. КОСКО BPM ищет подписки на это событие в каталоге «События».

  3. Запуск процесса. Для каждой подходящей подписки КОСКО BPM запускает сценарий — создаёт запись в каталоге «Процессы» и начинает исполнение.

  4. Исполнение. Процесс последовательно выполняет компоненты сценария: изменяет данные, делает запросы, манипулирует переменными.

  5. Результат. После завершения результат сохраняется в каталоге «Процессы». Для синхронных событий результат возвращается инициатору — например, как сообщение об ошибке или новые значения полей.

  6. Последствия. Для некоторых событий выходные параметры процесса передаются инициатору события:

    • Запросы «перед изменением / созданием / удалением» — результат используется чтобы разрешить или заблокировать операцию и показать сотруднику сообщение.

    • Действие «во время редактирования» — результат применяется как новые значения полей прямо в открытой карточке, до сохранения записи.

    • Внешний веб-запрос — результат возвращается как HTTP-ответ инициирующей системе.

Терминология

Термин

Что означает

Сценарий

Блок-схема — описывает алгоритм автоматизации из компонентов

Процесс

Копия сценария, запущенная на исполнение с конкретными входными данными

Событие

Ситуация в системе, которая может запустить процесс: изменение записи, внешний запрос

Подписка

Связь между событием и сценарием — «при этом событии запускать этот сценарий»

Как настроить

1. Создайте сценарий

В разделе «Управление» в каталоге «Сценарии» добавьте новую запись. В поле «Сценарий» нажмите «Создать» — откроется графический редактор. Из панели компонентов выберите нужные, расставьте в правильной последовательности и задайте их свойства.

Подробнее читайте в статье Сценарии.

2. Подпишитесь на событие

В разделе «Управление» в каталоге «События» добавьте новую запись. Укажите каталог, типы событий и выберите сценарий который нужно запускать.

Подробнее читайте в статье События.

Из чего состоит раздел

Статья

Что описывает

Компоненты

Все компоненты графического редактора — действия, условия, циклы, работа с данными.

События

Типы событий, настройка подписок, синхронные и асинхронные запуски.

Сценарии

Работа с графическим редактором, переменные, входные и выходные параметры.

Ограничения

Лимиты на количество процессов, время выполнения и объём данных.

Ограничения в облаке

Параметр

Значение

Максимум одновременно запущенных процессов

10

Максимальная длительность выполнения

7 дней

Максимальный размер пользовательских данных

5 Мб

При установке на собственный сервер параметры ограничений настраиваются индивидуально. Подробнее в статье Ограничения.