Что скрывается за словом «макет»?
Макет в 1С
— это шаблон, который определяет, как будут выглядеть печатные формы, отчёты или документы. Он говорит системе: «Возьми вот эти данные из справочников и документов, расставь их в таком порядке, добавь логотип компании, подписи и печати — и выдай пользователю готовый PDF, Excel или даже письмо по почте».Но макет — это не просто «рамка для данных». Он умеет гораздо больше, например, динамически подстраиваться под разные ситуации. Один и тот же макет счёта может выглядеть по-разному для юридических лиц и ИП — автоматически убирать или добавлять НДС, менять реквизиты. Также умеет скрывать или показывать блоки в зависимости от условий. Допустим, если клиенту положена скидка, макет сам решит, стоит ли выводить её размер отдельным пунктом или оставить только итоговую сумму. Умеет работать с графикой. Логотипы, штрих-коды, QR-коды — всё это можно встроить в макет, и 1С корректно разместит их даже при печати.

Как рождается макет?
Создание макета напоминает игру в конструктор. Разработчик берёт стандартные элементы — таблицы, текстовые поля, изображения — и расставляет их в редакторе. Но за кажущейся простотой скрывается глубина:
1. Схема данных. Сначала нужно определить, откуда макет будет брать информацию. Это могут быть поля документа (например, «Номер», «Дата», «Контрагент»), результаты вычислений (например, «Итого к оплате») или даже данные из внешних источников.
2. Логика отображения. Здесь в дело вступают параметры, условия и формулы. Например, если у документа есть комментарий, макет может растянуть таблицу, чтобы он поместился, а если нет — оставить компактный вариант.
3. Дизайн и удобство. Макет должен не только содержать правильные данные, но и выглядеть так, чтобы пользователь сразу находил нужное. Например, важные суммы можно выделить жирным, а второстепенные детали — уменьшить.
Примеры макетов:


Ошибки, которые превращают макеты в головную боль
Даже умело сделанный макет может стать проблемой, если не учесть несколько нюансов:
Жёсткая привязка к данным. Если макет ждёт, что в документе всегда будет поле «Дополнительная информация», но его вдруг переименуют, печатная форма сломается. Лучше заранее предусмотреть такие ситуации.
Игнорирование роста данных. Предположим, в накладной обычно 5-10 строк, но иногда их 100. Если макет не адаптирован под длинные списки, часть информации «убежит» за край страницы.
Слишком сложная логика. Когда в макете много условий («если клиент из Москвы, покажи одно, если из регионов — другое»), его становится трудно поддерживать. Иногда проще сделать два отдельных макета.
Макеты vs Код: что важнее?
Некоторые разработчики считают, что если нельзя решить задачу в макете, нужно писать код. Но это не всегда правильно.
Например, если нужно вывести в печатной форме дополнительные расчёты (скажем, сумму с учётом всех скидок и наценок), можно сделать это в макете через формулы — это быстрее, но усложнит сам макет. Или же рассчитать в коде и передать в макет готовое значение — так будет гибче, но потребует изменений в конфигурации.
Идеальный баланс — когда макет отвечает за внешний вид, а код готовит для него данные.
Макеты будущего: что изменится?
С каждым годом макеты в 1С становятся умнее. Уже сейчас можно использовать HTML-вёрстку для писем и отчётов. Также можно генерировать интерактивные PDF с кликабельными ссылками и настраивать автоматическую отправку документов прямо из макета.Возможно, скоро появятся макеты, которые сами адаптируются под устройство пользователя: будут выводить упрощённый вариант для телефона и детализированный — для компьютера.