|
Получение и сохранение табличных форм из ДокументСсылка<ИмяДокумента> 8.3 БП3 | ☑ | ||
---|---|---|---|---|
0
Дмитрий_92
09.07.15
✎
14:36
|
Здравствуйте!
Тема вроде отражает суть, теперь) Надеюсь сможете направить в нужную сторону =) Пишу внешнюю обработку. Хочется чтобы она могла предоставить пользователю весь список типов документов которые есть в бд, а потом из выбранных пользователем типов документов достать все ссылки на документы и их уже сохранить. Этакая групповая печать, только в файлы. Список документов я достал. Пользователь их выбирать может. ссылки на конкретные документы получаю. А как их преобразовать в файлы? Моя обработка: https://yadi.sk/d/PLG7Gu8ThmCQH |
|||
1
DTXqueque
09.07.15
✎
14:38
|
Ты про макеты?
|
|||
2
Дмитрий_92
09.07.15
✎
14:53
|
(1)
Вот я ссылку на конкретную счет фактуру достал, запихал её в таблицу, вместе с остальными ссылками на конкретные счет-фактуры/реализации и т.п. Таблицу я буду обходить в цикле, правильно? А как мне вот эту конкретную счет фактуру то сохранить в файл на диске. |
|||
3
DTXqueque
09.07.15
✎
14:54
|
У менеджера должна быть функция печати, которая выдаёт табличный документ. Дальше в СП
|
|||
4
Дмитрий_92
09.07.15
✎
15:27
|
Что-то вроде?
ДокументОбъект = ССылка.ПолучитьОбъект; ДокументОбъект.Печать(); Процедура печати которая в менеджере документа: Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) А вот параметры откуда брать? В синтаксис помощнике про процедуру печать() ничего нет. Единственное что я нашел это комментарий к процедуре в документе реализация товаров и услуг: // Сформировать печатные формы объектов // // ВХОДЯЩИЕ: // ИменаМакетов - Строка - Имена макетов, перечисленные через запятую // МассивОбъектов - Массив - Массив ссылок на объекты которые нужно распечатать // ПараметрыПечати - Структура - Структура дополнительных параметров печати // // ИСХОДЯЩИЕ: // КоллекцияПечатныхФорм - Таблица значений - Сформированные табличные документы // ПараметрыВывода - Структура - Параметры сформированных табличных документов Но вот не совсем понятно почему в комментарии входящих параметров только 3 штуки, а в процедуре 5. Ну и имена макетов. Их отуда-то же взять надо. |
|||
5
Дмитрий_92
10.07.15
✎
11:49
|
Макет я так понял надо вручную указывать.
Параметры можно пустые передать Или туда можно что-то полезное запихать? А что за объектыПечати? Получиться что-то такое: ДокументОбъект = ДокументСсылка.ПолучитьОбъект(); ПараметрыПечати = Новый Структура; Макет = ДокументОбъект.ПолучитьМакет("ИмяМакета"); КоллекцияПечатныхФорм = УправлениеПечатью.ПодготовитьКоллекциюПечатныхФорм(Макет); ОбъектыПечати = ???; ПараметрыВывода = УправлениеПечатью.ПодготовитьСтруктуруПараметровВывода(); ДокументОбъект.Печать(ДокументОбъект, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода); |
|||
6
Дмитрий_92
13.07.15
✎
15:30
|
Получилось вот так:
ПараметрыПечати = Новый Структура; Если ТипЗнч(СсылкаДокумент) = Тип("ДокументСсылка.РеализацияТоваровУслуг") Тогда Макет = "Акт"; ИначеЕсли ... Тогда ... КонецЕсли; КоллекцияПечатныхФорм = УправлениеПечатью.ПодготовитьКоллекциюПечатныхФорм(Макет); ОбъектыПечати = Новый СписокЗначений; ПараметрыВывода = УправлениеПечатью.ПодготовитьСтруктуруПараметровВывода(); ДокументМенеджер = Документы[СсылкаДокумент.Метаданные().Имя]; ДокументМенеджер.Печать(СсылкаДокумент, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода); Стр = КоллекцияПечатныхФорм[0]; Возврат Стр.ТабличныйДокумент; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |