Внешняя печатная форма с шаблоном Word

18.05.15

Задачи пользователя - Адаптация типовых решений

Описан процесс создания внешней печатной формы, использующей шаблоны Word. Платформа 8.3

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

Наименование Файл Версия Размер
Заготовка внешней печатной формы
.epf 22,06Kb
171
.epf 1.0 22,06Kb 171 Скачать
Дополнительные отчеты и обработки (документация)
.docx 49,84Kb
26
.docx 49,84Kb 26 Скачать
Печать (документация")
.docx 66,45Kb
35
.docx 66,45Kb 35 Скачать

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

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

Далее необходимо определиться, каким образом будет выполняться вызов команд. И тут есть несколько вариантов: вызов клиентского метода или вызов серверного метода. Информация обо всех вариантах, в том числе и о создании внешней обработки, прикреплена ниже, "Дополнительные отчеты и обработки (документация)".

Но вот после создания возникли проблемы...

Первой была проблема получения макета, который был прикреплен к самой обработке.

Решается она очень просто, как оказалось:

&НаКлиенте
Процедура Печать(ИдентификаторКоманды, ОбъектыНазначения) Экспорт
   
        Макет = ВыбратьМакет();
    
КонецПроцедуры

&НаСервере
Функция ВыбратьМакет();
    
    Обработка = РеквизитФормыВЗначение("Объект");
    Макет = Обработка.ПолучитьМакет("ИмяВашегоМакета").Получить(); //Например: "Макет"
    Возврат Макет;
    
КонецФункции

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

В случае необходимости получить сам объект воспользуйтесь командой "ПолучитьОбъект()".

Так как используется вызов клиентского метода, то в процедуре печати есть всего 2 параметра, что также очень удобно. Параметры определяют, какой командой была вызвана печать и какой/какие объекты печатаются.

С вызовом серверного метода не разбирался, но и не очень хотелось, так как очень понравился клиентский. Ниже также прикреплен файл заготовки внешней печатной формы на шаблоне ворд, содержищий подробные коментарии по выполняемым действиям и примеры некоторые команды работы с вордовским документом/макетом, а также документация по процедуре "Печать()"

Еще возможна проблема, когда ВПФ не подключается к документу, для которого она предназначена. В этом случае необходимо сделать следующее: "Общая  команда "ДополнительныеПечатныеФормыОбъекта" - тип параметра команда - поставить галку у вашего документа. Так что если типовая то не взлетит". Полное описание проблемы читайте тут: http://www.forum.mista.ru/topic.php?id=717768

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

По отладке могут возникать проблемы. Поэтому создан реквизит "Ссылка на объект", Команда "Печать" и процедура в модуле формы. Чтобы войти в отладку, достаточно поставить точку останова в процедуре "ПечатьОтладка" или в другом любом месте, но только если ВПФ запущена как внешняя обработка, а не вызване непосредственно из документа. В Реквизите "СсылкаНаОбъект" поменяйте тип значения на документ, которвый вам нужен.

Приложенная заготовка протестирована и формирует документ, как на скриншотах.

 

Документация взята по ссылкам: http://its.1c.ru/db/bspdoc#content:22:hdoc:issogl2_%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0%D0%BD%D0%B0%D0%B7%D0%BD%D0%B0%D1%87%D0%B0%D0%B5%D0%BC%D1%8B%D1%85%D0%B4%D0%BE%D0%BF%D0%BE%D0%BB%D0%BD%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D1%85%D0%BE%D1%82%D1%87%D0%B5%D1%82%D0%BE%D0%B2%D0%B8%D0%BE%D0%B1%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BE%D0%BA

http://its.1c.ru/db/bspdoc#content:40:1:issogl2_%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0%D0%BF%D1%80%D0%B0%D0%B2%D0%B4%D0%BE%D1%81%D1%82%D1%83%D0%BF%D0%B0%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D0%B5%D0%B929

ВПФ управляемые формы внешняя печатная форма шаблоны WORD

См. также

Табличная часть в доп. реквизитах и формирование таблиц в шаблоне docx для 1С:ДО 3.0

Адаптация типовых решений Платформа 1С v8.3 1С:Документооборот Россия Платные (руб)

Расширение конфигурации для «1С:Документооборот КОРП», редакция 3.0. позволяет: 1.использовать произвольные табличные части в качестве дополнительных реквизитов к документу; 2 использовать произвольные табличные части в шаблонах в формате docx для автоматического заполнения таблиц.

29400 руб.

29.06.2023    4453    9    4    

18

Расширение для 1С:УНФ. Автоматическое снятие резервов в Заказах покупателей

Логистика, склад и ТМЦ Адаптация типовых решений Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 Россия Управленческий учет Платные (руб)

Чтобы не допустить путаницы с обещаниями клиентам и для четкого контроля исполнения заказов мы используем резервирование товаров. Мы доработали УНФ, чтобы она автоматически отменяла старые резервы и не мешала эффективно продавать.

7200 руб.

02.08.2023    2956    4    0    

19

Создать на основании - своя кнопка (БСП). Проблема двух подменю Создать на основании

БСП (Библиотека стандартных подсистем) Адаптация типовых решений Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

Понадобилось в подменю "Создать на основании" добавить свою команду, которая открывает обработку. В процессе доработок появилась проблема двух подменю "Создать на основании". В статье о том, как решились проблемы.

01.03.2024    1287    dimanich70    6    

13

Доработка отчета "Связанные документы" (структура подчиненности) для вывода объектов из любого расширения

Адаптация типовых решений Платформа 1С v8.3 1С:Управление торговлей 11 Россия Абонемент ($m)

Доработка типового отчета "Связанные документы" позволяет просто и быстро расширять состав объектов для построения структуры подчиненности документов, используя объекты основной конфигурации и любых расширений.

1 стартмани

27.10.2023    1996    13    avmartynov    10    

43

Печать непроведенных документов для УТ, КА, ERP. Настройка печати по пользователям, документам и печатным формам

Пакетная печать Печатные формы Адаптация типовых решений Универсальные функции Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Абонемент ($m)

Расширение для программ 1С:Управление торговлей, 1С:Комплексная автоматизация, 1С:ERP, которое позволяет распечатывать печатные формы для непроведенных документов. Можно настроить, каким пользователям, какие конкретные формы документов разрешено печатать без проведения документа.

2 стартмани

22.08.2023    2077    21    progmaster    7    

3
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. пользователь 09.11.17 15:47
Сообщение было скрыто модератором.
...
2. onec.developer 181 21.10.18 16:38 Сейчас в теме
Не работает. В этой команде отсутствует метод "Получить"
Макет = Обработка.ПолучитьМакет("ИмяВашегоМакета").Получить();
5. an1c 19.12.18 17:11 Сейчас в теме
6. an1c 19.12.18 17:12 Сейчас в теме
(2) у меня тоже так же не работает. Кто-нибудь решил проблему?
7. Idris1204 18.05.20 13:24 Сейчас в теме
(2) Обработки.ПечатьЭтикетковИЦенников.ПолучитьМакет("ИмяМакета").Получить();
3. an1c 24.11.18 13:58 Сейчас в теме
Отличная обработка!!! Спасибо от души! Очень помогли))
4. swwb 18 11.12.18 16:50 Сейчас в теме
Обработка не будет работать, если база 1С на SQL сервере. Я так понимаю, это только для файлового варианта....
Оставьте свое сообщение