1С: Формирование отчёта в обработке из макета
Несколько статей уже на моём сайте на эту тему есть вывод отчета из макета), но они слегка протухли за прошедшее время, и почему-то отображаются не вполне корректно. Потому повторю.
Сначала нужно создать макет:


Нарисуем структуру отчета, присвоим имена блокам, обозначим ячейки которые будут заполнятся параметрами.
Далее на клиенте на форму выведем кнопку, и на неё повесим на неё обработчик заполнения отчета и вывода его на экран:
1 2 3 4 5 6 7 |
&НаКлиенте Процедура СформироватьОтчёт(Команда) ТабличныйДокумент = Новый ТабличныйДокумент; ТабличныйДокумент=ПечатнаяФормаНаСервере(); ТабличныйДокумент.Показать(); КонецПроцедуры |
Формирование и вывод отчета из макета:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
&НаСервере Функция ПечатнаяФормаНаСервере() ТабДок=Новый ТабличныйДокумент; Макет=РеквизитФормыВЗначение("Объект").ПолучитьМакет("МакетУдовлетворённость"); ОбластьШапка=Макет.ПолучитьОбласть("Шапка"); ТабДок.Вывести(ОбластьШапка); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл ОбластьТушка=Макет.ПолучитьОбласть("тушка"); ОбластьТушка.Параметры.ид=ВыборкаДетальныеЗаписи.ИдентификаторОпроса; ТабДок.Вывести(ОбластьТушка); КонецЦикла; ... возврат ТабДок; КонецФункции |