Имя: Пароль:
1C
1С v8
Вывод колонтитула печатная форма!
0 KonstantinK90
 
08.04.16
06:37
Всем привет! Помогите вывести колонтитул, уже все испробовал не получается! Вот ниже код:
ТабДокумент = ИнициализироватьТабДокумент(ЭтотОбъект,Макет,"Заявка",ПечатьШК);
        
        ТабДокумент.ПолеСнизу = 10;
        ТабДокумент.НижнийКолонтитул.НачальнаяСтраница = 1;
        ТабДокумент.НижнийКолонтитул.ВертикальноеПоложение = ВертикальноеПоложение.Низ;
        ТабДокумент.НижнийКолонтитул.ТекстВЦентре = "Бла - Бла!!!";
        ТабДокумент.НижнийКолонтитул.Выводить = Истина;

        // Выводим шапку накладной
        ОбластьМакета = Макет.ПолучитьОбласть("Шапка");
        
        ОбластьШапкаСтрокаРабот =  Макет.ПолучитьОбласть("ШапкаСтрокаРабот");
        ОбластьСтрокаРабот = Макет.ПолучитьОбласть("СтрокаРабот");
        ОбластьИтогоРабот = Макет.ПолучитьОбласть("ИтогоРабот");
        
        ОбластьШапкаСтрокаЗапчасти = Макет.ПолучитьОбласть("ШапкаСтрокаЗапчасти");
        ОбластьСтрокаЗапчасти = Макет.ПолучитьОбласть("СтрокаЗапчасти");
        ОбластьИтогЗапчасти = Макет.ПолучитьОбласть("ИтогоЗапчасти");
        
        ОбластьПодвал1 = Макет.ПолучитьОбласть("ОбластьПодвал1");
        ОбластьПодвал2 = Макет.ПолучитьОбласть("ОбластьПодвал2");
        
        ТекстЗаголовка="Заявка № "+Номер+" от " + Формат(Дата,"ДЛФ=DD");
        ОбластьМакета.Параметры.ТекстЗаголовка=ТекстЗаголовка;
        //УДВ 22.03.12+
        ОбластьМакета.Параметры.ПредставлениеПоставщика = ПредставлениеЮрЛица(ОрганизацияРаботы);
        //УДВ 22.03.12-
        ОбластьМакета.Параметры.ПредставлениеПлательщика = ПредставлениеЮрЛица(Контрагент);
        // + САВ (19.11.2010)
        //ОбластьМакета.Параметры.ПредставлениеПолучателя = ПредставлениеЮрЛица(Грузополучатель);
        ОбластьМакета.Параметры.ПредставлениеПолучателя = ПредставлениеЮрЛица(Грузополучатель, Ложь) + ?(ПустаяСтрока(ТелефоныЗаказчика), "", ", тел.: " + СокрЛП(ТелефоныЗаказчика));
        // - САВ (19.11.2010)
        
        ОбластьМакета.Параметры.Заполнить(Автомобиль);
        ОбластьМакета.Параметры.ТипЗН=ТипЗН;
        ОбластьМакета.Параметры.Пробег=""+Пробег+?(ПробегВМилях," MI","");
                          
        //Кузнецов 05 04 2016
        ОбластьМакета.Параметры.ПричинаОбращения = ПричинаОбращения;
        //Кузнецов 05 04 2016
        ОбластьМакета.Параметры.ВремяРаботы = " Планируемое время работ: " + ПланируемаяДатаНачалаРабот + " по " + ПланируемаяДатаЗавершения + ".";
        ТабДокумент.Вывести(ОбластьМакета);                                
        
        //Шапка работ
        ТабДокумент.Вывести(ОбластьШапкаСтрокаРабот);
        
        // Создаем массив для проверки вывода
        МассивВыводимыхОбластей = Новый Массив;
        
        МассивКолонтитул  = Новый Массив;
                
         //Услуги
        НомерСтраницы   = 1;
        КоличествоСтрок = Услуги.Количество();
        Ном             = 0;
        Для Каждого Стр Из Услуги Цикл
            ном = ном + 1;
            ОбластьСтрокаРабот.Параметры.Заполнить(Стр);
            ОбластьСтрокаРабот.Параметры.НомерСтр = Стр.НомерСтроки;
            
            ////
            Если Ном = 1 Тогда // Процедура считает сколько страниц будет
                СклонениеПоПадежамЛиста = получитьЛист(НомерСтраницы);
                ОбластьПодвал1.Параметры.КоличествоЛистов = "Документ составлен на " +  НомерСтраницы + " " + СклонениеПоПадежамЛиста;
                //ТабДокумент.Вывести(ОбластьЗаголовокТаблицы);    
            Иначе                
                МассивВыводимыхОбластей.Очистить();
                МассивВыводимыхОбластей.Добавить(ОбластьШапкаСтрокаРабот);
                МассивВыводимыхОбластей.Добавить(ОбластьСтрокаРабот);
                МассивВыводимыхОбластей.Добавить(ОбластьИтогоРабот);
                //МассивВыводимыхОбластей.Добавить(ОбластьПодвал2);//////
                Если Ном = КоличествоСтрок Тогда
                    МассивВыводимыхОбластей.Добавить(ОбластьПодвал1);
                КонецЕсли;    
                                
                Если Ном <> 1 И НЕ ТабДокумент.ПроверитьВывод(МассивВыводимыхОбластей) Тогда
                                        
                    НомерСтраницы = НомерСтраницы + 1;
                    ТабДокумент.ВывестиВертикальныйРазделительСтраниц();
                    ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
                    СклонениеПоПадежамЛиста = получитьЛист(НомерСтраницы);
                    ТабДокумент.Вывести(ОбластьШапкаСтрокаРабот);
                    //ТабДокумент.Вывести(ОбластьПодвал1);
                КонецЕсли;                
            КонецЕсли;      
            ////
                    
            ТабДокумент.Вывести(ОбластьСтрокаРабот);
        КонецЦикла;
        
        ОбластьИтогоРабот.Параметры.Н_Ч_Итого = Услуги.Итог("Количество");
        ОбластьИтогоРабот.Параметры.ИтогСумма = Услуги.Итог("Сумма");
        ТабДокумент.Вывести(ОбластьИтогоРабот);
