Для проверки данных перед сохранением записи обычно используется действие «Показать ошибку» в правилах для формы. Однако с помощью этого действия может быть затруднительно реализовать сложную логику проверки, либо проверочное выражение будет неудобочитаемым. К тому же чрезмерно сложные правила для формы могут замедлять ввод данных в форму.
В таких случаях для проверки данных перед сохранением записи можно использовать действие «Проверить результат выражения» в сценарии по событию «Создание записи», «Изменение записи» или «Нажата кнопка». Сценарий позволяет наглядно реализовать логику проверки данных произвольной сложности. Кроме того, сценарий срабатывает только при сохранении записи, благодаря чему повышается производительность.
Практический пример
Настроим сценарий, который будет запрещать сохранение заявки на поездку, если не указана её длительность.
Исходные данные
В шаблоне «Заявки» имеется атрибут «Длительность поездки» (TripDuration
) типа «Число», этот атрибут вынесен на форму заявки.
Настройка сценария
- Создайте сценарий.
- В начальном событии «Нажата кнопка» выберите контекстный шаблон «Заявки» и кнопку «Сохранить».
- Добавьте действие: - Проверить результат выражения
- Сообщение об ошибке: Длительность поездки не может быть нулевой
-
Выражение: формула
// Введите выражение, которое будет возвращать
// false, когда сохранение записи запрещено, и
// true, когда сохранение записи разрешено.
GREATER($TripDuration,0)
Тестирование сценария
- Создайте заявку и не заполняйте поле «Длительность поездки».
- Нажмите кнопку «Сохранить».
- На экране отобразится сообщение «Длительность поездки не может быть нулевой».
- Заполните поле «Длительность поездки» и нажмите кнопку «Сохранить».
- Отобразится сообщение об успешном сохранении записи.
Связанные статьи
Событие и действия сценария. Определения, типы, свойства, настройка