7.7 Обязательное заполнение поля

Тема в разделе "Типовые решения "1С:Предприятие 7.7"", создана пользователем Leka21, 31 авг 2011.

  1. TopicStarter Overlay
    Leka21
    Offline

    Leka21

    Регистрация:
    25 май 2011
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    Есть острая необходимость заставить диспечеров заполнять обязательно заполнять поля документа (номер дома, квартиры)
    Модуль документа:
    Код:
    Процедура ИнформацияОДоме()
    Спр = СоздатьОбъект("Справочник.Дома");
    СпрУлиц = СоздатьОбъект("Справочник.Улицы");
    СпрУлиц.НайтиЭлемент(Улица1);
    Найден = 0;
    Спр.ВыбратьЭлементыПоРеквизиту("Улица",СпрУлиц.ТекущийЭлемент(),0,0); 
    
    Пока Спр.ПолучитьЭлемент() = 1 Цикл
    Если СокрЛП(Спр.Наименование) = СокрЛП(ДомКорпус1) Тогда
    Найден = 1;
    Прервать;
    КонецЕсли;
    КонецЦикла;
    
    Если Найден = 1 Тогда        
    ОбслуживающаяОрганизация=Спр.ТекущийЭлемент().СТУ;  
    
    
    КонецЕсли;
    КонецПроцедуры
    //-----------------------------------------------
    Процедура ВводНового(); 
    Автор = глПользователь.ТекущийЭлемент();
    Автор11 = глПользователь.ТекущийЭлемент();
    
    КонецПроцедуры  
    
    
    // *** Формирование акта на скрытые работы
    
    Процедура Сформировать3()   //Печать Распоряжения
    Ном = 0;     
    
    
    
    Таб = СоздатьОбъект("Таблица");
    Таб.ИсходнаяТаблица("Таблица");    
    
    // *** Ищем "Должность" из справочника "Сотрудники"  
    
    
    конст= Константа.ПОЛицо.Получить(ТекущаяДата());  
    СпрДолж = СоздатьОбъект("Справочник.Сотрудники"); 
    СпрДолж.НайтиЭлемент(Конст);    
    у=СпрДолж.ТекущийЭлемент().Должность;
    
    
    
    Таб.ПараметрыСтраницы(1,,,0,0,0,0,,,1,,);
    
    
    Таб.ВывестиСекцию("Адрес");    
    Таб.ВывестиСекцию("Акт");    
    
    
    Таб.ПараметрыСтраницы(1,,,,,,,,,1);
    Таб.ТолькоПросмотр(0);
    Таб.Показать("Акт на скрытые работы", "");
    КонецПроцедуры
    
    Знаю что одним из вариантов будет вывисти предупреждение:
    Код:
    Если ПустоеЗначение(ДомКорпус1)=1 Тогда 
    Предупреждение("Введите номер дома"); 
    КонецЕсли;
    
    
    Но вот вопрос где это нужно написать?
  2. WaRDeR
    Offline

    WaRDeR Модераторы Команда форума Модератор

    Регистрация:
    23 ноя 2006
    Сообщения:
    3.263
    Симпатии:
    14
    Баллы:
    29
    В идеале описать еще предопределенную процедуру ПриЗаписи().
    В ней выполнять проверку, если требуемые поля не заполнены, то использовать функцию СтатусВозврата(0), что бы запись не происходила.

Поделиться этой страницей