Внешняя печатная форма на основе макета Microsoft Word для конфигураций с БСП.

Библиотека стандартных подсистем (БСП) рассчитана на работу с макетами на основе OpenOffice.org Writer и Microsoft Word. Предлагается внешняя печатная форма (ВПФ) для конфигурации УТ11, иллюстрирующая использование БСП для печати документа в Microsoft Word.

ВПФ носит чисто демонстрационный характер. За основу взят макет Word документа «Коммерческое предложение», который использован для печати документа «Заказ клиента». ВПФ необходимо подключить в справочнике «Дополнительные отчеты и обработки».

ВПФ должна использовать метод «ВызовКлиентскогоМетода», т. к. полученный документ необходимо открывать на клиенте, а не на сервере. В экспортной процедуре печати в форме обработки следует указать тип макета «DOC». Для OpenOffice надо использовать тип макета «ODT».

Шаблон приведен на рисунке.  Секции макета ограничены тегами {V8 Область.ИмяОбласти}   {/V8 Область.ИмяОбласти}.  Параметры замены обозначаются  {V8 ИмяПараметра}. Системе необходимо указать тип секции. Всего применяется пять типов:

ВерхнийКолонтитул, НижнийКолонтитул,Общая, СтрокаТаблицы, Список.  ВерхнийКолонтитул и  НижнийКолонтитул вносятся в соответствующие колонтитулы шаблона и не ограничиваются тегами. Шапку и подвал таблицы следует реализовывать  в шаблоне таблицей и определять как СтрокаТаблицы.

Для практического применения можно выгрузить макет в файл с расширением doc, преобразовать его к нужному виду и загрузить обратно.  Затем следует реализовать процедуру «ПолучитьДанныеОбъекта» — тут по-моему, для программиста все понятно. И подправить процедуру «ПолучитьОписаниеОбластейШаблона».

16 Comments

  1. Armando

    Все бы хорошо, но у меня почему-то тормозят вордовские печатные формы 😥 Узкое место — получение верхнего колонтитула.

    Reply
  2. ARL

    (1)Интересно, а сколько у вас уходит времени на одну форму? Сейчас замерил у себя — на файловой базе и далеко не на самом новом компьютере — первый раз 20 сек, последующие разы — по 9 сек.

    Reply
  3. Armando

    (2) Зависит от объема. На вскидку 10-12 секунд первый раз. Потом раза в два быстрее.

    Печатная форма на 1 лист. С колонтитулами и штрих-кодом. Несколько реквизитов в шапке и 4-5 строк таблица в 4 колонки.

    Формат файла макета не имеет значения. Специально для этого доработал подсистему печати, чтоб .docx понимала.

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

    Reply
  4. seermak

    только сейчас закончил заниматься вплотную этим вопросом…. 1С предлагает делать из ворда такой же конструктор как и свой mxl внутренний (посмотрите на макет), а затем из этих кубиков собрать выходной файл. У моих клиентов глаза становятся круглыми, когда я предлагаю им сделать нужный шаблон договора в таком формате…… Хотя каждое решение имеет право на жизнь…. У меня из 3 предлагаемых общих модулей остался один да и тот сильно кастрирован….. Честно говоря, мне совсем не понравилось решение из библиотеки подсистем — я думал скопировать, подключить будет гораздо проще, без бубна, ан нет……

    Reply
  5. ARL

    (4)Но можно ведь пойти и своим путем. Если не выводить табличные части, то вот у меня пример: http://infostart.ru/public/92963/. Обработка для УНФ. С табличными частями тоже можно что-нибудь придумать по-проще. Может возможно использовать отсюда http://infostart.ru/public/95012/

    Reply
  6. seermak

    (5) а я и сделал что-то подобное. как в первом примере (тоже самое почти только другими словами)А ТЧ преобразовал из кода библиотеки — только вклеиваю новые строки не в конце документа, а в том месте где мне надо…. Если соберусь оформить по-человечески — выложу для просмотра

    Reply
  7. Andrey12Andrey

    Как вообще можно применить шаблон Word?

    Reply
  8. ARL

    (7)Исключительно как шаблон. 🙂 Обработка должна заменять указанные в шаблоне поля информацией из базы и выводить на экран готовый документ Word.

    Reply
  9. KliMich

    Спасибо! Однозначно плюч, но скачать никак, мало единиц…

    Reply
  10. vicmos

    спасибо

    Reply
  11. winterspring

    В конфигурации УТ 11.1.9.44 сыпет ошибками

    Reply
  12. ARL

    (11) winterspring,

    Публикация 2011 года, а БСП не стоит на месте.

    Reply
  13. winterspring

    Да, теперь даже функции ПолучитьПредставлениеНоменклатурыДляПечати() нет.

    Reply
  14. Jaivan

    (13) winterspring, куда она делась?, искал — не нашел…

    Reply
  15. Jaivan

    рост аппетитов: как предоставить макет из внешней обработки к редактированию пользователем в макетах печатных форм?

    Reply
  16. Zabava_

    (8)

    Добрый день! А есть возможность выводить сразу на печать или встроить эту прелесть в комплект документов? Чтобы выводить на печать вместе со счетами и актами?

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *