Имя: Пароль:
1C
1С v8
Запрос из регистра сведений
0 Serman
 
06.02.21
20:58
Здравствуйте! Помогите новичку, пожалуйста. Нужно сделать в параметре печатной области Текст2, чтобы отображались Дата и Номер договора заключенного ранее, который уже есть в базе данных. Пишет что "Поле объекта не обнаружено (СрокРазмещенияНачало)". Спасибо!

Функция ПечатнаяФорма(МассивОбъектов, ОбъектыПечати, ИмяМакета)
    
    ТабличныйДокумент = Новый ТабличныйДокумент;
    
    ПервыйДокумент = Истина;
    
    Для Каждого ТекущийДокумент Из МассивОбъектов Цикл
        
        Если Не ПервыйДокумент Тогда
            ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
        КонецЕсли;
        ПервыйДокумент = Ложь;
        
        НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;
        
        Если ИмяМакета = "Общ_Выселение" Тогда
            Запрос = Новый Запрос;
            Запрос.Текст =
            "ВЫБРАТЬ
            |    ОтветственныеЛицаОрганизацийСрезПоследних.Сотрудник
            |ИЗ
            |    РегистрСведений.ОтветственныеЛицаОрганизаций.СрезПоследних КАК ОтветственныеЛицаОрганизацийСрезПоследних
            |ГДЕ
            |    ОтветственныеЛицаОрганизацийСрезПоследних.Организация.Ссылка = &Ссылка";
            Запрос.Параметры.Вставить("Ссылка",ТекущийДокумент.Организация.Ссылка);
            Выборка = Запрос.Выполнить().Выгрузить();
            
            Запрос2 = Новый Запрос;
            Запрос2.Текст =
            "ВЫБРАТЬ
            |    ДвижениеКонтингентаСрезПоследних.Группа,
            |    ДвижениеКонтингентаСрезПоследних.Студент.Специальность КАК Специальность,
            |    ДвижениеКонтингентаСрезПоследних.Студент.АнкетаАбитуриента.КемВыданДокументУдостоверяющийЛичность КАК КемВыдан,
            |    ДвижениеКонтингентаСрезПоследних.Студент.АнкетаАбитуриента.КодПодразделенияДокументУдостоверяющийЛичность КАК КодДокумента,
            |    ДвижениеКонтингентаСрезПоследних.Студент.АнкетаАбитуриента.НомерДокументаУдостоверяющегоЛичность КАК НомерДокумента
            |ИЗ
            |    РегистрСведений.ДвижениеКонтингента.СрезПоследних КАК ДвижениеКонтингентаСрезПоследних
            |ГДЕ
            |    ДвижениеКонтингентаСрезПоследних.Студент.ФизЛицо = &ФизЛицо";
            Запрос2.Параметры.Вставить("ФизЛицо",ТекущийДокумент.Жилец.ФизЛицо);
            Выборка2 = Запрос2.Выполнить().Выгрузить();
            
            Запрос3 = Новый Запрос;
            Запрос3.Текст =
               "ВЫБРАТЬ
               |    Общ_РазмещениеЖильцовСрезПоследних.СрокРазмещенияНачало КАК СрокРазмещенияНачало1
               |ИЗ
               |    РегистрСведений.Общ_РазмещениеЖильцов.СрезПоследних КАК Общ_РазмещениеЖильцовСрезПоследних
               |ГДЕ
               |    Общ_РазмещениеЖильцовСрезПоследних.СрокРазмещенияНачало = &СрокРазмещенияНачало";
            Запрос3.Параметры.Вставить("ДатаДоговора",ТекущийДокумент.СрокРазмещенияНачало);
            Выборка3 = Запрос3.Выполнить().Выгрузить();
            
            ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_Общ_Выселение_Общ_Выселение";
            
            Макет = УправлениеПечатью.МакетПечатнойФормы("Документ.Общ_Выселение.ПФ_MXL_Общ_Выселение");
            
            Шапка = Макет.ПолучитьОбласть("Шапка");
            Текст1 = Макет.ПолучитьОбласть("Текст1");
            Текст2 = Макет.ПолучитьОбласть("Текст2");
            Текст3 = Макет.ПолучитьОбласть("Текст3");
            Подвал = Макет.ПолучитьОбласть("Подвал");
            
            Для каждого Строка из ТекущийДокумент.Организация.КонтактнаяИнформация Цикл
                Если Строка.Вид = Справочники.ВидыКонтактнойИнформации.ОрганизацияЮридическийАдрес Тогда
                    Город = Строка.Город;
                    АдресОрг = Строка.Представление;
                ИначеЕсли Строка.Вид = Справочники.ВидыКонтактнойИнформации.ОрганизацияТелефон Тогда
                    ТелефонОрг = Строка.Представление;
                ИначеЕсли Строка.Вид = Справочники.ВидыКонтактнойИнформации.ОрганизацияФакс Тогда
                    ФаксОрг = Строка.Представление;
                ИначеЕсли Строка.Вид = Справочники.ВидыКонтактнойИнформации.ОрганизацияEmail Тогда
                    ПочтаОрг = Строка.Представление;
                КонецЕсли;
            КонецЦикла;
            ПолноеНаименованиеОрганизации = ТекущийДокумент.Организация.НаименованиеПолное;
            ФИОРУК = Выборка[0].Сотрудник.Физлицо.ФИОРодительныйПадеж;
            Если  (ТекущаяДата()-ТекущийДокумент.Жилец.ФизЛицо.ДатаРождения)/60/60/24/365>18 Тогда
                ФИО = ТекущийДокумент.Жилец;
            Иначе
                ФИО = ТекущийДокумент.Договор.Заказчик;
            КонецЕсли;
            Если  (ТекущаяДата()-ТекущийДокумент.Жилец.ФизЛицо.ДатаРождения)/60/60/24/365>18 Тогда
                ДатаДоговора = ТекущийДокумент.СрокРазмещенияНачало;
            КонецЕсли;
            ТабличныйДокумент.Очистить();
            Шапка.Параметры.Номер = ТекущийДокумент.Номер;
            Шапка.Параметры.Город = Город;
            Шапка.Параметры.ДатаДокумента = Формат(ТекущийДокумент.Дата, "ДЛФ=ДД");
            ТабличныйДокумент.Вывести(Шапка);
            Текст1.Параметры.Текст =ПолноеНаименованиеОрганизации+", именуемый в дальнейшем «Наймодатель», в лице директора "+ФИОРУК+", действующего на основании Устава, с одной стороны, и гр. "+ФИО+", именуемый(ая) в дальнейшем «Наниматель», с другой стороны, заключили настоящее Соглашение о нижеследующем:";
            ТабличныйДокумент.Вывести(Текст1);
            ДатаДоговора =Формат(ТекущийДокумент.СрокРазмещенияНачало, "ДЛФ=ДД");
            НомерДокумента = ТекущийДокумент.Номер;
            Текст2.Параметры.Текст = "1.    Ранее заключенный договор «О взаимной ответственности между администрацией учебного заведения и проживающим в общежитии» от "+ДатаДоговора+", за № "+НомерДокумента+",считать расторгнутым.";
            ТабличныйДокумент.Вывести(Текст2);
            ТабличныйДокумент.Вывести(Текст3);    
            
            Подвал.Параметры.АдресОрг = АдресОрг;
            Подвал.Параметры.ТелефонОрг = ТелефонОрг;
            Подвал.Параметры.ФаксОрг = ФаксОрг;
            Подвал.Параметры.ПочтаОрг = "е-mail: "+ПочтаОрг;
            Подвал.Параметры.Организация = ТекущийДокумент.Организация.НаименованиеПолное;
            Подвал.Параметры.БанкСчет = ТекущийДокумент.Организация.БанковскийСчетПоУмолчанию;
            Подвал.Параметры.ИНН = ТекущийДокумент.Организация.ИНН+"/"+ТекущийДокумент.Организация.КПП;
            Подвал.Параметры.ФИОНайм = ТекущийДокумент.Ответственный;
            
            Подвал.Параметры.ФИОнанПолн = ТекущийДокумент.Жилец;
            Для каждого Строка из  ТекущийДокумент.Жилец.КонтактнаяИнформация Цикл
                Если Строка.Вид = Справочники.ВидыКонтактнойИнформации.АдресЖильца Тогда
                    АдресНан = Строка.Представление;
                КонецЕсли;
            КонецЦикла;
            Для каждого ДОкумент из Выборка2 Цикл
                Подвал.Параметры.ПаспортныеДанные  = "Паспорт "+ДОкумент.КодДокумента+" №"+ДОкумент.НомерДокумента+" выдан "+ ДОкумент.КемВыдан;
                Подвал.Параметры.специальность = ДОкумент.специальность;
                Подвал.Параметры.группа = ДОкумент.Группа;
            КонецЦикла;
            Подвал.Параметры.ФИОнан = ТекущийДокумент.Жилец;

            ТабличныйДокумент.Вывести(Подвал);
        КонецЕсли;
        
        УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент, НомерСтрокиНачало, ОбъектыПечати, ТекущийДокумент);
        
    КонецЦикла;
    
    ТабличныйДокумент.АвтоМасштаб = Истина;
    
    Возврат ТабличныйДокумент;
    
КонецФункции // ПечатнаяФорма()
1 mkalimulin
 
06.02.21
21:07
СрокРазмещенияНачало1
2 mkalimulin
 
06.02.21
21:20
1. В МассивОбъектов  не документ/не заполнен документ
или
2. В документе нет такого поля СрокРазмещенияНачало
3 Serman
 
08.02.21
19:24
(2) Да там берется дата заключенного договора из справочника. Ну, должна браться... Я не догоняю как все-таки сделать так, чтобы база хоп и отобразила дату из справочника
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.