|
С помощью БСП (подсистема печать) напечатать табличную часть обработки | ☑ | ||
---|---|---|---|---|
0
Borteg
07.06.16
✎
11:26
|
Добрый день. Есть обработка. В ней заполняется табличная часть. Есть команда печати, на нажатие которое происходит формирование печатной формы с помощью это табличной части. Перевожу сейчас все на бсп. Как с помощью бсп вывести на печать табличную часть обработки? При типовом подходе передается МассивОбъектов в команду печати,но у меня объектов нету,мне надо передать табличную часть, а в менеджере я уже сформирую из нее табличный документ и выведу на печать. Как это решается с помощью бсп?
|
|||
1
luter-89
07.06.16
✎
11:36
|
Пройдись отладчиком, далее будет код: Если ТипЗнч(Объект) = Тип("ДокументСсылка.Какой-то) Тогда, Если тип = справочник, то другое. Посмотри есть ли там условие, если тип обработка. Но скорее всего есть, так как есть обработки печати, например Счета на оплату. Передавай сам объект в МассивеОбъектов. И команду настой по примеру типовых команд
|
|||
2
luter-89
07.06.16
✎
11:37
|
У тебя же есть обработка, значит есть объект
|
|||
3
Borteg
07.06.16
✎
11:47
|
(2) При попытки печати из обработки получается, что он не может найти ссылку. Для обработки выдает ошибку.
|
|||
4
Mort
07.06.16
✎
12:12
|
Глубже надо копать. Ты полез в команды формирования печатных форм объектов, смотри ближе к открытию формы печати.
|
|||
5
Borteg
07.06.16
✎
12:20
|
(4) дорылся,а там пытается получить объекты метаданных из переданного массив объектов, а я туда то тз пихал, то пустой массив)
Я так понимаю функция печати документа вызывается всегда один раз, независимо от количества переданных ссылок, и уже кодом при формирования печатной формы надо определить какие ссылки из передаваемых надо печатать и сформировать табличный документ с разделителями для всех документа? |
|||
6
Borteg
07.06.16
✎
12:24
|
(4) но всеравно если использовать типовые методы туда надо ссылки передавать или список, а в команде печати по этим ссылкам запросом снова получаются данные и происходит уже формирование печатной формы. Мне кажется надо просто использовать отдельные методы бсп, и не пытаться сделать все типовым способ как описано в 1с.
|
|||
7
Borteg
07.06.16
✎
13:20
|
&НаКлиенте
Процедура Подключаемый_ВыполнитьКомандуПечати(Команда) //УправлениеПечатьюКлиент.ВыполнитьПодключаемуюКомандуПечати(Команда, ЭтаФорма,МассивДляПечати); ТабДок = СформироватьПечатнуюФормуН(); ИдентификаторПечатнойФормы = "Макет"; МодульУправлениеПечатьюКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("УправлениеПечатьюКлиент"); КоллекцияПечатныхФорм = МодульУправлениеПечатьюКлиент.НоваяКоллекцияПечатныхФорм(ИдентификаторПечатнойФормы); ПечатнаяФорма = МодульУправлениеПечатьюКлиент.ОписаниеПечатнойФормы(КоллекцияПечатныхФорм, ИдентификаторПечатнойФормы); ПечатнаяФорма.СинонимМакета = "Привет"; ПечатнаяФорма.ТабличныйДокумент = ТабДок; ПечатнаяФорма.ИмяФайлаПечатнойФормы = "Привет"; ОбластиОбъектов = Новый СписокЗначений; МодульУправлениеПечатьюКлиент.ПечатьДокументов(КоллекцияПечатныхФорм, ОбластиОбъектов); КонецПроцедуры |
|||
8
Borteg
07.06.16
✎
13:21
|
(7) МодульУправлениеПечатьюКлиент.ПечатьДокументов если заполнено значение табличный документ не формирует его а сразу добавляет. Можно просто сформировать и вывести.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |