Разработка и Конфигурация · 8 мин
Как добавить свой шаблон в 1С
Как добавить собственный макет или шаблон в 1С: создание макета печатной формы, шаблона сообщения и внешнего шаблона. Пошагово, с проверкой результата и типичными ошибками.
Под «шаблоном» в 1С обычно понимают три разных объекта: макет печатной формы документа, шаблон текста сообщения или письма и макет, хранящийся в конфигурации как отдельный объект. Способ добавления зависит от того, какой именно шаблон нужен и работаете ли вы в типовой конфигурации без права изменения, в конфигураторе с возможностью доработки или через внешние файлы. Ниже разобраны все три сценария с конкретными действиями.
Главное решение, которое нужно принять заранее, — где будет храниться шаблон. Макеты внутри конфигурации надёжнее и обновляются вместе с релизом, но требуют доступа к конфигуратору и снятия объектов с поддержки. Внешние шаблоны и шаблоны в справочниках меняются прямо в режиме «Предприятие» обычным пользователем, но при обновлении программы могут потребовать ручной корректировки.
Определяем, какой шаблон нужен
Прежде чем что-то добавлять, уточните задачу. Если нужно изменить вид печатной формы счёта или акта — это макет печатной формы. Если требуется стандартный текст письма клиенту — это шаблон сообщения. Если нужен файл-заготовка, который программа заполняет данными (например, договор в Word), — это макет типа «Текстовый документ», «Табличный документ» или двоичные данные с файлом формата DOCX.
Также важно понять, есть ли у вас доступ к конфигуратору и разрешена ли доработка конфигурации. Во многих организациях типовую конфигурацию держат на полной поддержке, чтобы обновления устанавливались автоматически. В этом случае встроенные макеты изменять нельзя, и единственный безопасный путь — внешние печатные формы и шаблоны, хранящиеся в данных базы.
Как выбрать способ
Добавляем макет через конфигуратор
Этот способ подходит, когда конфигурацию разрешено дорабатывать. Откройте конфигуратор, найдите нужный объект (документ, справочник) в дереве конфигурации, раскройте ветку «Макеты» и через контекстное меню выберите «Добавить». Откроется конструктор макета: укажите имя, выберите тип — чаще всего «Табличный документ» для печатных форм или «Текстовый документ» для текстовых шаблонов.
В табличном макете создайте области: выделите строки и через меню «Таблица — Имена — Назначить имя» задайте имена областей (например, «Шапка», «СтрокаТаблицы», «Подвал»). В ячейках укажите параметры в квадратных скобках — например, [НомерДокумента], [Контрагент]. Именно эти параметры программа заполнит реальными данными при печати.
После создания макета его нужно подключить в коде. В модуле менеджера объекта добавьте процедуру ДобавитьКомандуПечати и процедуру Печать, в которой макет получается методом ПолучитьМакет("ИмяМакета"), области выводятся в результирующий табличный документ, а параметры заполняются из данных документа. Без этого шага макет существует, но кнопка печати не появится.
- 1Откройте конфигуратор и найдите объект в дереве конфигурации
- 2В ветке «Макеты» добавьте новый макет нужного типа
- 3Создайте именованные области и расставьте параметры в квадратных скобках
- 4Добавьте команду печати и процедуру вывода в модуле менеджера объекта
- 5Обновите конфигурацию базы данных (F7) и проверьте печать на тестовом документе
Добавляем шаблон сообщения в режиме «Предприятие»
Для текстов писем и SMS доработка конфигурации не нужна. В типовых конфигурациях (Управление торговлей, ERP, Бухгалтерия с подсистемой взаимодействий) есть справочник «Шаблоны сообщений». Найдите его через раздел «Администрирование» или через поиск по функциям, затем создайте новый элемент.
В теле шаблона используйте вставку параметров: через специальную кнопку «Вставить параметр» выберите доступные поля — наименование контрагента, номер заказа, сумму. Параметры подставляются автоматически при отправке. Сохраните шаблон и проверьте его на тестовом письме самому себе.
Учтите ограничение: набор доступных параметров зависит от контекста, из которого вызывается шаблон. Шаблон, созданный для документа «Заказ клиента», не всегда корректно сработает из карточки контрагента — часть полей останется пустой.
Подключаем внешнюю печатную форму
Внешняя печатная форма — это файл с расширением .epf, который подключается без изменения конфигурации. В типовых конфигурациях откройте «Администрирование — Печатные формы, отчеты и обработки», включите флажок «Дополнительные отчеты и обработки», перейдите по ссылке «Дополнительные отчеты и обработки» и добавьте файл через кнопку «Добавить из файла».
После загрузки укажите, к каким объектам привязана форма (например, к документу «Счет на оплату»), и при необходимости настройте видимость по пользователям. Новая команда появится в меню «Печать» документа под именем, заданным в обработке.
Шаблоны файлов для договоров и документов
Частая задача — шаблон договора в Word, который программа заполняет данными контрагента. В ряде конфигураций есть механизм «Печать договоров» или «Шаблоны договоров»: файл DOCX с параметрами в фигурных скобках загружается в справочник, и печать выполняется прямо из карточки контрагента или сделки. Проверьте наличие такого раздела в вашей конфигурации через поиск по функциям.
Если типового механизма нет, файл шаблона можно хранить в макете типа «Двоичные данные» в конфигураторе и заполнять программно, либо использовать сторонние решения. Для небольших задач проще всего хранить файл в присоединенных файлах справочника и заполнять его вручную — это компромисс между автоматизацией и трудозатратами на доработку.
Проверка результата и типичные ошибки
После добавления шаблона всегда проверяйте его на реальном, но не критичном документе. Убедитесь, что команда печати появилась, форма открывается, все параметры заполнены, а итоги и переносы страниц выглядят корректно. Для шаблонов сообщений отправьте тестовое письмо на свой адрес.
Типичные проблемы: макет создан, но команда печати не появилась (не добавлена процедура в модуль менеджера или не обновлена конфигурация БД); параметры пустые (несовпадение имён); внешняя форма не видна пользователю (не настроены права или быстрый доступ). После обновления конфигурации проверяйте доработанные макеты — при обновлении изменённые типовые объекты могут быть замещены.
Частые вопросы
Можно ли добавить печатную форму без доступа к конфигуратору?
Да. Используйте механизм дополнительных отчетов и обработок: внешняя печатная форма в формате .epf подключается в режиме «Предприятие» и не требует изменения конфигурации. Потребуются права администратора на подключение обработок.
Что будет с моим макетом при обновлении конфигурации?
Если макет добавлен как новый объект — он сохранится. Если вы изменили типовой макет, при обновлении программа предложит сравнить и объединить изменения; при полной поддержке без снятия объектов изменения могут быть утрачены. Перед обновлением сохраняйте копии доработанных макетов.
Почему в печатной форме пустые поля вместо данных?
Чаще всего имя параметра в ячейке макета не совпадает с именем, которое заполняет код, либо свойство ячейки установлено как «Текст» вместо «Параметр» или «Шаблон». Проверьте свойства ячейки и точное написание имени параметра.
Как сделать шаблон письма с автоподстановкой данных клиента?
Создайте элемент в справочнике «Шаблоны сообщений», наберите текст и вставьте параметры через кнопку вставки параметров. При отправке письма из карточки клиента или документа параметры заполнятся автоматически.
Можно ли использовать один макет для нескольких документов?
Да. Создайте общий макет в ветке «Общие — Общие макеты» конфигурации и обращайтесь к нему из процедур печати разных объектов. Это удобно для единых шапок с логотипом и стандартных подвалов.
Безопасно ли скачивать готовые внешние печатные формы?
Файл .epf содержит исполняемый код, поэтому используйте только источники, которым доверяете, и сначала проверяйте обработку в тестовой копии базы. Пользователь с правами подключения обработок фактически получает возможность выполнять произвольный код в базе.
Что важно запомнить
Выберите способ по условиям: макет в конфигураторе — при доступных доработках, внешняя печатная форма и шаблоны сообщений — для типовой конфигурации на поддержке. Имена параметров должны точно совпадать, результат проверяйте на тестовом документе, а сторонние обработки — только в копии базы.