Заполнение шаблона Word docx на сервере, без ComОбъект и внешних компонент, только механизмами самой Платформы 1С, методом XML-инъекции

Публикация № 1171429

Разработка - Печать - Универсальные печатные формы

1C отчет печатная форма макет шаблон word на сервере сервер xml docx таблица колонтитул ворд двоичныеданные поток потоквпамяти xpath документdom

Внешние печатные формы для документа Счет на оплату позволяют сформировать на сервере без использования технологии OLE (Com объекта) и сохранить на печать заполненные docx шаблоны договора поставки и спецификации к договору (УНФ 1.6) (идея универсальна, подойдет для любой конфигурации). Используются только средства самой Платформы 1С:Предприятие 8.3 (8.3.13.1644). Проверено на релизе УНФ 1.6.16.176.

Идея универсальна, основа взята из данных двух публикаций:

//infostart.questa.ru/public/237032/

//infostart.questa.ru/public/590918/ (только код переписан по-русски)

Подойдет для любой конфигурации, если нет возможности заполнить шаблон docx документа на сервере. Возможно, кому-то подойдёт как готовый вариант или как шаблон для доработки под свои нужды. 

Печатные формы заполняются на основании шаблонов Word docx на сервере без использования технологии OLE (Com объекта). Такой путь выбран по причине того, что часть пользователей в программе работают в базе через веб-клиент, с разных машин, с различными ОС.

На помощь в решении задачи программного вывода строк в таблицу макета docx файла (шаблон спецификации к договору) пришла данная публикация:

//infostart.questa.ru/public/259510/

Для работы данных печатных форм, понадобится создать также три доп реквизита документа "Счет на оплату"

В результате из документа счет на оплату, причем даже в сеансе веб клиента,

становится доступно формирование на сервере заполненного docx файла договора поставки (заполненные программно поля выделены желтым)

и спецификации к договору (обратите внимание, таблица товаров сформирована с нуля и заполнена программно по данным документа, методом XML-инъекции в тело docx шаблона)

Скачать файлы

Наименование Файл Версия Размер
ПечатьДоговораПоставки.epf

.epf 37,21Kb
28
.epf 37,21Kb 28 Скачать
ПечатьСпецификацииКДоговоруПоставки.epf (программное заполнение колонтитула и формирование таблицы)

.epf 34,24Kb
24
.epf 34,24Kb 24 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. artms 235 24.12.19 10:48 Сейчас в теме
А как вы решаете, что при редактировании шаблона WORD разрывает строку к замене?
Если пользователь отредактирует ваш шаблон, как вы можете быть уверены что строку шаблона не разорвет?
А если нужно вывести табличную часть, что делать?
2. 1sig 188 24.12.19 10:58 Сейчас в теме
1. верно, разрывает. Поэтому, если нужно применять свой шаблон, или редактировать текущий, нужно смотреть на этапе отладки разобранную часть document.xml документа, открывать xml-редактором, находить где идет разрыв, и переформатировать документ

2. об этом написано, решение взято отсюда //infostart.ru/public/259510/
3. artms 235 24.12.19 11:20 Сейчас в теме
(2) Написал решение в котором эти ошибки устранены. https://infostart.ru/public/675307/
greenfest; gubanoff; user774630; ZLENKO; +4 Ответить
Оставьте свое сообщение

См. также

Публикаций не найдено

Попробуйте расширить область поиска, проверьте поисковый запрос и повторите попытку.

Или закажите индивидуальную разработку вашего решения.

Создать заказ на разработку