Валидация - проверка карточки заказа/клиента/корпоративного клиента/задач на соответствие заданным условиям. Проверка проводится в момент сохранения объекта.
Примечание
При групповых действиях над заказами/клиентами/корпоративными клиентами/задачами валидация срабатывает.
Информацию о сработавшей валидации видно в журнале действий. В журнале отображается ID заказа и текст сообщения валидации.
Добавление новой валидации
Разберем значение некоторых полей:
- Условие — условие, при котором срабатывает валидация. Если условие соблюдается, то изменения сохранены не будут. Подробнее о настройках условия читайте в соответствующей статье.
- Сообщение — сообщение, которое будет выводиться в случае срабатывания валидации. Максимальная длина оповещения - 5000 знаков. Используйте Twig-шаблоны для детализации сообщения.
Указать условие срабатывания валидации для заказа можно двумя способами:
- через визуальный конструктор, при помощи существующих блоков;
- через редактор, при помощи кода в соответствующем синтаксисе (PipeLanguage);
Для клиента, корпоративного клиента и задач интерфейс настройки валидации выглядит одинаково.
Примечание
Режим конструктора недоступен при настройке валидации для клиента, корпоративного клиента и задач.
Рассмотрим подробнее каждый из способов создания валидации.
Режим конструктора
Примечание
Конструктор будет недоступен, если:
• Переключились на редактор и внесли любое изменение. Если изменение было случайным, то выйдете из валидации без сохранения изменений.
• Условие валидации изначально написано в редакторе.При удалении всех условий в редакторе валидации, конструктор становится доступен вновь.
Конструктор используется для создания валидации при помощи предустановленных блоков с условиями.
Новое условие добавляется из имеющегося списка условий. Условия объединены логическими операторами И / ИЛИ.
Работа с условием (выбор, замена и настройка условия) ведется в шторке, которая отображается в правой части браузера. По каждому условию и опциям присутствуют подсказки, которые отображаются при наведении.
Для удобства доступно поле поиска, которое позволит найти нужное условие. Поиск осуществляется с фильтрацией тех условий, в названии которых присутствует введенная в поисковую строку последовательность символов. Чтобы увидеть полный набор условий без фильтра, можно сбросить введенное значение по крестику справа, в поле поиска.
В зависимости от типа условия доступны следующие опции его настройки:
- Выбор значения из списка с возможностью мультивыбора.
- Проверка по вхождению для символьного кода. Обратите внимание, что наличие введенных символов проверяется именно в символьном коде, а не в названии объекта.
- Проверка признака (его наличие/отсутствие)
- Сравнение начального и конечного значения при изменении поля, в том числе опция «Любой».
Важно!
Нельзя сохранить условие в валидацию, если оно заполнено не полностью.
Удаление добавленного условия осуществляется при помощи крестика, который располагается в правой его части. Удаление доступно только в цепочке условий, из списка удаление недоступно.
При необходимости можно дублировать условия - в шторке, в нижнем правом углу, кликните на кнопку «Дублировать», и Вас сразу перекинет на редактирование дубля.
Условие «Другое поле»
«Другое поле» - условие, которое может обращаться к системным и пользовательским полям карточек заказа/клиента.
После выбора раздела (страница заказа или клиента) необходимо выбрать поле, которое вас интересует.
Важные моменты при работе с условием «Другое поле»:
- Условие работает только с полями из карточек клиента/заказа и пользовательскими полями (пользовательское поле должно быть для заказа или клиента).
- Условие работает только с полями вида строка\текст, число, справочник, флаг (Да/Нет).
- Некоторые поля могут быть недоступны для выбора, так как не поддерживаются конструктором (напр. поля даты или интервал доставки). С ненайденными полями необходимо работать в редакторе условий.
- Для валидаций заказа можно проверить значение полей заказа и клиента (который связан с заказом) и изменение полей заказа. Для валидаций клиента можно проверить значение полей клиента и заказа (первого или последнего не отмененного заказа этого клиента) и изменение полей клиента. Проверка изменения полей возможна только в том случае, если раздел соответствует выбранному событию.
- Доступен поиск по полям при их выборе.
При заполнении условия используется пошаговый конструктор, у которого меняются данные для заполнения в зависимости от выбранного поля на предыдущем шаге.
Режим редактора
Редактор используется для указания условий, которые нельзя задать при помощи визуального конструктора в виду их отсутствия или, например, при использовании сложной цепочки объектов и вложенности условий.
При помощи редактора можно вносить изменения в условие, созданное при помощи конструктора.