Вызывается расширением формы при необходимости проверки заполнения реквизитов при записи в форме, а также при выполнении метода ПроверитьЗаполнение. Позволяет разработчику конфигурации самостоятельно реализовать проверку заполнения в обработчике события. При этом в обработчике можно полностью отказаться от системной обработки (очистив список проверяемых реквизитов), отказаться от проверки системой части реквизитов (выполнив проверку отдельных реквизитов особенным образом и исключив эти реквизиты из списка), а также добавить для проверки другие реквизиты, проверка которых не была указана. Пример: Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты) // Сообщим платформе, что мы сами обрабатываем проверку реквизита Организация ПроверяемыеРеквизиты.Удалить(ПроверяемыеРеквизиты.Найти("Организация")); Для Каждого Проводка Из ЭтотОбъект Цикл Индекс = ЭтотОбъект.Индекс(Проводка) Если Не ЗначениеЗаполнено(Проводка.Организация) Тогда Сообщение = Новый СообщениеПользователю(); Сообщение.Текст = "В строке " + Индекс + " не указана Организация"; Сообщение.Поле = "[" + Индекс + "].Организация"; Сообщение.УстановитьДанные(ЭтотОбъект); Сообщение.Сообщить(); Отказ = Истина; КонецЕсли; КонецЦикла; КонецПроцедуры
Синтаксис
ОбработкаПроверкиЗаполнения(<Отказ>, <ПроверяемыеРеквизиты>)Полное описание, параметры и ограничения
РегистрСведенийНаборЗаписей.<Имя регистра сведений>.ОбработкаПроверкиЗаполнения (InformationRegisterRecordSet.<Information register name>.FillCheckProcessing)
РегистрСведенийНаборЗаписей.<Имя регистра сведений> (InformationRegisterRecordSet.<Information register name>)
ОбработкаПроверкиЗаполнения (FillCheckProcessing)
Доступен, начиная с версии 8.2.
Синтаксис:
ОбработкаПроверкиЗаполнения(<Отказ>, <ПроверяемыеРеквизиты>)
Параметры:
<Отказ>
Тип: Булево.
Если в теле процедуры-обработчика установить данному параметру значение Истина, то будет выполнен отказ от продолжения работы после выполнения проверки заполнения.
Значение по умолчанию: Ложь.
<ПроверяемыеРеквизиты>
Тип: Массив.
Массив путей к реквизитам, для которых будет выполнена проверка заполнения. Массив может быть модифицирован удалением или добавлением путей к необходимым реквизитам.
Описание:
Вызывается расширением формы при необходимости проверки заполнения реквизитов при записи в форме, а также при выполнении метода ПроверитьЗаполнение.
Позволяет разработчику конфигурации самостоятельно реализовать проверку заполнения в обработчике события. При этом в обработчике можно полностью отказаться от системной обработки (очистив список проверяемых реквизитов), отказаться от проверки системой части реквизитов (выполнив проверку отдельных реквизитов особенным образом и исключив эти реквизиты из списка), а также добавить для проверки другие реквизиты, проверка которых не была указана.
Пример:
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
// Сообщим платформе, что мы сами обрабатываем проверку реквизита Организация
ПроверяемыеРеквизиты.Удалить(ПроверяемыеРеквизиты.Найти("Организация"));
Для Каждого Проводка Из ЭтотОбъект Цикл
Индекс = ЭтотОбъект.Индекс(Проводка)
Если Не ЗначениеЗаполнено(Проводка.Организация) Тогда
Сообщение = Новый СообщениеПользователю();
Сообщение.Текст = "В строке " + Индекс + " не указана Организация";
Сообщение.Поле = "[" + Индекс + "].Организация";
Сообщение.УстановитьДанные(ЭтотОбъект);
Сообщение.Сообщить();
Отказ = Истина;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
Замечание:
Безопасный режим на время исполнения данного обработчика будет отключен. Данное замечание не относится к обработчикам событий, расположенным в расширении конфигурации.
См. также:
СправочникОбъект.<Имя справочника>, метод ПроверитьЗаполнение
Использование в версии:
Доступен, начиная с версии 8.2.
Методическая информация
Практические примеры
Проверить заполнение артикулов в наборе цен
Дополнительная проверка заполнения не очищает список системных проверок.
Где и как запускать
Модуль объекта или набора записей, указанный в подготовке. Обработчик вызывается платформой; не вызывайте его как обычную команду формы.
Подготовка
В отдельной учебной конфигурации создайте независимый непериодический регистр сведений УчебныеЦены с измерением Артикул (Строка 20) и ресурсом Цена (Число 15.2).
Откройте Регистры сведений → УчебныеЦены → Модуль набора записей. Вставьте обработчик и обновите только учебную базу.
Проверяйте записи только в этом учебном регистре. Запись набора с замещением заменяет записи по его отбору, а не просто дописывает одну строку.
Для отдельного контроля вызовите ПроверитьЗаполнение() у своего набора до его записи.
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
Для Каждого Запись Из ЭтотОбъект Цикл
Если Не ЗначениеЗаполнено(Запись.Артикул) Тогда
Отказ = Истина;
Сообщить("В наборе цен есть строка без артикула");
КонецЕсли;
КонецЦикла;
КонецПроцедурыРазбор по шагам
Проверяйте заполнение всех строк набора.
Пустой артикул даёт отказ проверки.
Список ПроверяемыеРеквизиты остаётся для обычной системной обработки.
Как проверить результат
Строка с пустым артикулом даёт отказ проверки.
Две строки с артикулами УЧ-1 и УЧ-2 проходят эту проверку.
Ожидаемый результат
Проверка заполнения обнаруживает строку без ключа.
На что обратить внимание
Это не замена обязательной проверки перед любой записью.
Для одинаковых измерений учитывайте ограничения уникальности регистра.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.