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