|
Вывод печатной формы макета при нажатии на кнопку Выполнить | ☑ | ||
---|---|---|---|---|
0
vladis222
31.07.19
✎
10:02
|
Подскажите,пожалуйста,что я делаю неправильно,у меня есть обработка и нужно чтобы при заполнении ее полей,выводился печатный макет. Пока на данный момент у меня готова шапка,хотел посмотреть как она выведется...
&НаСервере Процедура ВыполнитьНаСервере() ТабДок = Новый ТабличныйДокумент; Макет = Обработки.ПечатьРеализацииПоПоставщикам.ПолучитьМакет("Макет"); Шапка = Макет.ПолучитьОбласть("Шапка"); ШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы"); ЦПС = Макет.ПолучитьОбласть("ЦПС"); Таблица = Макет.ПолучитьОбласть("Таблица"); Подвал = Макет.ПолучитьОбласть("Подвал"); Итог = Макет.ПолучитьОбласть("ИтогТаблица"); //Заполняем параметры шапки КонтактноеЛицо=Объект.Договор.КонтактноеЛицо; НазваниеДоговора=Объект.Договор.Наименование; Должность=КонтактноеЛицо.ДолжностьПоВизитке; ФИОиз = ""; ЗП= ФизическиеЛицаЗарплатаКадры.Просклонять(КонтактноеЛицо.Наименование,2,ФИОиз,); ДолжностьКонтактногоЛица = ""; МассивСтрок = ИзСтрокиВМассив(Должность," "); Для Каждого Строка ИЗ МассивСтрок Цикл ДолжностьКонтактногоЛица =ДолжностьКонтактногоЛица+" "+СклонениеФИО(Строка,,,,); КонецЦикла; ДатаДоговора = Формат(Объект.Договор.Дата,"ДЛФ=DD"); Шапка.Параметры.Должность=ДолжностьКонтактногоЛица; Шапка.Параметры.Менеджер=ФИОиз; Шапка.Параметры.Договор=НазваниеДоговора; Шапка.Параметры.ДатаДоговора=ДатаДоговора; Шапка.Параметры.Дата = Формат(Объект.ДатаКонец,"ДЛФ=DD"); Шапка.Параметры.Место = Объект.МестоСоставления; ТабДок.Вывести(Шапка); КонецПроцедуры Функция ПолучитьМакетНаСервере() ОтчетОбъект = РеквизитФормыВЗначение("Объект"); НовыйМакет = ОтчетОбъект.ПолучитьМакет("Макет"); Возврат НовыйМакет; КонецФункции &НаКлиенте Процедура Заполнить(Команда) ВыполнитьНаСервере(); ПолучитьМакетНаСервере(); КонецПроцедуры То есть,я пишу функцию на сервере,которая возвращает макет,затем ее вызываю в клиенте,оно не ругается на ошибки но при нажатии на кнопку Выполнить,ничего мне не выдает... что я не правильно написал в коде? |
|||
1
Василий Алибабаевич
31.07.19
✎
10:04
|
(0) На клиенте нужна хотя бы одна команда "Показать". А так - оно бы и радо, но...
|
|||
2
mikecool
31.07.19
✎
10:05
|
все сделано, но ничего не вернулось и то, что сформировалось - осталось только в памяти, а не показалось пользователю
ПолучитьМакетНаСервере - вообще зачем? |
|||
3
mikecool
31.07.19
✎
10:08
|
первая функция должна заканчиваться типа
ТабДок.Вывести(Шапка); Возврат ТабДок; КонецПроцедуры основная: &НаКлиенте Процедура Заполнить(Команда) ТабДок = ВыполнитьНаСервере(); ТабДок.Показать(); //ПолучитьМакетНаСервере(); КонецПроцедуры |
|||
4
vladis222
31.07.19
✎
10:30
|
(3) Спасибо огромное! А подскажите,пожалуйста,как сделать так чтобы макет выводился не как табличная форма а как цельный документ перед печатью?
|
|||
5
dka80
31.07.19
✎
11:05
|
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, Метаданные().ПолноеИмя(), "Твое имя", ТабДок )
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |