Дизайнер бизнес-процессов > Графические процессы (BPMN) > Графические элементы / Скрипт

Скрипт

Скрипт — это код на языке TypeScript, который позволяет обращаться к данным бизнес-процессов, создавать, запрашивать, изменять и удалять элементы приложений, а также взаимодействовать с внешними системами по протоколу HTTP.

Предположим, компания сбывает продукцию через интернет. Когда клиент нажимает кнопку Заказать, при помощи скрипта запускается бизнес-процесс, в который передаётся информация о заказе, сделанном на сайте. Система автоматически рассчитывает стоимость товара со скидкой, а затем отправляет данные обратно на сайт.

Как добавить блок «Скрипт» на схему процесса

начало внимание

Настраивать блок Скрипт могут только пользователи, включённые в группу Администраторы.

конец внимание

На странице процесса на панели инструментов справа от поля для моделирования откройте вкладку Стандартные элементы. Перетащите блок Скрипт на схему и разместите его там, где необходимо.

2.PNG

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

Дважды нажмите на добавленный блок, чтобы открыть окно с настройками. Оно содержит две вкладки: Основное и Обработка ошибок.

Вкладка «Основное»

Сценарий_02

В поле Название укажите название операции, которое будет отображаться в системе, например, Расчет стоимости.

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

Сценарий_03

Откроется редактор, в котором вы можете написать скрипт для обработки контекста. Такие скрипты выполняются на стороне сервера без ограничения доступа к элементам приложения. Например, если в каком-либо приложении ограничен доступ к элементам, то при попытке загрузить элемент, к которому у текущего пользователя нет доступа, серверный код выполнится успешно. Аналогично при получении списка элементов вернутся все элементы.

Для создания скриптов используется TypeScript. Более подробно про принципы написания скриптов вы можете прочитать в справке ELMA365 TS SDK.

начало внимание

Использование констант Global или Namespace в скриптах ограничивает экспорт компонентов системы. Подробнее об этом читайте в статье «Глобальные константы в скриптах».

конец внимание

Сценарий_04

При написании некоторых скриптов можно использовать дополнительные параметры. Они позволяют донастроить процесс или внести изменения в скрипт без перепубликации. Подробнее об этом вы можете прочитать в статье «Дополнительные параметры».

Вкладка «Обработка ошибок»

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

Для этого перейдите на вкладку Обработка ошибок в окне настроек.

Сценарий_05

  • Повторить выполнение — выберите эту опцию, чтобы скрипт выполнился повторно;
    • Количество повторений — укажите количество попыток для воспроизведения скрипта;
    • Время задержки между повторениями (сек) — определите частоту попыток воспроизведения скрипта;
  • Оповещение — выберите эту опцию, чтобы при ошибке направлять соответствующее оповещение. Укажите пользователей, которых нужно уведомить о сбое в работе скрипта;
  • Прерватьв случае ошибки прекратятся попытки выполнения скрипта и процесс пойдёт по выбранному переходу.

После того как вы укажете все настройки, нажмите Сохранить.