Имя: Пароль:
1C
1С v8
Обработка печати нескольких печатных форм УТ
0 1c_solop
 
03.04.20
17:18
Используется Обработки.ПечатьОбщихФорм.Печать(...) Формирует табличный документ. На печать не выводит.
    Объектс=РеквизитФормыВЗначение("Объект");
    ОбъектС=РеквизитФормыВЗначение("Объект");
    МассивОбъектов=Новый Массив();
    МассивОбъектов.Добавить(ОбъектС.СсылкаНаОбъект);
    КоллекцияПечатныхФорм=Новый ТаблицаЗначений();
    КоллекцияПечатныхФорм.Колонки.Добавить("ТабличныйДокумент");
    КоллекцияПечатныхФорм.Колонки.Добавить("ИмяВРЕГ");
    КоллекцияПечатныхФорм.Колонки.Добавить("ИмяМакета");
    КоллекцияПечатныхФорм.Колонки.Добавить("СинонимМакета");
    КоллекцияПечатныхФорм.Колонки.Добавить("Картинка");
    КоллекцияПечатныхФорм.Колонки.Добавить("ПолныйПутьКМакету");
    КоллекцияПечатныхФорм.Колонки.Добавить("ИмяФайлаПечатнойФормы");
    КоллекцияПечатныхФорм.Колонки.Добавить("Экземпляров");
    ОбъектыПечати=Новый СписокЗначений;
    ПараметрыПечати=Новый Структура();
    ПараметрыПечати.Вставить("ВыводитьУслуги",ложь);
    ПараметрыПечати.Вставить("ПечатьВвалюте",ложь);
    ПараметрыВывода=Новый Структура();
    ПараметрыВывода.Вставить("ДоступнаПечатьПоКомлектно",ложь);
    ПараметрыОтправки=Новый Структура();
    ПараметрыОтправки.Вставить("Получатель");
    ПараметрыОтправки.Вставить("Текст");
    ПараметрыОтправки.Вставить("Тема");
    ПараметрыВывода.Вставить( "ПараметрыОтправки",ПараметрыОтправки);
    
    Если ОбъектС.ПечататьТорг12 тогда
        НоваяСтрока=КоллекцияПечатныхФорм.добавить();
        НоваяСтрока.ИмяВРЕГ=ВРег("ТОРГ12");
        НоваяСтрока.ИмяМакета=ВРег("ТОРГ12");
        НоваяСтрока.Экземпляров=1;
    КонецЕсли;
    Если ОбъектС.ПечататьМ15 тогда
        НоваяСтрока=КоллекцияПечатныхФорм.добавить();
        НоваяСтрока.ИмяВРЕГ=ВРег("М15");
        НоваяСтрока.ИмяМакета=ВРег("М15");
        НоваяСтрока.Экземпляров=1;
    КонецЕсли;
    Если ОбъектС.ПечататьУПД тогда
        НоваяСтрока=КоллекцияПечатныхФорм.добавить();
        НоваяСтрока.ИмяВРЕГ=ВРег("ПФ_MXL_УниверсальныйПередаточныйДокумент981_ru");
        НоваяСтрока.ИмяВРЕГ=ВРег("УПД");
        НоваяСтрока.ИмяМакета=ВРег("УПД");
        НоваяСтрока.Экземпляров=1;
    КонецЕсли;
    Если ОбъектС.ПечататьСФ тогда
        НоваяСтрока=КоллекцияПечатныхФорм.добавить();
        НоваяСтрока.ИмяВРЕГ=ВРег("ПФ_MXL_СчетФактура1137_625_ru");
        НоваяСтрока.ИмяВРЕГ=ВРег("СчетФактура");
        НоваяСтрока.ИмяМакета=ВРег("СчетФактура");
        НоваяСтрока.Экземпляров=1;
    КонецЕсли;
    
    ОбъектС.Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати,ПараметрыПечати )
    МассивОбъектов.Добавить(ОбъектС.Передача);
    
    ОбъектС.ЗаказыНаЭмиссию.Очистить();
    Для каждого стр из ЗаказыНаПеремещение цикл
        Передача= НайтиПередачу(стр.Значение);
        Если Передача= неопределено тогда
            Сообщить("По заказу на перемещение "+Стр.Значение+" не создан документ передача. Невозможно распечатать печатные формы");
        иначе
            МассивОбъектов.Добавить(Передача);
        КонецЕсли;
    КонецЦикла;
    
    Обработки.ПечатьОбщихФорм.Печать(МассивОбъектов,ПараметрыПечати,КоллекцияПечатныхФорм,ОбъектыПечати,ПараметрыВывода);
1 runoff_runoff
 
03.04.20
18:27
а сервера табличный документ как на клиента приезжает?
2 runoff_runoff
 
03.04.20
18:29
УправлениеПечатьюКлиент.ВыполнитьКомандуПечати()
3 1c_solop
 
04.04.20
17:22
Можно как то вернуть несколько табличных документов с сервера на клиент? Или на сервере несколько сформированных табличных документов объединить в один?
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn