|
УФ: Печать документа | ☑ | ||
---|---|---|---|---|
0
lisicin
30.11.16
✎
03:57
|
Здравствуйте, прошу подсказать, переделываю документ под УФ в БП 3.0, застопорился на вопросе печати. Привожу код.
В модуле формы: &НаКлиенте Процедура Печать(Команда) ПечатьНаСервере(); КонецПроцедуры &НаСервере Процедура ПечатьНаСервере() ДокументОбъект = РеквизитФормыВЗначение("Объект"); ДокументОбъект.Печать("Квитанция"); КонецПроцедуры В модуле объекта: Процедура Печать(ИмяМакета, КоличествоЭкземпляров = 1, НаПринтер = Ложь, НепосредственнаяПечать = Ложь) Экспорт Если ИмяМакета = "Квитанция" Тогда ТабДокумент = ПечатьДокумента(); КонецЕсли; Возврат ТабДокумент; //УниверсальныеМеханизмы.НапечататьДокумент(ТабДокумент, КоличествоЭкземпляров, НаПринтер, ОбщегоНазначения.СформироватьЗаголовокДокумента(ЭтотОбъект), НепосредственнаяПечать); КонецПроцедуры Функция ПечатьДокумента() Макет = ЭтотОбъект.ПолучитьМакет("Квитанция"); ТабДок = Новый ТабличныйДокумент; Запрос = Новый Запрос; Запрос.Текст = \\делаем запрос \\заполняем области и параметры ТабДок.Вывести(ОбластьПодвал); ТабДок.ПолеСверху = 0; ТабДок.ПолеСлева = 2; ТабДок.ПолеСнизу = 0; ТабДок.ПолеСправа = 5; ТабДок.АвтоМасштаб = Истина; ТабДок.ОриентацияСтраницы = ОриентацияСтраницы.Портрет; ТабДок.ИмяПараметровПечати = "Квитанция"; Возврат ТабДок; КонецФункции Как я понимаю в БП 2.0 вывод на печать осуществлялся строчкой //УниверсальныеМеханизмы.НапечататьДокумент(ТабДокумент, КоличествоЭкземпляров, НаПринтер, ОбщегоНазначения.СформироватьЗаголовокДокумента(ЭтотОбъект), НепосредственнаяПечать); Чем и как мне заменить его в 3.0? |
|||
1
lisicin
30.11.16
✎
04:00
|
(0) В первой процедуре модуля объекта строка
Возврат ТабДокумент; лишняя. |
|||
2
Рэйв
30.11.16
✎
07:07
|
Процедура Печать
переделай в функцию и //------ &НаКлиенте Процедура Печать(Команда) ТабДок=ПечатьНаСервере(); ТабДок.показать(); КонецПроцедуры &НаСервере Функция ПечатьНаСервере() ДокументОбъект = РеквизитФормыВЗначение("Объект"); ТабДок=ДокументОбъект.Печать("Квитанция"); Возврат ТабДок; КонецПроцедуры |
|||
3
Рэйв
30.11.16
✎
07:07
|
хотя на мой вкус слишком много лишних вызовов. Можно было сделать экспортной Функция ПечатьДокумента() , напрямую вызвать ее с клиента и не париться
|
|||
4
Рэйв
30.11.16
✎
07:08
|
ну или через
&НаСервере Процедура ПечатьНаСервере() |
|||
5
lisicin
30.11.16
✎
09:09
|
(2) Да, именно к такому варианту в результате своих изысканий я и пришёл, не хватало только
ТабДок.показать(); всё искал что-нибудь, связанное с печатью :) Спасибо! |
|||
6
lisicin
12.12.16
✎
01:22
|
Подскажите пожалуйста.
Есть внутренняя обработка, которая по документам Закупка создает и проводит документ Поступление. Теперь нужно чтобы при необходимости каждое созданное поступление выводилось на печать по форме ТОРГ12. Я так понимаю здесь велосипед изобретать не надо и можно обратиться к встроенной процедуре, но не могу найти к какой. Платформа 8.3, конфигурация БП 3.0 |
|||
7
Torquader
12.12.16
✎
01:46
|
(6) Наверное, нужная процедура живёт в обработчике нажатия на кнопку "печать".
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |