Назначение
Направляет строки по настроенным условиям, значениям поля или элементам справочника. В режиме условий first выбирает первое совпадение, all — все подходящие маршруты. Режимы значений и справочника создают выход для каждого сохранённого значения и направляют несовпавшие строки в «Другие значения». Для сравнения суммы с лимитом из другой таблицы сначала присоедините лимит, затем сравните поля текущей строки.
Входы и выходы
Сравнение маршрутизации, разветвления и выбора пользователя. Маршрутизация работает по первому или всем совпадениям; схема показывает простой маршрут и else. Слияние также ждёт сигнала неактивности входа.
Один основной вход in. В режиме conditions у каждого маршрута свой выход, а default_route добавляет else. В режимах values/reference сохранённые значения имеют свои выходы и else. Справочник для построения списка выбирается в настройках, а не подключается ко второму входному порту.
Тип маршрутизации
| Поле | Значение |
|---|---|
| route_type | conditions, значения поля или элементы справочника. |
| routes / mode | До 16 маршрутов по условиям; first или all. Каждый маршрут объединяет условия через all/any. |
| route_field / values | Входное поле и до 64 уникальных значений выходов с идентификаторами и подписями. |
| source / match_by | Измерение IBM/UBC, связь формы, диапазон файла или таблица базы; сопоставление по id или name. |
| default_route | Необязательный else для условий; маршрутизация по значениям или справочнику всегда включает «Другие значения». |
Настройка условия
| Параметр | Что настраивает |
|---|---|
column | Поле строки для проверки. |
op | Равно eq, не равно ne, больше gt, больше или равно gte, меньше lt, меньше или равно lte, содержит contains, начинается с starts_with, входит в список in, не входит в список not_in, пусто empty, непусто not_empty. |
value_mode | Источник сравнения: constant — постоянное значение; parameter — параметр предыдущего блока; field — другое поле текущей строки. Для сравнения с другой таблицей сначала присоедините нужное поле. |
value / value_field | Константа или имя поля сравнения. Для in и not_in вводите по одному значению на строку. |
parameter_block / parameter | Блок параметров и имя параметра; параметр должен быть подготовлен ранее в этой ветке. |
numeric | Включите для числового сравнения. Пустое значение не удовлетворяет числовому условию; текст, который нельзя разобрать как число, вызывает ошибку. |
Настройка
- Выберите тип маршрутизации.
- Для условий задайте правила и порядок; для значений выберите поле и заполните список; для справочника выберите источник, ключ и поле подписи.
- Проверьте уникальность значений и подписи выходов.
- Подключите выходы и задайте обработку остальных значений.
- Проверьте совпадение, отсутствие совпадения, пустое значение и строку, соответствующую нескольким условиям.
Поведение
- В режиме all одна строка может попасть в несколько получателей.
- Без default_route строки, не соответствующие ни одному условию, отбрасываются.
- Пустая ветка не выполняет внешнюю запись.
- Выходы по значениям сохраняются в потоке; перечитайте изменившийся справочник и проверьте схему.
- Для лимитов по ключам используйте соединение с проверкой уникальности и проверкой отсутствующих значений до маршрутизации.
Пример с лимитом
Соединение добавляет Limit к каждой заявке по Department. Контроль качества отклоняет пустой Limit. Маршрутизация сравнивает Amount с полем Limit при numeric=true: превышение идёт на согласование, else — в обычную обработку. Полная настройка приведена в примере 11.
Сравнение с элементом справочника
Условие может использовать value_mode=member: элемент измерения IBM Planning Analytics, элемент измерения UBC Analytics или значение связи формы. Выберите подключение и объект, затем элемент и способ сопоставления. Значение сравнения фиксируется при настройке условия; это не динамическое соединение с другим источником для каждой строки. Перепроверьте выбор после изменения соответствующего элемента или атрибута. Используйте value_mode=field для сравнения двух столбцов текущей строки.