Условия
Ветвление сценария на канвасе Флоктора: блок «Условие», варианты выбора для формы, условные связи и конструктор условий с И/ИЛИ.
Условие — это развилка в сценарии. Блок «Условие» решает, какой путь выполнить, а какой пропустить. Добавляется он из той же панели, что и остальные блоки.
Варианты выбора
Внутри условия перечисляются варианты — именованные ветки. У каждого варианта есть название, текст, который подставится при его выборе, и, если нужно, картинка-обложка.
Настройка «Тип выбора» определяет, сколько вариантов можно выбрать за раз:
- Один вариант. Обычная развилка, выполняется ровно одна ветка.
- Несколько вариантов. Можно выбрать сразу несколько, выполнятся все выбранные ветки.
Варианты видит тот, кто запускает шаблон через форму: выбор становится полем с картинками. Так делаются шаблоны вида «выберите стиль» или «выберите формат публикации».
Условные связи
У каждой связи, выходящей из условия, есть режим:
- Всегда. Обычная связь, выполняется при любом исходе.
- При условии. Выполняется только тогда, когда условие сошлось.
Условные связи рисуются пунктиром, поэтому развилку видно на полотне, не открывая настроек.
Как собрать условие
Условие состоит из строк вида «источник — оператор — значение». Источником может быть вариант выбора или результат другого блока.
Операторы зависят от того, что сравнивается: равно, не равно, один из, не один из, заполнено, не заполнено, содержит, начинается с, заканчивается на. Для чисел добавляются сравнения по величине.
Когда строк несколько, нужно указать, как их объединять:
- выполнены все — нужны все строки сразу;
- выполнено любое — достаточно одной;
- выполнены не все — сработает, если хотя бы одна не выполнилась;
- не выполнено ни одно — сработает, когда не выполнилась ни одна.
Строки можно собирать в группы. Группа ведёт себя как одна строка со своим правилом объединения, и через неё записываются условия вида «А и (Б или В)», которые одним списком не выразить.
Что происходит с пропущенными ветками
Ветка, чьё условие не сошлось, не выполняется. Блоки за ней — тоже. Денег они не стоят: пропущенный блок к модели не обращается.