Внешняя печатная форма на основе макета 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 не будет опубликован. Обязательные поля помечены *