Создание печатной формы с применением СКД
Создаем макет СКД, там произвольно или с какими-нибудь условиями выбираем в наборе данных поля табличной части, ставим условие на документ владелец, и задаем оформление. В форме документа добавляем кнопку печать, прописываем в параметрах наш документ. Печатная форма готова.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
Процедура ОсновныеДействияФормыПечать(Кнопка) Если Ссылка = Документы.РасчетЗаказа.ПустаяСсылка() тогда Предупреждение("Документ не записан"); Возврат; Иначе Схема = ПолучитьМакет("Макет1"); Настройки = Схема.НастройкиПоУмолчанию; КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных(); КомпоновщикНастроек.ЗагрузитьНастройки(Настройки); ПараметрДок = Новый ПараметрКомпоновкиДанных("документ"); ЗначениеПараметраДок = КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(ПараметрДок); ЗначениеПараметраДок.Значение = Ссылка; ЗначениеПараметраДок.Использование = Истина; Настройки = КомпоновщикНастроек.Настройки; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(Схема, Настройки); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки); ДокументРезультат = Новый ТабличныйДокумент; ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ДокументРезультат); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); ДокументРезультат.ОтображатьЗаголовки = Ложь; ДокументРезультат.ОтображатьСетку = Ложь; ДокументРезультат.АвтоМасштаб = Истина; ДокументРезультат.Показать(); КонецЕсли; КонецПроцедуры |