|
Вызов печатной формы | ☑ | ||
---|---|---|---|---|
0
PavelShu
30.09.12
✎
14:47
|
Внешняя подключаемая печатная форма (обработка), управляемое приложение.
В модуле объекта процедура Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт ПараметрыВывода.ДоступнаПечатьПоКомплектно = Истина; Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "ТОРГ13") Тогда Сообщить("Печатаю Торг13"); УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "ТОРГ13", "ТОРГ-13", ПечатнаяФорма(МассивОбъектов, ОбъектыПечати, "ТОРГ13")); КонецЕсли; КонецПроцедуры // Печать() При СерверномВызове из функции Функция СведенияОВнешнейОбработке() Экспорт Появляется печатная форма как надо. Но есть еще в этой функции команда ВызовКлиентскогоМетода, Которая открывает форму этой обработки. На форме кнопка вызова печатной формы: &НаСервере Процедура ПечатьНакладной(Док,Копий) МассивОбъектов = Новый Массив(); МассивОбъектов.Добавить(Док); КоллекцияПечатныхФорм = Новый ТаблицаЗначений; КоллекцияПечатныхФорм.Колонки.Добавить("ИмяВРЕГ"); КоллекцияПечатныхФорм.Колонки.Добавить("ИмяМакета"); КоллекцияПечатныхФорм.Колонки.Добавить("Картинка"); КоллекцияПечатныхФорм.Колонки.Добавить("ПолныйПутьКМакету"); КоллекцияПечатныхФорм.Колонки.Добавить("СинонимМакета"); КоллекцияПечатныхФорм.Колонки.Добавить("ТабличныйДокумент"); КоллекцияПечатныхФорм.Колонки.Добавить("Экземпляров"); Стр = КоллекцияПечатныхФорм.Добавить(); Стр.ИмяВРЕГ = "ТОРГ13"; Стр.ИмяМакета = "ТОРГ13"; Стр.Экземпляров = Копий; ОбъектыПечати = Новый СписокЗначений; ПараметрыВывода = Новый Структура; ПараметрыВывода.Вставить("ДоступнаПечатьПоКомплектно", Истина); ПараметрыВывода.Вставить("ОтправительЭлектронногоПисьма", Неопределено); ПараметрыВывода.Вставить("ПолучательЭлектронногоПисьма", Неопределено); Обработка = РеквизитФормыВЗначение("Объект"); Обработка.Печать(МассивОбъектов,КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода); ЗначениеВРеквизитФормы(Обработка,"Объект"); КонецПроцедуры При нажатии на кнопку отрабатывает Сообщить("Печатаю Торг13"); из модуля объекта, но печатная форма не открывается. Как ее можно открыть из модуля формы? |
|||
1
PavelShu
02.10.12
✎
07:56
|
Пробовал вызвать
УправлениеПечатьюКлиент.ВыполнитьКомандуПечати("Обработка.ПечатьПакетаДокументов", // Для вызова метода менеджера обработки "Печать". Она ищется в составе конфигурации :( "ТОРГ13", ПараметрКоманды, ЭтаФорма, // Форма владелец Неопределено ); Похоже из внешней подключаемой обработки невозможно вызвать общую форму печати документов, т.к. ей нужно передать путь, к менеджеру печати, а внешняя обработка не является частью конфигурации и после подключения через пользовательский интерфейс еще и не является внешним файлом. Наверно переносится в хранилище и запускается от туда, трассировать такую обработку в отладчике тоже не получается, т.к. управление передается не во внешний подключаемый файл :( |
|||
2
Мимохожий Однако
02.10.12
✎
08:08
|
(2)чтобы трассировать обработку можно посмотреть во временной папке созданный конфигурацией файл и в нём поставить точку останова.
|
|||
3
gvk
02.10.12
✎
11:01
|
Попробуйте вызывать не процедуру УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию, а процедуру Печать() из модуля МЕНЕДЖЕРА объекта.
Например, Документы.РеализацияТоваров.Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) |
|||
4
PavelShu
02.10.12
✎
20:07
|
Но мне не нужно вызывать печать документа из внешней обработки.
Нужно вызвать процедуру печати которая находится во внешней обработки из формы этой же обработки. А внешняя внешняя обработка подключена через "Администритование->Дополнительные отчеты и обработки" как внешняя печатная форма. В результате подключения в журнале и в документе в группе печать, появляется пункт меню "Дополнительные печатные формы.." После выбора "Дополнительные печатные формы.." появляется список команд, которые были описаны в этой внешней обработке. Первая команда, сразу вызывает печатную форму и работает как надо. Вторая команда вызывает форму этой же обработки с кнопками. Пользователь должен крыжиками выбрать нужные печатные формы и нажать на кнопку печать. Вызывать печать документов в составе конфигурации не требуется. Нужно вызвать печатные формы из этой же внешней обработки. |
|||
5
leksv1
23.10.12
✎
09:57
|
Столкнулся с этой же проблемой, у тебя получилось ее решить?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |