Как распечатать два разных документа в одном макете?
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Написать печатную форму, которая формирует две типовые печатные формы из этих документов, и результаты объединяет...
Схематично как-то так. Все остальное - надо смотреть в вашей конкретной конфигурации.
ТабДокРезультат = Новый ТабличныйДокумент();
ТабДокРезультат.Вывести(ПолучитьРезультатПечатиПервогоДокумента());
ТабДокРезультат.Вывести(ПолучитьРезультатПечатиВторогоДокумента());
Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт
КомандаПечати = КомандыПечати.Добавить();
КомандаПечати.Идентификатор = "ПропускФизЛицо";
КомандаПечати.Представление = НСтр("ru = 'Печать'");
КомандаПечати.ПроверкаПроведенияПередПечатью = Истина;
КомандаПечати = КомандыПечати.Добавить();
КомандаПечати.Идентификатор = "ПропускФизЛицо,ПропускТранспортноеСредство";
КомандаПечати.Представление = НСтр("ru = 'Печать пропуск ФЛ и ТС'");
КомандаПечати.ПроверкаПроведенияПередПечатью = Истина;
КонецПроцедуры
// Сформировать печатные формы объектов
//
// ВХОДЯЩИЕ:
// МассивОбъектов - Массив - Массив ссылок на объекты которые нужно распечатать.
// ПараметрыПечати - Структура - Структура дополнительных параметров печати.
//
// ИСХОДЯЩИЕ:
// КоллекцияПечатныхФорм - Таблица значений - Сформированные табличные документы.
// ПараметрыВывода - Структура - Параметры сформированных табличных документов.
//
Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
Для Каждого СтрокаТЧ из МассивОбъектов Цикл
Сообщить("вот" + СтрокаТЧ);
КонецЦикла;
Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ПропускФизЛицо") Тогда
ТабличныйДокумент = СформироватьПечатнуюФормуПропускФЛ(МассивОбъектов, ОбъектыПечати);
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
КоллекцияПечатныхФорм,
"ПропускФизЛицо",
НСтр("ru='Печать Ф.Л.'"),
ТабличныйДокумент);
ИначеЕсли УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ПропускТранспортноеСредство") Тогда
МассивПропусковТС = Новый Массив;
Для Каждого ПропускФЛ из МассивОбъектов Цикл
Если ЗначениеЗаполнено(ПропускФЛ.ПропускРазовыйДляТранспортногоСредства) Тогда
МассивПропусковТС.Добавить(ПропускФЛ.ПропускРазовыйДляТранспортногоСредства);
Конецесли;
КонецЦикла;
ТабличныйДокумент =Документы._ИВ_ПропускРазовыйДляТранспортногоСредства.СформироватьПечатнуюФорму(МассивПропусковТС, ОбъектыПечати);
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
КоллекцияПечатныхФорм,
"ПропускТранспортноеСредство",
НСтр("ru='Печать Т.С.'"),
ТабличныйДокумент,"Документы._ИВ_ПропускРазовыйДляТранспортногоСредства.ПропускРазовыйТранспортноеСредство");
КонецЕсли;
КонецПроцедуры
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот