Работа с макетом. Вывод информации в области.

1. Vhett 13.02.20 11:00 Сейчас в теме
Товарищи. Долго искал информацию, как разбить вывод отчёта по областям макета. До этого с макетами не приходилось работать. Может у вас имеются идеи?

Сделал макет, как на фото ниже. При формировании отчёта, печатается только Область_1 и друг под дружкой. А мне нужно на листе А4 в альбомном формате уместить 12 областей по порядку.
Прикрепленные файлы:
Найденные решения
2. burgomister 60 13.02.20 11:07 Сейчас в теме
Процедура Печать(ТабДок) Экспорт

//создание нового табличного документа
ТабДок = Новый ТабличныйДокумент;

//получение макета для печати расходной накладной
Макет = Документы.РасходнаяНакладная.ПолучитьМакет("Основной");

//получим область "Заголовок" как новый табличный документ (!)
Область = Макет.ПолучитьОбласть("Заголовок");

//укажем параметры области
Область.Параметры.НомерДокумента = Номер;
Область.Параметры.От = Дата;
Область.Параметры.Кому = Контрагент;

//выведем заполненную область "Заголовок" в табличный документ
ТабДок.Вывести(Область);

//выведем область "Шапка" в табличный документ
ТабДок.Вывести(Макет.ПолучитьОбласть("Шапка"));

//получение области "Строка"
//обратите внимание, что это можно сделать до цикла по строкам
Область = Макет.ПолучитьОбласть("Строка");

//вывод строк документа в печатную форму
Для Каждого СтрСостава Из Состав Цикл

//заполнение параметров области из строки табличной части
Область.Параметры.Заполнить(СтрСостава);

//вывод сформированной области в табличный документ
ТабДок.Вывести(Область);

КонецЦикла;

//вывод области "Подвал"
Область = Макет.ПолучитьОбласть("Подвал");
Область.Параметры.ИтогоКоличество = Состав.Итог("Количество");
Область.Параметры.ИтогоСумма = Состав.Итог("Сумма");
ТабДок.Вывести(Область);

//установим параметры отображения табличного документа
ТабДок.ТолькоПросмотр = Истина;
ТабДок.ОтображатьЗаголовки = Истина;
ТабДок.ОтображатьСетку = Ложь;

//покажем табличный документ на экране
ТабДок.Показать();

КонецПроцедуры
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
6. independ 1556 14.02.20 20:43 Сейчас в теме
(1)
ОтчетОбъект = РеквизитФормыВЗначение("Объект");
    Макет = ОтчетОбъект.ПолучитьМакет("Промокод");
    Область = Макет.ПолучитьОбласть("Строка|Столбец");
    
    Столбик=0;
    КолвоПоГоризонтали=4;
    
    Для сч=НачНомер по КонНомер Цикл
        
        Номер=Префикс+Прав("000000"+Формат(Сч,"ЧГ="),6);
        Область.Параметры.Номер =Номер;
        
        Рисунок = Область.Рисунки.Штрихкод;
        
        ПараметрыШтрихкода = Новый Структура;
        ПараметрыШтрихкода.Вставить("Ширина",          Окр(Рисунок.Ширина / КоличествоМиллиметровВПикселе*1.1));
        ПараметрыШтрихкода.Вставить("Высота",          Окр(Рисунок.Высота / КоличествоМиллиметровВПикселе*1.1));
        ПараметрыШтрихкода.Вставить("Штрихкод",        СокрЛП(Номер));
        ПараметрыШтрихкода.Вставить("ТипКода",         2);
        ПараметрыШтрихкода.Вставить("ОтображатьТекст", Ложь);
        
        Рисунок.Картинка = МенеджерОборудованияВызовСервера.ПолучитьКартинкуШтрихкода(ПараметрыШтрихкода);
        Столбик    = ?(Столбик > КолвоПоГоризонтали-1,1,Столбик+1);    
        Если Столбик=1 Тогда
            ТабличныйДокумент.Вывести(Область);
        Иначе
            ТабличныйДокумент.Присоединить(Область);
        КонецЕсли;
        
    КонецЦикла;    
    
    Возврат ТабличныйДокумент;

    
КонецФункции
Показать
Прикрепленные файлы:
2. burgomister 60 13.02.20 11:07 Сейчас в теме
Процедура Печать(ТабДок) Экспорт

//создание нового табличного документа
ТабДок = Новый ТабличныйДокумент;

//получение макета для печати расходной накладной
Макет = Документы.РасходнаяНакладная.ПолучитьМакет("Основной");

//получим область "Заголовок" как новый табличный документ (!)
Область = Макет.ПолучитьОбласть("Заголовок");

//укажем параметры области
Область.Параметры.НомерДокумента = Номер;
Область.Параметры.От = Дата;
Область.Параметры.Кому = Контрагент;

//выведем заполненную область "Заголовок" в табличный документ
ТабДок.Вывести(Область);

//выведем область "Шапка" в табличный документ
ТабДок.Вывести(Макет.ПолучитьОбласть("Шапка"));

//получение области "Строка"
//обратите внимание, что это можно сделать до цикла по строкам
Область = Макет.ПолучитьОбласть("Строка");

//вывод строк документа в печатную форму
Для Каждого СтрСостава Из Состав Цикл

//заполнение параметров области из строки табличной части
Область.Параметры.Заполнить(СтрСостава);

//вывод сформированной области в табличный документ
ТабДок.Вывести(Область);

КонецЦикла;

//вывод области "Подвал"
Область = Макет.ПолучитьОбласть("Подвал");
Область.Параметры.ИтогоКоличество = Состав.Итог("Количество");
Область.Параметры.ИтогоСумма = Состав.Итог("Сумма");
ТабДок.Вывести(Область);

//установим параметры отображения табличного документа
ТабДок.ТолькоПросмотр = Истина;
ТабДок.ОтображатьЗаголовки = Истина;
ТабДок.ОтображатьСетку = Ложь;

//покажем табличный документ на экране
ТабДок.Показать();

КонецПроцедуры
3. Vhett 14.02.20 12:02 Сейчас в теме
(2)
Область = Макет.ПолучитьОбласть("Заголовок");

Увы, сколько разными способами пробовал, не помогает. Жалуется на "Метод объекта не обнаружен ПолучитьОбласть".
8. Nitrochaos 4 09.07.22 17:11 Сейчас в теме
(2)
Для Каждого СтрСостава Из Состав Цикл
что значит "Состав" в данной строчке?
9. burgomister 60 10.07.22 17:34 Сейчас в теме
(8) Состав - таблица значений, например. Это просто пример.
4. burgomister 60 14.02.20 12:13 Сейчас в теме
Области должны быть названы как горизонтальные, так и вертикальные
5. Vhett 14.02.20 20:20 Сейчас в теме
(4) Проблема вообще в другом оказалась. У меня в макете настройки не сохраняются. Слетают области, да и сам макет немного перекашивает :\
7. burgomister 60 15.02.20 05:42 Сейчас в теме
(5) Так я об этом и написал - названия областей должны быть.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот