Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Как сформировать типовую печ.форму документа, имея ссылку на него

Как сформировать типовую печ.форму документа, имея ссылку на него
Я
   altaykniga
 
24.10.16 - 16:17
Привет всем! Можете пинать, но найти не получилось быстро

Во внешней обработке выполняется некоторый код, создается документ ЗаказНаПроизводство, далее его необходимо напечатать. Варианта нужно 2: отправлять сразу на принтер или выводить на экран печ.форму. Как этого добиться?

в обработке выполняю след.код:

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


в итоге печ.форма формируется, но общая форма "ПечатьДокументов" не открывается. Может есть какая-нибудь типовая процедура в общих модулях, которая выводит на экран печатные формы документов, имея ссылки на них (документы одного типа)
 
 
   DrShad
 
1 - 24.10.16 - 16:18
в процедуре Печать смотри
   altaykniga
 
2 - 24.10.16 - 16:37
(1) много там понаписано...

ну а НаКлиенте проще вызвать печать доков, имея ссылки на них? Добавил на форму внешней обработки реквизит СписокДокументовДляПечати, с помощью Обработки заполняю этот список нужными документами, после окончания обработки возвращаюсь наКлиент.. Как теперь тут распечатать доки по списку?
   Boleev
 
3 - 24.10.16 - 16:38
БСП?
   altaykniga
 
4 - 24.10.16 - 16:38
(0) УНФ 1.6.5
   altaykniga
 
5 - 24.10.16 - 16:39
(3) ДА
   DrShad
 
6 - 24.10.16 - 16:40
у каждого дока есть модуль менеджера, в типовых процедуры печати находятся в нем - там и смотри как называется процедура, которая выводит нужный макет

а вообще есть еще процедуры  функции, которые управляют печатью
   DrShad
 
7 - 24.10.16 - 16:42
+(6) и тут уже сделать групповую печать не так просто
   altaykniga
 
8 - 24.10.16 - 16:43
(6) в модуле менеджера есть фнукция Печать(), но открытие общей формы "ПечатьДокументов" происходит еще раньше, в модуле команды формы "Печать"
   Boleev
 
9 - 24.10.16 - 16:43
Раньше была функция ВыполнитьКомандуПечатиНаПринтер
   DrShad
 
10 - 24.10.16 - 16:44
(8) ты же уже спрашивал как распечатать документы по списку
 
 Рекламное место пустует
   DrShad
 
11 - 24.10.16 - 16:45
кури РС НастройкиПечатиОбъектов
   altaykniga
 
12 - 24.10.16 - 16:54
(11) нет такого в УНФ 1.6
   Dmitry1c
 
13 - 24.10.16 - 16:55
А как раньше было просто!


УниверсальныеМеханизмы.НапечататьДокумент...
   DrShad
 
14 - 24.10.16 - 16:55
(12) а в УТ 11 есть
   altaykniga
 
15 - 24.10.16 - 19:31
всем большое спасибо за помощь, сделал следующим образом:
после выполнения кода процедуры наСервере получил список доков для печати и наКлиенте написал:

[1с]
УправлениеПечатьюКлиент.ВыполнитьКомандуПечати("Документ.ЗаказНаПроизводство","ТребованиеНаСклад",МассивДоковДляПечати,ЭтаФорма,);
[/1с]
   altaykniga
 
16 - 25.10.16 - 15:28
(15) А кто знает, как реализовать данных механизм для внешней печатной формы?

т.е. есть ВПФ, как программно вызвать печать массива документов ?
   altaykniga
 
17 - 25.10.16 - 15:38
(16) тема закрыта.

написал так:
УправлениеПечатьюКлиент.ВыполнитьКомандуПечати("Документ.ЗаказНаПроизводство","ВнешняяПечатнаяФорма.СопроводительныйЯрлык",МассивДоковДляПечати,ЭтаФорма,);

   altaykniga
 
18 - 25.10.16 - 16:31
столкнулся с такой проблемой:
выполняется код
[1с]
УправлениеПечатьюКлиент.ВыполнитьКомандуПечати("Документ.ЗаказНаПроизводство","ВнешняяПечатнаяФорма.СопроводительныйЯрлык",МассивДоковДляПечати,ЭтаФорма,);
[/1С]

Открывается общая форма ПечатьДокументов, в табличныйДокумент выходит сформированная печатная форма.

Если закрыть общую форму ПечатьДокументов и выполнить печать повторно (выполнить указанный выше код), то ПолеТабличногоДокумента не очищается, т.е. теперь у меня в этом поле получается 2 сформированные печ.формы одного и того же документа
   altaykniga
 
19 - 25.10.16 - 17:14
(18) тема закрыта, забыл, что нужно очистить МассивДоковДляПечати перед выполнением кода

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует