Имя: Пароль:
1C
 
Групповая печать документов для ВПФ Ут 11.2.3
0 Lessberg
 
31.08.16
12:01
Добрый день!

Как мы знаем групповая печать делается при помощи выбора необходимых документов в списке и командой отправки на печать к примеру "задание на отбор товаров".

Помогите пожалуйста разобраться как это реализовать для ВПФ. Излазил всю конфигурацию УТ и ничего дельного не нашел :(
1 Горогуля
 
31.08.16
12:06
Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
    Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ПФ_MXL_БланкиПолиса") Тогда
        // Формируем табличный документ и добавляем его в коллекцию печатных форм.
        УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм,
            "ПФ_MXL_БланкиПолиса",
            "Бланки полиса",
            ПечатьБланков(МассивОбъектов, ОбъектыПечати),
            ,
            "ПФ_MXL_БланкиПолиса");
    КонецЕсли;
    
    ОбщегоНазначенияБП.ЗаполнитьДополнительныеПараметрыПечати(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода);
КонецПроцедуры
2 Lessberg
 
31.08.16
12:16
Как кодвставить ? О_О Не могу найти..

Я сейчас делаю так

Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
    
    УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "ЗаданиеНаОтборТоваров", "Задание на отбор товаров ВНЕШНЯЯ", СформироватьПечатнуюформу(МассивОбъектов[0], ОбъектыПечати));
КонецПроцедуры
3 Горогуля
 
31.08.16
12:20
МассивОбъектов[0]
4 Горогуля
 
31.08.16
12:20
на здоровье
5 Lessberg
 
31.08.16
12:28
Все равно один документ выводится. В макеты разрыв страниц есть, если это как то может влиять
6 Горогуля
 
31.08.16
12:34
(5) а должно сколько?
7 Lessberg
 
31.08.16
12:42
В списке документов я выделяю несколько и нажимаю печать "ЗаданиеНаОтборТоваров". Это типовая, вот результат.

https://pp.vk.me/c631921/v631921375/43476/DUM4bcHQpqA.jpg

https://pp.vk.me/c631921/v631921375/4347f/qGYfxHrf5tU.jpg


Вот надо, чтобы так же при выборе нескольких документов ВПФ выводила на печать сразу несколько доков
8 Горогуля
 
31.08.16
12:47
а ты процедуре сказал, что надо сразу несколько доков, а не только нулевой?
9 Lessberg
 
31.08.16
12:53
В этом и загвоздка, не пойму как сказать :)
10 Горогуля
 
31.08.16
12:54
(9) посмотри, как сказал я
11 Lessberg
 
31.08.16
12:59
Убираю массив [0] начинается ругаться на реквизит Номер документа.. Сейчас покопаю в эту сторону
12 Горогуля
 
31.08.16
13:21
лучше позови программиста
13 Lessberg
 
31.08.16
13:36
Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
    
    Для Каждого СсылкаНаДокумент Из МассивОбъектов Цикл

        // Формируем табличный документ и добавляем его в коллекцию печатных форм.

        УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм,
            "ЗаданиеНаОтборТоваров",
            "ЗаданиеНаОтборТоваров",
            СформироватьПечатнуюФорму(СсылкаНаДокумент, ОбъектыПечати),
            ,
            "ЗаданиеНаОтборТоваров");
    КонецЦикла;
КонецПроцедуры


Перебираю массив и вывожу на печать, итог такой же.. 1 документ на печати
14 Горогуля
 
31.08.16
13:38
точнее, один табличный документ в коллекции
15 Горогуля
 
31.08.16
13:39
/*говорит в сторону*/
ну вот на хрена что-то объяснять человеку, не способному понять?
16 Lessberg
 
31.08.16
14:03
Значит сейчас буду разбираться как в этот массив не один документ передать.

Вы делает вброс отрывочной информации, а не объяснения.
17 Горогуля
 
31.08.16
14:44
(16) а никто не обещал с тобой нянькаться
в куда передать? там уже всё передано без тебя
18 Lessberg
 
31.08.16
15:14
В общем сделал так.

Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
    
    Для Каждого СсылкаНаДокумент Из МассивОбъектов Цикл

        // Формируем табличный документ и добавляем его в коллекцию печатных форм.

        УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм,
            "ЗаданиеНаОтборТоваров",
            "ЗаданиеНаОтборТоваров",
            СформироватьПечатнуюФорму(МассивОбъектов),
            ,
            "ЗаданиеНаОтборТоваров");
    КонецЦикла;
КонецПроцедуры


Функция СформироватьПечатнуюФорму(МассивОбъектов)
    
    
    
    ТабличныйДокумент = Новый ТабличныйДокумент;
    ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_Макет";
    ТабличныйДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Портрет;
    
    МакетОбработки = ПолучитьМакет("Макет");
    
    Шапка = МакетОбработки.ПолучитьОбласть("Шапка");
    Основание = МакетОбработки.ПолучитьОбласть("Основание");
    Строка = МакетОбработки.ПолучитьОбласть("Строка");
    Подвал = МакетОбработки.ПолучитьОбласть("Подвал");
    
    Для Каждого ССылкаНаДокумент Из МассивОбъектов Цикл
    ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();

    КонецЦикла;
    
    Возврат ТабличныйДокумент;    
    
КонецФункции


Все заработало как надо. Спасибо за наводку с массивами.
19 Горогуля
 
31.08.16
15:21
эээ.. а где... где всё? зачем тебе столько разделителей невесть чего? а зачем два раза массив обходить?
20 Lessberg
 
31.08.16
15:31
Тебе нужен код всего запроса ? Я его убрал

Разделитель нужен после каждого документа - он есть.

Два раза массив выводить не стоило, убрал. Спасибо!
21 Горогуля
 
31.08.16
15:36
>Тебе нужен код всего запроса ?
спасибо, у меня свой