Блоки
Логика процесса определяется блоками. Блок - это операция, которая имеет тип и параметры. Выполнение процесса всегда начинается с входных блоков. Некоторые типы блоков запрашивают взаимодействие с пользователем, такие блоки содержат все процессы для ответа пользователя при выполнении. Когда выполнение блока закончено, процесс выполняет следующий блок.
Функциональные блоки могут иметь возвращаемое значение. После выполнения блока, результат выполнения операции хранится в переменной среды с именем блока. Поэтому каждый блок может получать значения для каждого блока из ранее выполненных с помощью ссылки на переменные среды. Если же значение не было посчитано, то вернется null.Также доступен результат предыдущего вычисления блока и хранится в переменная среды с именем value. Если же предыдущее значение отсутствует, то вернется null.
Каждый блок имеет графический компонент.
Группы блоков
Существует три основные группы блоков:
Входные блоки с которых начинается выполнение процесса
Блоки управляющие порядком выполнения процесса
Соединение блоков
Каждый блок имеет точки прикрепления, с помощью которых блоки соединяются друг с другом посредством коннекторов. Входящие точки прикрепления всегда находятся сверху компонента, выходные - снизу. В одну входящую точку прикрепления может входить сколько угодно коннекторов. Из выходящей точки прикрепления может выходить только один коннектор.
Среда вычисления выражений и значений
Поведение каждого типа блоков управляется параметрами. Выражения, которые могут появляться в параметрах, так же как и значения, находятся в одной среде. После обработки блока, результат выполнения операции хранится в среде вычисления переменных с именем блока.
Среда вычисления выражений и значений параметров: |
|
Сам контекст Процесс. | |
Таблица, которая задана при запуске процесса. Таблица не разделяется между задачами. Для каждой задачи создается отдельный экземпляр таблицы. | |
Переменные для каждого результата функциональных блоков и предыдущего блока данного процесса. Данные переменные являются локальными и для каждой задачи имеют свои значения. |
Привязки параметров
Если необходимо получить динамическое поведение блока, должны быть использованы параметры его привязок. Эти привязки будут оценены перед выполнением каждого шага, и параметры, определенные как цели привязок, будут перезаписаны с помощью результатов выражения привязок.
Пример: Оператору необходимо ввести текст пояснения, а затем показать его на мониторе. С помощью блока UI-процедуры "Edit Text" мы предлагаем оператору ввести текстовое сообщение, а затем передаем этот текст в качестве параметра блоку "Show Message". Поэтому в блок, вызывающий UI-процедуру "Show Message", необходимо добавить следующую привязку параметров:
Где |