ТабДокумент.Показать();
1 KonstantinK90
 
08.04.16
06:38
не могу понять что не так делаю!
2 KonstantinK90
 
08.04.16
06:54
Есть какие мысли?
3 KonstantinK90
 
08.04.16
07:03
в чем косяк?
4 KonstantinK90
 
08.04.16
07:09
мне нужно на каждой новой странице в конце выводить нужную область строку! Как это сделать помогите!?
5 birkoFFFF
 
08.04.16
07:14
Не твой случай ?
http://its.1c.ru/db/metod8dev#content:2225:hdoc:_top:колонтитул

Особенности использования колонтитулов табличного документа

Данный раздел описывает особенности работы с колонтитулами табличного документа из встроенного языка 1С:Предприятие.

Работа с колонтитулами

При выводе в пустой табличный документ другого табличного документа в результирующий документ перенесутся также и колонтитулы исходного документа. Поэтому, если необходима программная настройка колонтитулов, то ее следует производить либо после вывода всего отчета, либо после вывода в документ хотя бы одной области.
6 KonstantinK90
 
08.04.16
07:28
А как передать область макета в колонтитул?
7 Fedor-1971
 
08.04.16
09:09
(0) выводи колонтитул последним в табличном документе. Т.е. не сначала заполнили колонтитул, а потом табличный документ - нужно наоборот сначала заполняем табличный документ (он чистит колонтитулы по какой-то ему ведомой причине) потом пишем колонтитулы
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой