Вывод макета в стандартное окно печати бух 3.0

1. piffoff 82 04.08.15 13:51 Сейчас в теме
Никак не получается воспользоваться это возможностью из внешнего отчета
Отчет делаю с выводом макета
ТабДок.Показать() конечно работает и все выводиться но как
вывести в стандартное окно печати?
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. vovan_victory 63 04.08.15 14:54 Сейчас в теме
(1) piffoff,
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм,"Счет", "Счет",Печать(МассивОбъектов, ОбъектыПечати,Истина));


или
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм,"Счет", "Счет",ТабДок);



Печать(МассивОбъектов, ОбъектыПечати,Истина) - возвращает табличный документ
3. piffoff 82 04.08.15 17:18 Сейчас в теме
(2) vovan_victory, как создать КоллекцияПечатныхФорм? Да и что то не выводит этой процедурой ничего

	КоллекцияПечатныхФорм = УправлениеПечатью.ПодготовитьКоллекциюПечатныхФорм("Макет");
	УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "Макет", "Макет", 
		ПечатьТабДок(),,"Макет");


результат 0
5. vovan_victory 63 05.08.15 11:48 Сейчас в теме
(3) piffoff,
ее не надо создавать.
Вот начало типовой процедуры печати из модуля менеджера

Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
	
	ПараметрыВывода.ДоступнаПечатьПоКомплектно = Истина;


а это процедура из модуля ВПФ

Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
	УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм,"Счет", "Счет",ПечатьД(МассивОбъектов, ОбъектыПечати,Истина));
	
	ОбщегоНазначенияБП.ЗаполнитьДополнительныеПараметрыПечати(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода);	
	
КонецПроцедуры // Печать()
4. ditp 91 04.08.15 17:58 Сейчас в теме
(1) piffoff, 15 минут ковыряния в типовой бухии

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

	рез.Вставить("КоллекцияПечатныхФорм", ОбщегоНазначения.ТаблицаЗначенийВМассив(тз));
	
	рез.Вставить("ПараметрКоманды", Новый Массив);
	Возврат рез;
КонецФункции

&НаКлиенте
Процедура СофрмироватьОтчет(Отказ)
	Парам	= СоздатьСтруктуруПараметров();  // формируем параметры для открытия формы печати
	ОткрытьФорму("ОбщаяФорма.ПечатьДокументов", Парам)
КонецПроцедуры
Показать


Если еще минут 15 поковыряться, то и проще можно сделать, используя процедуры из общих модулей.
6. weissfeuer 45 05.08.15 18:38 Сейчас в теме
(1) piffoff, а можно уточнить, зачем это делать (выводить отчет в обработку для печати документов)? А то мне даже в голову ничего не приходит)
7. ditp 91 06.08.15 09:34 Сейчас в теме
(6) weissfeuer, потому что единый интерфейс печати с кучей дополнительных возможностей - это прекрасно.
13. piffoff 82 07.08.15 10:00 Сейчас в теме
(6) weissfeuer, В общем я на эту общую форму завязал права пользователей на редактирование печатных форм
8. weissfeuer 45 06.08.15 10:15 Сейчас в теме
Этот "единый интерфейс" уже есть по умолчанию в форме отчета. Обработка для печати документов его дублирует. Поэтому я и спрашиваю, зачем выводить отчет в эту форму?
9. ditp 91 06.08.15 10:25 Сейчас в теме
(8) weissfeuer, какой интерфейс есть в результате ТабДок.Показать() ?
10. klinval 338 06.08.15 12:38 Сейчас в теме
(8) weissfeuer, "единый интерфейс", о котором вы говорите, есть только у отчётов на СКД.
11. weissfeuer 45 06.08.15 13:10 Сейчас в теме
(10) klinval, верно, не подумал об этом. А есть какие то задачи в БП 3.0, когда нужно делать отчет не на СКД? Я просто в основном с УНФ работаю и там вроде бы такой необходимости нет, не возникало ни разу.
12. maxis33 45 06.08.15 18:52 Сейчас в теме
Делать необходимо так:
&НаКлиенте
Процедура ПечатьСводаРасходов(Команда)
	Таб = ПечатьСводаРасходовНаСервере();
	
	ОбластиОбъектов = Неопределено;
	
	ИдентификаторПечатнойФормы = "СводРасходов";
	
	КоллекцияПечатныхФорм = УправлениеПечатьюКлиент.НоваяКоллекцияПечатныхФорм(ИдентификаторПечатнойФормы);
	ПечатнаяФорма = УправлениеПечатьюКлиент.ОписаниеПечатнойФормы(КоллекцияПечатныхФорм, ИдентификаторПечатнойФормы);
	ПечатнаяФорма.СинонимМакета = НСтр("ru = 'СводРасходов'");
	ПечатнаяФорма.ТабличныйДокумент = Таб;
	ПечатнаяФорма.ИмяФайлаПечатнойФормы = НСтр("ru = 'СводРасходов'");
	
	УправлениеПечатьюКлиент.ПечатьДокументов(КоллекцияПечатныхФорм, ОбластиОбъектов);
	
КонецПроцедуры
Показать
arsen81; Miket78; SantiouS; Papilion; ivangrant; Наг; piffoff; ditp; +8 Ответить
14. piffoff 82 07.08.15 10:21 Сейчас в теме
(12) maxis33, Все работает спасибо!
15. ivangrant 10 18.07.19 11:07 Сейчас в теме
(12) Спустя четыре года по прежнему актуально. Благодарю.
18. arsen81 22.01.24 17:51 Сейчас в теме
16. user967158 10.04.20 04:51 Сейчас в теме
Коротко и ясно! Спасибо!
17. alexstav 8 07.10.20 14:47 Сейчас в теме
Оставьте свое сообщение

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