Вывод печатной формы

1. SergSC 16.08.17 15:34 Сейчас в теме
Добрый день!
УФ БП 3.0
Сделано расширение для конфигурации, в которой идет отбор по документам. В результате получаем ссылки на документы (счет, акт, СФ).
Не получается по ссылкам на документы вывести встроенную печатную форму счета, акта, СФ.
Подскажите как используя встроенный механизм и ссылку на документ отправить на печать документ?
По теме из базы знаний
Найденные решения
5. SergSC 17.08.17 10:38 Сейчас в теме
Отладчиком нашел где загвоздка, оказывается отдельная обработка для печати есть, а вовсе не из менеджера!
Вот что получилось:

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

КонецФункции
Показать
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
3. lefthander 16.08.17 15:53 Сейчас в теме
(1)За печать пакета документов отвечает общая форма Печать документов
Не знаю как это будет в расширении, но через внешние обработки я в процедуре
ВыполнитьОткрытиеПечатнойФормыЗавершение(ОбъектыНазначения, ДополнительныеПараметры) Экспорт Общего модуля ДополнительныеОтчетыиОбработкиКлиент я прописал вызов доработанной формы печати
примерно так
ИспользоватьКвитанции = ДополнительныеОтчетыИОбработкиВызовСервера.ПолучитьИспользованиеФункциональнойОпции("IT_УчетКвитанций");  //ПолучитьФункциональнуюОпцию("IT_УчетКвитанций");
	Если ИспользоватьКвитанции И ДополнительныеПараметры.ВыполняемаяКоманда.Представление =  "ПАКЕТ_К" Тогда
		ОткрытьФорму("ОбщаяФорма.IT_ПечатьДокументовК", ПараметрыОткрытия, Форма);
	Иначе
		ОткрытьФорму("ОбщаяФорма.ПечатьДокументов", ПараметрыОткрытия, Форма);
	Конецесли;

Показать

Если используется ФО и название ВПФ "ПАКЕТ_К" - то вызывается доработанная форма ПечатьДокументов, иначе Стандартная форма.
Надеюсь это Вам поможет понять как идет процесс печати пакета документов.
2. Nelli_A86 16.08.17 15:39 Сейчас в теме
Вам нужно к метод Печать() документа вызвать?
4. SergSC 17.08.17 09:07 Сейчас в теме
lefthander lefthander (lefthander)

У меня нет общей формы:
ДополнительныеОтчетыИОбработкиВызовСервера.ПолучитьИспользованиеФункциональнойОпции

Nelli A (Nelli_A86)

Да, нужно обратиться к методу Печать, но из расширения конфигурации, используя форму документа, ссылка на который имеется.
5. SergSC 17.08.17 10:38 Сейчас в теме
Отладчиком нашел где загвоздка, оказывается отдельная обработка для печати есть, а вовсе не из менеджера!
Вот что получилось:

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

КонецФункции
Показать
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)