Условие Условие

Компонент используется в точке разветвления сценария в качестве переключателя между вариантами обработки данных. В соответствии с заданными ему условиями выполняется только одна ветвь сценария и блокируется выполнение всех остальных.

Выявление активной ветви происходит по следующему принципу:

  1. Ветви проверяются на истинность последовательно по списку сверху вниз, начиная с самой первой.
  2. При выявлении ветви со значением "истина" проверка останавливается, ветвь становится активной, а остальные блокируются, даже если ниже по списку остались истинные.
  3. Если все ветви примут значение "ложь", то будет активизирована специальная ветвь Иначе.

Порты

Изначально входных и выходных портов нет, они создаются пользователем в мастере настройки. При первоначальной настройке достаточно добавить входные порты и сохранить настройки компонента. Настройка списка условий при этом не требуется, так как в компонент ещё не передана структура входных данных. Порты могут быть следующих типов:

Вход

  • Входные переменные Входные переменные — набор переменных.
  • Входной источник данных Входной источник данных — таблица данных.

Выход

  • Выходные переменные Выходные переменные — набор переменных.
  • Выходной набор данных Выходной набор данных — таблица данных.

Мастер настройки

Шаг 1. Настройка портов узла

Здесь задается наличие необходимых портов. Каждому порту можно задать тип, имя и название, которое будет отображаться при наведении курсора на него.

  • Создать новый порт Добавить — создать новый порт входа:
    • Для переменных Переменные — для переменных.
    • Для таблицы Таблица — для таблицы.
    • Для дерева данных Дерево данных — для дерева данных.
  • Смещение порта вниз Переместить вниз, Смещение порта вверх Переместить вверх — путем смещения выделенного порта определить его положение относительно узла компонента.
  • Редактировать параметры порта Редактировать — редактировать параметры порта.
  • Создание выхода Передавать на выход — для выделенного входного порта будет создан порт выхода в каждой ветви.
  • Удалить порт — удалить порт.
  • Удалить все порты — удалить все порты.

Шаг 2. Настройка списка условий

Список ветвей условия — содержит варианты дальнейшего выполнения сценария.

  • Добавить ветвь Добавить — добавить новую ветвь условия.
  • Переместить ветвь вниз Переместить вниз, Переместить ветвь вверх Переместить вверх — установить приоритет выделенной ветви путем её смещения относительно других ветвей.
  • Удалить ветвь — удалить ветвь.
  • Удалить все ветви — удалить все ветви условий.

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

  • Добавить новое условие — добавить в ветвь новое условие, после нажатия открывается окно для его настройки:
    • Поле — содержит список всех переменных, столбцов таблиц и указатель записей таблиц, поданных на входные порты компонента. Выбранный объект будет использован для сравнения.
    • Агрегация — содержит список методов агрегации, применимых к полям таблиц. Список недоступен для полей-переменных.
Агрегация полей и возможные типы данных:
Вид агрегации
Сумма
Минимум
Максимум
Среднее
Количество пропусков
Первый
Последний                              
  • Условие — выбор метода сравнения.
  • Сравниваемое значение — значение, с которым будет сравниваться выбранный объект.
    • И/ИЛИ — кнопка-переключатель появляется между двумя условиями в ветви:
  • И — связываемые условия дадут значение "истина", если они оба истинны.
  • ИЛИ — связываемые условия дадут значение "истина", если истинно хотя бы одно из них.
    • **Удалить все условия** Удалить все условия — удалить все условия для выбранной ветви.

Примечание: условие проверяется на атомарных значениях, например, "A > 1". Таким значением может быть переменная. Если же на вход подана таблица, то поле обозначает не одно значение, а целую колонку. В этом случае данную колонку необходимо свести к одному значению с помощью методов агрегации.

Важно: при написании сложных условий приоритет будет у оператора И. Например, сложное условие вида: "A ИЛИ B И C ИЛИ D И E И F" будет выполняться следующим образом: "A ИЛИ (B И C) ИЛИ (D И E И F)".

Режим отладки Режим отладки — применяется для проверки корректности данных на выходных портах вне зависимости от условий. Активны будут ветви, указанные в списке Выполнять ветвь условия, который включает в себя:

  • Список пользовательских ветвей — добавленные пользователем ветви, можно выбрать одну из них.
  • Все ветви — активирует выполнение всех ветвей, в том числе ветвь Иначе.
  • Иначе — активирует выполнение только ветви Иначе.