Проверяет заполнение реквизитов. Для реквизитов, у которых при конфигурировании свойство "Проверка заполнения" установлено в значение "Показывать ошибку" и реквизит не заполнен, будет сформировано сообщение об ошибке.
Синтаксис
ПроверитьЗаполнение()Полное описание, параметры и ограничения
ПланОбменаОбъект.<Имя плана обмена>.ПроверитьЗаполнение (ExchangePlanObject.<Exchange plan name>.CheckFilling)
ПланОбменаОбъект.<Имя плана обмена> (ExchangePlanObject.<Exchange plan name>)
ПроверитьЗаполнение (CheckFilling)
Доступен, начиная с версии 8.2.
Синтаксис:
ПроверитьЗаполнение()
Возвращаемое значение:
Тип: Булево.
Истина - ошибок не обнаружено, Ложь - в противном случае.
Описание:
Проверяет заполнение реквизитов. Для реквизитов, у которых при конфигурировании свойство "Проверка заполнения" установлено в значение "Показывать ошибку" и реквизит не заполнен, будет сформировано сообщение об ошибке.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
Примечание:
Выполнение метода приводит к возникновению события ОбработкаПроверкиЗаполнения.
См. также:
СправочникОбъект.<Имя справочника>, событие ОбработкаПроверкиЗаполнения
Использование в версии:
Доступен, начиная с версии 8.2.
Методическая информация
Практические примеры
Проверить обязательный реквизит учебного узла
У своего узла АдресУчебногоУзла настроен обязательным. Пустой адрес не проходит ПроверитьЗаполнение, после задания собственной строки проверка проходит без записи.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Создайте НОВУЮ пустую файловую учебную базу, не копию рабочего каталога. В Конфигураторе задайте корню имя Учебная85. Не добавляйте эти объекты в рабочую УТ/КА2/УНФ/БП.
Справочники → Добавить: имя УчебныеТовары. Длина кода 10, тип кода Строка, автонумерация и контроль уникальности включены, длина наименования 100.
Для УчебныеТовары включите иерархию групп и элементов. Добавьте реквизиты Артикул (Строка, длина 20) и Цена (Число, 12 цифр, 2 дробных, неотрицательное). Проверка заполнения для этих учебных реквизитов не устанавливается.
Добавьте табличную часть Штрихкоды: Штрихкод (Строка, длина 20) и Основной (Булево). Обновите конфигурацию базы данных. Модули объектов оставьте пустыми.
Создайте серверный общий модуль УчебныеЗадачи и команду учебной обработки, вызывающую ВыполнитьПример() Экспорт. Каждый фрагмент выполняйте отдельно, не склеивайте их в одну процедуру.
В отдельной пустой конфигурации Учебная85 создайте Планы обмена → УчебныйОбмен: длина кода 9, тип Строка, наименование длиной 100. Распределённая информационная база выключена; состав плана пустой.
Добавьте реквизит АдресУчебногоУзла: Строка длиной 100, Проверка заполнения = Показывать ошибку. Модуль объекта и подписки должны быть пустыми; не добавляйте отправку сообщений или внешние действия.
Добавьте макет УчебнаяПамятка типа Текстовый документ, одна строка: Этот узел используется только для учебных примеров. История данных для плана не включена. Обновите конфигурацию базы данных.
Каждый фрагмент запускайте отдельно на сервере в ВыполнитьПример() Экспорт общего модуля УчебныеЗадачи. УчебныйОбмен не является существующим рабочим обменом КА2 или УТ.
Узел каждый раз новый и периферийный. Существующие узлы и текущий узел базы не меняются. Запись, блокировка и удаление далее выполняются только над своим новым UUID в собственной отменяемой транзакции.
Если Метаданные.ПланыОбмена.Найти("УчебныйОбмен") = Неопределено Тогда
ВызватьИсключение "Сначала создайте собственный учебный план обмена";
КонецЕсли;
Узел = ПланыОбмена.УчебныйОбмен.СоздатьУзел();
Если Узел.ЭтотУзел Тогда
ВызватьИсключение "Нельзя изменять текущий узел информационной базы";
КонецЕсли;
Узел.Код = "У00000001";
Узел.Наименование = "Узел проверки заполнения";
Узел.АдресУчебногоУзла = "";
Сообщить(Не Узел.ПроверитьЗаполнение());
Узел.АдресУчебногоУзла = "example.invalid";
Сообщить(Узел.ПроверитьЗаполнение());
Сообщить(Узел.ЭтоНовый());
Сообщить(Узел.Ссылка.Пустая());Разбор по шагам
Код и имя заданы, но собственный обязательный реквизит намеренно пуст.
Первый вызов ПроверитьЗаполнение возвращает Ложь и может показать сообщение об обязательном поле.
Второй вызов выполняется после задания собственного адреса-строки. Это проверка заполненности, не DNS или сетевого соединения.
Оба вызова не записывают объект. Проверяем новый объект и пустую ссылку.
Как проверить результат
Четыре сравнения Истина; сообщение первого отказа ожидаемо.
Адрес example.invalid заполнен, но он не является действующим сервером обмена.
Ожидаемый результат
Показана обязательность реквизита отдельно от записи и сетевой доступности.
На что обратить внимание
В рабочей конфигурации проверка может вызывать бизнес-обработчики; не переносите пример без изучения модуля.
Истина не является подтверждением соединения с адресом.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.