Имя: Пароль:
1C
1С v8
Печать документа "РеализацияТоваровУслуг" из внешней обработки
0 RickRock
 
27.05.16
10:34
Здравствуйте,есть внешняя обработка, на ней кнопка. По нажатию кнопки нужно распечатать документ.Собственно код: Макет=Документы.РеализацияТоваровУслуг.ПолучитьМакет("ПФ_MXL_РеализацияТоваров");
        КоллекцияПечатныхФорм=управлениепечатью.ПодготовитьКоллекциюПечатныхФорм(Макет);
        ПараметрыВывода=управлениепечатью.ПодготовитьСтруктуруПараметровВывода();
ОбъектыПечати=новый СписокЗначений;
массивобъектов=новый Массив();
массивобъектов.Добавить(ДокументРеализации.Ссылка);
        Документы.РеализацияТоваровУслуг.Печать(массивобъектов,ПараметрыВывода,КоллекцияПечатныхФорм,ОбъектыПечати,ПараметрыВывода);
                

Но не получается отправить на печать - ошибка:
{ОбщийМодуль.УправлениеПечатью.Модуль(998)}: Итератор для значения не определен
    Для Каждого ИмяМакета Из ИменаМакетов Цикл
2 Волшебник
 
модератор
27.05.16
10:36
какой тип ИменаМакетов?
3 RickRock
 
27.05.16
10:39
Эта ошибка вываливается из общего модуля.

ИменаМакетов = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ИменаМакетов);
4 RickRock
 
27.05.16
10:45
Есть ли варинты более простого способа печати документа из внешней обработки, имея на документ ссылку?  8.3
5 FIXXXL
 
27.05.16
10:52
навскидку, попробуй вместо
Макет=Документы.РеализацияТоваровУслуг.ПолучитьМакет("ПФ_MXL_РеализацияТоваров");

просто
Макет="ПФ_MXL_РеализацияТоваров";

ты далее даешь ссылку на документ, мож БСП по ссылке+имяМакета само ищет?
6 RickRock
 
27.05.16
11:01
Макет не лежит не в самом документе, а в обработке.То есть найти макет по ссылке, как я понимаю не найдет.

Собственно попробовав Ваш вариант, появилась другая ошибка:

{ОбщийМодуль.УправлениеПечатью.Модуль(807)}: Значение не является значением объектного типа (Метаданные)
ИсточникВнешнихПечатныхФорм = МассивОбъектов[0].Метаданные().ПолноеИмя();
7 hhhh
 
27.05.16
11:04
(3) конфигурация какая у вас?
8 RickRock
 
27.05.16
11:12
Управление торговлей, редакция 11.1 (11.1.4.14)
9 hhhh
 
27.05.16
11:16
(8) ну запустите типовую печать, поставьте точку останова на первой строке внутри процедуры Печать(). И там посмотрите в отладчике, что передается в этих параметрах: массивобъектов,ПараметрыВывода,КоллекцияПечатныхФорм,ОбъектыПечати,ПараметрыВывода
10 RickRock
 
27.05.16
12:09
Есть какие-либо другие варианты печати документов?
11 RickRock
 
27.05.16
16:08
Неужели нет других вариантов?