Возникает на клиенте перед выполнением записи объекта из формы. Процедура-обработчик данного события вызывается перед вызовом процедуры-обработчика события ПередЗаписью объекта.
Синтаксис
ПередЗаписью(<Отказ>, <ПараметрыЗаписи>)Полное описание, параметры и ограничения
Расширение формы клиентского приложения для констант.ПередЗаписью (Client application form extension for constants.BeforeWrite)
Расширение формы клиентского приложения для констант (Client application form extension for constants)
ПередЗаписью (BeforeWrite)
Доступен, начиная с версии 8.2.
Синтаксис:
ПередЗаписью(<Отказ>, <ПараметрыЗаписи>)
Параметры:
<Отказ>
Тип: Булево.
Признак отказа от записи. Если в теле процедуры-обработчика установить данному параметру значение Истина, то запись произведена не будет.
Значение по умолчанию: Ложь.
<ПараметрыЗаписи>
Тип: Структура.
Структура, содержащая параметры записи.
Описание:
Возникает на клиенте перед выполнением записи объекта из формы. Процедура-обработчик данного события вызывается перед вызовом процедуры-обработчика события ПередЗаписью объекта.
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, мобильное приложение (клиент).
Примечание:
В обработчике данного события нельзя использовать серверные методы формы с директивой компиляции &НаСервере, а также изменять свойства, которые могут привести к серверному вызову.
Использование в версии:
Доступен, начиная с версии 8.2.
Методическая информация
Практические примеры
Остановить отрицательное значение до серверной записи
Клиентская проверка формы даёт быстрый отказ до отправки объекта на сервер. Контекст: Общие → Общие формы → УчебныеКонтрольныеКонстанты.
Где и как запускать
Модуль управляемой формы: Общие → Общие формы → УчебныеКонтрольныеКонстанты. Серверная и клиентская директивы уже указаны; не вставляйте процедуру внутрь другой.
Подготовка
Все действия выполняйте только в отдельной учебной конфигурации.
Создайте две учебные константы: УчебноеКонтрольноеЧисло (Число 15.2), УчебныйКомментарий (Строка 100).
Создайте управляемую форму констант УчебныеКонтрольныеКонстанты конструктором форм: основной реквизит Объект типа КонстантыНабор, в наборе обе созданные константы. Не используйте форму одной константы.
Основной реквизит формы должен называться Объект. Если мастер дал другое имя, переименуйте основной реквизит и исправьте пути данных его полей в редакторе формы.
Выведите основной числовой реквизит и комментарий на форму. Добавьте отдельный реквизит формы Статус (Строка 200), выведите его недоступным для редактирования.
Откройте Общие → Общие формы → УчебныеКонтрольныеКонстанты → Модуль формы. Назначьте событие ПередЗаписью одноимённой процедуре. Обновите только учебную базу.
Примеры соседних событий можно объединить в одном модуле: каждая процедура должна существовать только один раз. Для обычного опыта задайте число 25 и комментарий Учебный объект.
&НаКлиенте
Процедура ПередЗаписью(Отказ, ПараметрыЗаписи)
Если Объект.УчебноеКонтрольноеЧисло < 0 Тогда
Отказ = Истина;
Сообщить("Отрицательное значение не допускается");
КонецЕсли;
КонецПроцедурыРазбор по шагам
Платформа вызывает назначенный обработчик, передавая параметры именно своего расширения формы.
Клиентская проверка формы даёт быстрый отказ до отправки объекта на сервер.
Работа ведётся с реквизитами объекта, который полностью объявлен в подготовке.
Как проверить результат
Введите -1 и нажмите Записать: запись отменяется с сообщением.
Введите 25: эта клиентская проверка пропускает запись.
Ожидаемый результат
Остановить отрицательное значение до серверной записи для собственного учебного объекта.
На что обратить внимание
Эта проверка действует только при записи из данной формы; программную запись защищают правила модуля объекта.
В этом клиентском событии не вызывайте &НаСервере и не меняйте свойства, вызывающие серверное обращение.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.