Сформировать выбранные внешние печатные формы через другую обработку.
Есть внешняя обработка, через которую надо по выбранным сотрудникам сформировать выбранные внешние печатные формы (реализованные в виде шаблонов word) и сохранять их на диске.
Не могу ума дать как можно формировать такие шаблоны через другую обработку и сохранять их... Так же процедура "Печать" находится не в модуля обработки, а в форме.
Пробовал через:
но ругается на интерактивность.
Не могу ума дать как можно формировать такие шаблоны через другую обработку и сохранять их... Так же процедура "Печать" находится не в модуля обработки, а в форме.
Пробовал через:
ИмяФайла = ПолучитьИмяВременногоФайла();
ДвоичныеДанные = Отч.ПечатнаяФорма.ХранилищеОбработки.Получить();
ДвоичныеДанные.Записать(ИмяФайла);
ФормаПФ = ВнешниеОбработки.Создать(ИмяФайла,Ложь);
ФормаПФ.СсылкаНаОбъект = СтрСотрудник.Получатель;
ФормаПФ.ПолучитьФорму().Открыть();
УдалитьФайлы(ИмяФайла);
но ругается на интерактивность.
По теме из базы знаний
- Типовая борьба - личный опыт работы с типовыми конфигурациями 1С:8
- Загрузка всех онлайн-чеков с сервиса проверки чеков ФНС (налоговой) – обработка для получения данных о покупках по чекам онлайн-касс с загрузкой в Авансовый отчет
- Универсальная печать по шаблонам Word (Печать договоров из 1С БП 3, УНФ 1.6, ЗУП 3, УТ 11, КА 2, ERP 2, ДО 3)
- Загрузка чеков из ФНС в документы 1С:БП, УНФ, ERP, КА и УТ
- Методика разработки внешних печатных форм с возможностью отладки интерактивных команд печати
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Скорее всего, придется изменить обработку, которая формирует word-документ. Перед тем как показать word-документ, обработка должна его сформировать в экспортной функции в качестве результата, чтобы его можно было использовать программно из другой обработки.
Сначала нужно определиться, "сохранять на диске" требуется на сервере или на клиенте?
Сначала нужно определиться, "сохранять на диске" требуется на сервере или на клиенте?
(2) Сохранять надо на клиенте.
word-документ во внешних обработках открывается и заполняется через Replace.Execute(). Получается что все формирование надо перенести в модуль объекта?
Мне на самом деле нужно так, по выбранным внешним печатным формам сформировались doc файлы, сохранились на диск и список адресов где хранятся сформированные документы.
word-документ во внешних обработках открывается и заполняется через Replace.Execute(). Получается что все формирование надо перенести в модуль объекта?
Мне на самом деле нужно так, по выбранным внешним печатным формам сформировались doc файлы, сохранились на диск и список адресов где хранятся сформированные документы.
(3)
Необязательно. Если формирование документа происходит на клиенте в модуле формы обработки, то всё должно начинаться на клиенте. С клиента отправляемся на сервер чтобы подключить внешнюю обработку и получить ее имя. На клиенте получаем форму обработки, используя полученное имя. Вызываем экспортную функцию модуля формы, которая возвращает сформированный word-документ, а потом делаем с ним что нам надо. Примеров как программно сохранить word-документ уйма.
Получается что все формирование надо перенести в модуль объекта
Необязательно. Если формирование документа происходит на клиенте в модуле формы обработки, то всё должно начинаться на клиенте. С клиента отправляемся на сервер чтобы подключить внешнюю обработку и получить ее имя. На клиенте получаем форму обработки, используя полученное имя. Вызываем экспортную функцию модуля формы, которая возвращает сформированный word-документ, а потом делаем с ним что нам надо. Примеров как программно сохранить word-документ уйма.
Уже разобрался. Подключаю форму внешней обработки, и уже вызываю необходимую экспортную процедуру, получаю адрес где хранится сформированный word шаблон
ИмяОбработки = ДополнительныеОтчетыИОбработкиВызовСервера.ПодключитьВнешнююОбработку(ПФ.ПечатнаяФорма);
ФормаОбработки = ПолучитьФорму("ВнешняяОбработка."+ ИмяОбработки +".Форма",,ЭтаФорма);
АдресГотовогоШаблона = ФормаОбработки.Печать(Неопределено, ОбъектыПечати, Истина);
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот