HelpF.pro

Печатная форма с использованием СКД

Создаем макет СКД, там произвольно или с какими-нибудь условиями выбираем в наборе данных поля табличной части, ставим условие на документ владелец, и задаем оформление. В форме документа добавляем кнопку печать, прописываем в параметрах наш документ и оп-ля - печатная форма готова
Код 1C v 8.х
 Процедура ОсновныеДействияФормыПечать(Кнопка)

 Если Ссылка = Документы.РасчетЗаказа.ПустаяСсылка() тогда
 Предупреждение("Документ не записан");
 Возврат;
 Иначе
 Схема = ПолучитьМакет("Макет1");
 Настройки = Схема.НастройкиПоУмолчанию;
 КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных();
 КомпоновщикНастроек.ЗагрузитьНастройки(Настройки);

ПараметрДок = Новый ПараметрКомпоновкиДанных("документ");
 ЗначениеПараметраДок = КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(ПараметрДок);
 ЗначениеПараметраДок.Значение = Ссылка;
 ЗначениеПараметраДок.Использование = Истина;
 Настройки = КомпоновщикНастроек.Настройки;

 КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
 МакетКомпоновки = КомпоновщикМакета.Выполнить(Схема, Настройки);
 ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
 ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки);
 ДокументРезультат = Новый ТабличныйДокумент;
 ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
 ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
 ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);

 ДокументРезультат.ОтображатьЗаголовки = Ложь;
 ДокументРезультат.ОтображатьСетку = Ложь;
 ДокументРезультат.АвтоМасштаб = Истина;
 ДокументРезультат.Показать();

 КонецЕсли;
КонецПроцедуры   

title
title
Автор: sanja
Опубликовано на сайте: https://HelpF.pro
Прямая ссылка: https://HelpF.pro/faq8/view/1400.html