В программе «1C:ERP» 2.5 есть несколько вариантов добавления новых печатных форм для документов и справочников без изменения конфигурации и снятия ее с поддержки.
Варианты с использованием встроенного механизма макетов печатных форм в режиме пользователя подробно рассмотрены в инструкции Как добавить новую печатную форму в пользовательском режиме.
Варианты с использованием дополнительных возможностей с помощью программирования и конфигурирования в режиме разработчика
- Добавление новой печатной формы через расширение;
- Добавление новой внешней печатной формы;
Добавление печатной формы через расширение
С помощью механизма Расширение конфигурации возможно изменять, дополнять или модифицировать стандартную конфигурацию без внесения изменений в исходный код и сохраняя ее на поддержке. Таким образом можно изменить или добавить новую печатную форму. Однако, без программирования и работы с Конфигуратором в таком случае не обойтись. Для подобных доработок рекомендуем обращаться к разработчикам.
Рассмотрим небольшой пример создания новой печатной формы Приобретение товаров (расширение) для документа Приобретение товаров и услуг.
Откроем программу в режиме Конфигуратор и создадим новое расширение через меню Конфигурация – Расширения конфигурации – Добавить. Назовем расширение НоваяПечатнаяФорма, назначение выберем Адаптация, уберем флаг Безопасный режим.
В списке конфигурации найдем документ Приобретение товаров и услуг.
Откроем модуль менеджера и найдем в нем процедуру ДобавитьКомандыПечати(). Правой кнопкой мыши добавим процедуру в расширение, в качестве типа вызова выберем ВызыватьПеред.
В расширенной процедуре напишем свой код, добавим еще одну команду.
В этом же модуле менеджера найдем процедуру Печать(). Добавим процедуру в расширение, в качестве типа вызова выберем ВызыватьПеред.
В расширенную процедуру добавим код по выводу табличного документа и также в модуль добавим функцию по формированию табличного документа.
В макеты документа добавим свой макет и назовем его ПФ_MXL_ПоступлениеТоваровРасширение.
Отредактируем наш макет в соответствии с задачей.
В функции СформироватьПечатнуюФормуНакладнаяРасширение() укажем наименование получаемого макета, запрограммируем формирование табличного документа.
Сохраним и Обновим конфигурацию базы данных. Запустим программу в режиме 1С:Предприятие и проверим печатную форму.
Перейдем в раздел Закупки – Документы закупки (все), выберем документ Приобретение товаров и услуг и по кнопке Печать найдем печатную форму Поступление товаров (расширение).
В результате получим печатную форму приобретения товаров с нашими доработками.
Добавление внешней печатной формы
Для того, чтобы без изменений конфигурации добавить новую печатную форму или заменить старую, существует специальный функционал — подсистема Дополнительные отчеты и обработки.
Механизм заключается в разработке внешней обработки, в которой описан программный код, формирующий нужную печатную форму. Данную обработку необходимо просто загрузить в пользовательском режиме в базу данных.
Такой способ добавления печатных форм имеет множество преимуществ. Он имеет больше возможностей оформления, можно выводить абсолютно любую информацию. Но для разработки внешней печатной формы потребуется работа с Конфигуратором и навыки программирования.
Рассмотрим небольшой пример создания новой печатной формы Расходная накладная (внешняя) для документа Реализация товаров и услуг.
Откроем программу в режиме Конфигуратор. Создадим новую обработку. Для этого перейдем в меню Файл – Новый и в открывшемся окне вид документа выберем Внешняя обработка.
В открывшемся окне новой обработки зададим ее Имя.
Сохраним файл внешней обработки на диск, для этого воспользуемся меню Файл – Сохранить как. Назовем сохраняемый файл ВнешняяПечатнаяФорма.
Добавим свой макет во внешнюю обработку и назовем его РасходнаяНакладнаяВнешняя.
Откроем макет, выполним определение областей, имен параметров, отформатируем в соответствии с задачей.
Откроем модуль объекта. Для этого нажмем в нашей обработке кнопку Действия и выберем пункт Открыть модуль объекта.
Создадим экспортную функцию СведенияОВнешнейОбработке(). Она необходима для дальнейшей регистрации печатной формы в справочнике ДополнительныеОтчетыИОбработки. Код содержит структуру с данными для подключения формы.
В этом же модуле добавим экспортную процедуру Печать(). Эта процедура будет вызываться из конфигурации, в нее передается массив печатаемых объектов.
Далее добавим в модуль функцию СформироватьПечатнуюФормуРасходнаяНакладнаяВнешняя(), результатом работы которой станет табличный документ.
Не забываем сохранить внесенные изменения в обработку.
После того, как весь код написан, необходимо подключить обработку в режиме пользователя 1С.
Откроем программу в режиме 1С:Предприятие. Зайдем в раздел НСИ и администрирование – Администрирование – Печатные формы, отчеты и обработки и нажмем кнопку Добавить из файла.
Выбираем наш сохраненный файл внешней обработки. В программе заполнится новый элемент справочника Дополнительные отчеты и обработки. Запишем и закроем его.
Проверим работу обработки. Перейдем в раздел Продажи – Оптовые продажи – Документы продажи (все). Выберем документ Реализация товаров и услуг и перейдем в команду печати, найдем нашу печатную форму.
В результате получаем на печать нашу печатную форму Расходная накладная (внешняя) с отформатированным текстом шапки.
консультанта или программиста 1С?