Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
10 окт 2024, 23:21

Помогите вывести на печатную форму "Печать и подпись" (картинку)

Автор Сергей Поляков, 04 авг 2018, 10:07

0 Пользователей и 1 гость просматривают эту тему.

Сергей Поляков

Здравствуйте. У меня есть обработка внешняя, которая выгружает печатную форму документа "Акт сверки" на диск в формате PDF. Так же она отправляет данную печатную форму вложением на электронный адрес контрагента.
Работает это все в БП 3.0, но после обновления, а именно начиная с релиза 3.0.64.34 обработка перестала работать.
Ранее в БП во многих документах были 2 кнопки "Печать" и "Печать с подписью и печатью", а сейчас просто одна кнопка "Печать", которая выводит печатную форму на экран, а уже далее мы устанавливаем флажок "Подпись и печать", после чего на печатной форме прорисовывается подпись и печать, если флажок убираем, то картинка с печатью исчезает, т.е. все интерактивно.

У меня и отправка приходит на электронку без картинки печати, и выгруженный файл на диске тоже без картинки печати.
команду для выгрузки я использую стандартную:

----------------------
ФорматыСохранения = Новый Массив;
               Если Объект.ФорматВыгрузки = 0 Тогда                                              
                  ФорматыСохранения.Добавить(ТипФайлаТабличногоДокумента.XLS);
               ИначеЕсли Объект.ФорматВыгрузки = 1 Тогда
                  ФорматыСохранения.Добавить(ТипФайлаТабличногоДокумента.PDF);
               КонецЕсли;
               
               ДополнительныеПараметры.Вставить("ФорматыСохранения", ФорматыСохранения);
            
               АдресКомандОтправки = АдресКомандОтправки(УникальныйИдентификатор);
            
               ВыбранныеКоманды = Новый Массив;
               
                         ВыбранныеКоманды.Добавить("КомандаОтправки0");
                                          
               //Теперь документ сохраним в папку и при желании распечатаем
                              
               ПараметрыПечати = Новый Структура;
                                              
               //Данная процедура получит табличныйДокумент
               ПечатныеФормы = УправлениеПечатьюВызовСервера.СформироватьПечатныеФормыДляБыстройПечати("Документ.АктСверкиВзаиморасчетов",
                  "АктСверки", МассивОбъектов, ПараметрыПечати);
               
               МассивТабДоков = ПечатныеФормы.ТабличныеДокументы.ВыгрузитьЗначения();
               
               Для Каждого ПечатнаяФорма Из МассивТабДоков Цикл
                  ТабДокумент = ПечатнаяФорма;
               КонецЦикла;
               
                              
               НС = "\/:*?""<>|";
               Контрагент = СтроковыеФункцииКлиентСервер.ЗаменитьОдниСимволыДругими(НС ,Контрагент, " ");
                        
               
               Если Объект.ФорматВыгрузки = 0 Тогда
                  РасширениеФайла = "XLS";
               ИначеЕсли Объект.ФорматВыгрузки = 1 Тогда
                  РасширениеФайла = "PDF";
               КонецЕсли;
               
               ТабДокумент.Записать(КаталогЗаписи+"\Акт сверки по контрагенту "+Контрагент+"."+РасширениеФайла,РасширениеФайла);
-------------------------------------

Я так понимаю, что при получении Табличного документа, я не указал какой то параметр, не могу разобраться какой.
Нужно поидее получить значение реквизита "ПодписьИПечать = Истина". Подскажите как это сделать, возможно вы знаете про что идет речь?

заранее спасибо.               


stmakc

В Бухгалтерии 3.0 сделал так:
На сервере

        Счёт=Документы.СчетНаОплатуПокупателю.НайтиПоНомеру(Сред(СчётНазвание,17,11),ТекущаяДата());
МассивОбъектов = Новый Массив();
МассивОбъектов.Добавить(Счёт);
ИмяМенеджераОтправки = Счёт.Метаданные().ПолноеИмя();
АдресКомандОтправки = ОтправкаПочтовыхСообщений.АдресКомандОтправки("ВыставлениеСчетовСистема", ИмяМенеджераОтправки, Счёт.УникальныйИдентификатор());
КомандыОтправки = ПолучитьИзВременногоХранилища(АдресКомандОтправки);
Для Каждого КомандаОтправки Из КомандыОтправки Цикл
ОписаниеКоманды = ОтправкаПочтовыхСообщенийВызовСервера.ОписаниеКомандыОтправки(КомандаОтправки.ИмяКоманды, АдресКомандОтправки);
Если ОписаниеКоманды <> Неопределено Тогда
ПечатныеФормы = УправлениеПечатью.СформироватьПечатныеФормыДляБыстройПечати(ОписаниеКоманды.МенеджерПечати,ОписаниеКоманды.Идентификатор, МассивОбъектов, ОписаниеКоманды.ДополнительныеПараметры);
КонецЕсли
КонецЦикла;
Формы=Новый Массив();
Формы.Добавить(ПечатныеФормы);
УправлениеПечатьюБП.ДобавитьФаксимилеПриОтправке(Формы);
ПечФорма=Формы[0].ТабличныеДокументы[0].Значение;
Возврат ПечФорма;

На клиенте:

Счёт=ОтправитьСчет(стр.Счёт);
файлPDF=ПолучитьИмяВременногоФайла("pdf");
Счёт.Записать(файлPDF,ТипФайлаТабличногоДокумента.PDF);

Похожие темы (5)

Рейтинг@Mail.ru

Поиск