1С 8.3 Проверка реквизита на заполнение (программно) - Программист 1С Минск. Автоматизация бизнеса.

Перейти к контенту

1С 8.3 Проверка реквизита на заполнение (программно)

Данные > Примеры кода 1С > 1С 8.3 Форма, элементы
Проверка на заполнение реквизитов формы реализовано на уровне платформы различными свойствами: АвтоОтметкаНезаполненного (подчеркивание не заполненного реквизита), в свойствах формы признак ПроверятьЗаполнениеАвтоматически, в свойствах реквизитов Проверка заполнения (выдавать ошибку). Однако часто, по разным причинам, необходимо выполнять программную проверку на заполнение элементов формы (реквизитов).

Проверка реквизита на заполнение на форме (&НаКлиенте) в 1С 8.3:
&НаКлиенте
Процедура ПримерыПроверкиЗаполнения(Команда)

    Если НЕ
ЗначениеЗаполнено(ВыборБанка) Тогда
       
Сообщить("Не выбран Банк для загрузки!");
        Возврат;
    КонецЕсли;

КонецПроцедуры
Проверка реквизитов табличной части на заполнение на форме (&НаКлиенте) в 1С 8.3:
&НаКлиенте
Процедура Сформировать2(Команда)

    Для Каждого
СтрокаТЧ из ТабЧасть цикл
        Если Не
ЗначениеЗаполнено(СтрокаТЧ.Банк) Тогда

           
//Отказ=Истина; - если например процедура ПриЗаписи
           
сообщить("Не заполнен Банк в строке "+ СтрокаТЧ. номерстроки);

        КонецЕсли;
    КонецЦикла;

КонецПроцедуры
Проверка заполнения в табличной части при вводе строки в 1С 8.3:
Процедура ТабличнаяЧасть1ПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)

   //ЗначениеЗаполнено(Элементыформы.ТабличнаяЧасть1.ТекущаяСтрока.Валюта) - не правильно
   //будет ошибка "Проверка мутабельных значений на заполненность не поддерживается"

   // Заполнение поля Валюта значением по умолчанию.
   Если НоваяСтрока И Не Копирование Тогда
       Если Элементыформы.ТабличнаяЧасть1.ТекущаяСтрока.Валюта = Справочники.Валюты.ПустаяСсылка() Тогда
          Элементыформы.ТабличнаяЧасть1.ТекущаяСтрока.Валюта = ЭтоОсновнаяВалюта;
       КонецЕсли;
   КонецЕсли;

КонецПроцедуры


Проверка заполнения на форме до выполнения основных процедур в 1С 8.3:
&НаКлиенте
Процедура Сформировать(Команда) // До создания документов и вызова процедур

   
ПроверитьЗаполнение();

    Если Не
ПроверитьЗаполнение() Тогда
        Возврат;
    Иначе
       
// Заполнен
        // Продолжение выполнения кода...
   
КонецЕсли;

КонецПроцедуры
0
Комментарии
____________________
Copyright©, «Программист 1С в г.Минске», 28.04.2020
Перепечатка текста и фотографий разрешена при наличии прямой ссылки на источник
Назад к содержимому