Чтобы вывести сформированный Табличный документ через общую форму "ПечатьДокументов" (она присутствует если конфигурация на основе библиотеки стандартных подсистем - практически все типовые поставки 1с) нужно использовать следующий алгоритм:
Листинг:
&НаКлиенте
Процедура Печать(Команда)
ТабДок = НапечататьНаСервере(); //Наш таличный докумен (Возвращается из функции)
КоллекцияПечатныхФорм = УправлениеПечатьюКлиент.НоваяКоллекцияПечатныхФорм("Макет");
ПечатнаяФорма = УправлениеПечатьюКлиент.ОписаниеПечатнойФормы(КоллекцияПечатныхФорм, "Макет");
ПечатнаяФорма.ТабличныйДокумент = ТабДок;
КлючУникальности = Строка(Новый УникальныйИдентификатор);
ПараметрыОткрытия = Новый Структура("ИмяМенеджераПечати,ИменаМакетов,ПараметрКоманды,ПараметрыПечати");
ПараметрыОткрытия.ПараметрКоманды = Новый Массив; ПараметрыОткрытия.ПараметрыПечати = Новый Структура;
ПараметрыОткрытия.Вставить("КоллекцияПечатныхФорм", КоллекцияПечатныхФорм);
ОткрытьФорму("ОбщаяФорма.ПечатьДокументов", ПараметрыОткрытия, ВладелецФормы, КлючУникальности);
КонецПроцедуры
Листинг:
&НаКлиенте
Процедура Печать(Команда)
ТабДок = НапечататьНаСервере(); //Наш таличный докумен (Возвращается из функции)
КоллекцияПечатныхФорм = УправлениеПечатьюКлиент.НоваяКоллекцияПечатныхФорм("Макет");
ПечатнаяФорма = УправлениеПечатьюКлиент.ОписаниеПечатнойФормы(КоллекцияПечатныхФорм, "Макет");
ПечатнаяФорма.ТабличныйДокумент = ТабДок;
КлючУникальности = Строка(Новый УникальныйИдентификатор);
ПараметрыОткрытия = Новый Структура("ИмяМенеджераПечати,ИменаМакетов,ПараметрКоманды,ПараметрыПечати");
ПараметрыОткрытия.ПараметрКоманды = Новый Массив; ПараметрыОткрытия.ПараметрыПечати = Новый Структура;
ПараметрыОткрытия.Вставить("КоллекцияПечатныхФорм", КоллекцияПечатныхФорм);
ОткрытьФорму("ОбщаяФорма.ПечатьДокументов", ПараметрыОткрытия, ВладелецФормы, КлючУникальности);
КонецПроцедуры
КоллекцияПечатныхФорм = Новый ТаблицаЗначений;
ОтветитьУдалитьКоллекцияПечатныхФорм.Колонки.Добавить("ИмяМакета");
КоллекцияПечатныхФорм.Колонки.Добавить("ИмяВРЕГ");
КоллекцияПечатныхФорм.Колонки.Добавить("СинонимМакета");
КоллекцияПечатныхФорм.Колонки.Добавить("ТабличныйДокумент");
КоллекцияПечатныхФорм.Колонки.Добавить("Экземпляров");
КоллекцияПечатныхФорм.Колонки.Добавить("Картинка");
КоллекцияПечатныхФорм.Колонки.Добавить("ПолныйПутьКМакету");
КоллекцияПечатныхФорм.Колонки.Добавить("ИмяФайлаПечатнойФормы");
НовСТР = КоллекцияПечатныхФорм.Добавить();
НовСТР.ИмяМакета = "СчетЗаказ";
НовСТР.ИмяВРЕГ = "СЧЕТЗАКАЗ";
НовСТР.Экземпляров = 1;
ОбъектыПечати = Новый СписокЗначений;
ПараметрыОтправки = Новый Структура;
ПараметрыОтправки.Вставить("Получатель",Неопределено);
ПараметрыОтправки.Вставить("Текст","");
ПараметрыОтправки.Вставить("Тема","");
ПараметрыВывода = Новый Структура;
ПараметрыВывода.Вставить("ДоступнаПечатьПоКомплектно", Ложь);
ПараметрыВывода.Вставить("ПараметрыОтправки",ПараметрыОтправки);