Создание Бизнес-Процессов
Практическое создание бизнес-процессов
Пора испытать это на практике. Перейдем в раздел работы с бизнес-процессами. Создадим первый бизнес-процесс и настроим внутреннюю логику его работы.
По нажатию на “+ Create business process” откроется модальное окно с параметрами для создания нового БП:
- Название (Process name). Единственное обязательное поле.
- Папка (Folder). Если бизнес-процессов становится много, то удобнее разбить их на группы, разместить в соответствующих папках.
- Описание (Description). Одного имени может быть недостаточно для того, чтобы полностью передать назначение БП и раскрыть детали его работы. Поле описания предназначено для подобной информации.
- Режим транзакции (Transaction mode). В случае активации переключателя БП приобретает свойство атомарности. Это означает, что БП либо выполняется полностью, либо не выполняется ни один из его отдельных блоков. Если в каком-то блоке произойдет ошибка, то будет выполнен откат всех изменений, вызванных предыдущими блоками.
Математические функции
Создадим бизнес-процесс, который получает на вход значения двух чисел. Проведем математические операции с этими числами. Рассчитаем результаты:
- Суммирования
- Вычитания
- Умножения
- Деления
Результат деления еще и дополнительно округлим до первого знака после запятой.
В итоге мы должны будем получить 5 чисел, которые объединим в массив. Именно этот массив и станет результатом работы бизнес-процесса.
Входящие переменные
Все начинается с входных данных. Необходимо определить числа, с которыми мы будем проводить математические операции. Важно понять, что задаем мы не числа, как таковые. Мы создаем переменные, которые принимают необходимые значения. Это можно сравнить с решением школьных уравнений. X + Y = Z. Вот и мы зададим не конкретные 2 числа, а абстрактные X и Y. Их точное значение в дальнейшем можно будет задавать любым.
Для установки входных значений необходимо выделить блок Start. На правой панели появится раздел для установки переменных. Необходимо задать их названия (мы уже определились, что это будут X и Y) и выбрать тип переменных. Во втором модуле мы обсуждали, что для записи чисел доступны два варианта. Integer (для целочисленных данных) и Float (для чисел с плавающей запятой). В данном случае мы не собираемся ограничиваться целыми значениями, поэтому будет правильным выбрать тип Float.
Математические блоки
Следующий шаг - добавление блоков математических операций. Они расположены на левой панели и разбиты по разделам. Нужно лишь выбрать необходимые и перетащить в рабочую область. В первую очередь нас интересуют математические операции, соответственно понадобятся блоки Sum, Subtract, Multiply и Divide.
Можно убедиться в том, что каждый блок является бизнес-процессом в миниатюре. У него обязательно есть начало (In) и конец (Out), а также входные и выходные данные (чаще всего они есть, но это не является обязательным, есть БП и без них).
Операции будут выполняться последовательно, одна за другой. Необходимо установить их связь (определить этим порядок их выполнения) и подать необходимые данные на вход).
Следующий шаг - округление результата деления. Используем блок Round (возможны варианты Round Up или Round Down для округления вверх и вниз соответственно), подаем на вход результат из блока деления и задаем точность. Нас интересует 1 знак после запятой, поэтому и параметр Precision устанавливаем равным 1.
Промежуточный результат должен получиться примерно таким:
Стоит отметить, что сама расстановка блоков может быть любой. Можно выстраивать их в ряд, можно размещать один блок под другим. Это влияет только на удобство восприятия, но никак не на результат выполнения бизнес-процесса. Главное, чтобы сами линии связи были заданы в правильном порядке, а на вход блоков поступали необходимые данные.
Функции массивов
Следующий шаг - создание массива с полученными данными. Для этого идеально подойдет блок Append array. Его задача заключается именно в том, чтобы добавить в массив новый элемент. На вход подается массив и необходимый элемент, на выход поступает массив, в котором стало на 1 элемент больше.
Обратите внимание на то, что нет необходимости в том, чтобы вручную задавать тип данных. Блок автоматически настроится на нужный тип в зависимости от того, какие данные получит на вход. Если подать на вход Float, то и на выходе автоматически будет массив Float, его не получится случайно соединить с несовместимым типом данных.
Мы добавляем в массив 5 значений, поэтому и блок Append Array необходимо использовать 5 раз. В первом случае достаточно подать на вход только добавляемый элемент. Массив будет создан автоматически. В последующих случаях на вход должен попасть и элемент, и сам массив, к которому мы элемент добавляем.
Кстати, на левой панели, рядом с Append Array, можно увидеть функции с похожими названиями. Prepend Array делает новый элемент самый первым, и этим отличается от Append, который добавляет элемент в конец массива. Блок Concat Array используется для объединения двух массивов.
В AppMaster используется множество различных блоков. Не бойтесь экспериментировать и использовать их все, даже если про конкретный блок не было информации в рамках курса.
Для передачи итогового результата остается только добавить к блоку End соответствующую переменную. В нашем случае это Float Array.
Создание первого бизнес-процесса закончено! В следующем модуле мы разберемся, как использовать его на практике, подавать входные данные и получать результат.