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