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