К статье
Практический материал

Отчеты и Аналитика · 8 мин

Как объединить ячейки в СКД 1С: практическое руководство

Как объединить ячейки в СКД 1С: работа с макетом схемы компоновки, объединение областей, группировка полей, типовые ошибки и пошаговые инструкции с примерами.

Объединение ячеек в СКД (системе компоновки данных) 1С — задача, которая возникает, когда нужно оформить отчёт: объединить заголовки колонок, растянуть шапку на несколько столбцов или вывести итог по нескольким полям в одну область. В отличие от Excel, где ячейки объединяются мышкой, в СКД это делается через макет схемы компоновки и настройку областей.

Есть два принципиально разных подхода. Первый — объединение ячеек в собственном макете СКД (вкладка «Макеты» в конструкторе схемы компоновки), где вы рисуете область и задаёте объединение вручную. Второй — управление выводом полей через настройки группировок и ресурсов, когда СКД сама решает, как размещать значения, а вы лишь добиваетесь визуального слияния повторяющихся значений.

Выбор зависит от цели. Если нужна «шапка» отчёта с объединёнными заголовками — работайте с макетом. Если требуется, чтобы одинаковые значения группировки не повторялись в каждой строке — настраивайте вывод группировок. Ниже разобраны оба сценария с конкретными шагами и типичными ошибками.

Когда нужно объединять ячейки в СКД

Чаще всего объединение ячеек требуется в трёх ситуациях. Первая — оформление заголовков: например, общий заголовок «Продажи» должен охватывать колонки «Количество» и «Сумма». Вторая — вывод итогов или примечаний строкой на всю ширину отчёта. Третья — вертикальное слияние одинаковых значений группировки, чтобы отчёт выглядел компактнее.

Важно понимать ограничение: СКД — это генератор отчётов, а не редактор таблиц. Всё, что выходит за рамки стандартного вывода, делается либо через макет, либо через программную обработку результата. Если требуется произвольная «вёрстка» таблицы, как в Excel, возможно, проще использовать обычный табличный документ без СКД.

Объединение ячеек в макете схемы компоновки

Основной способ — создать собственный макет в конструкторе СКД. Откройте схему компоновки отчёта и перейдите на вкладку «Макеты». Нажмите «Добавить макет», выберите тип области — например, «Заголовок» или «Общий итог заголовок». СКД создаст макет-табличный документ, в котором можно редактировать ячейки.

Чтобы объединить ячейки, выделите нужный диапазон в макете, откройте свойства (правой кнопкой — «Свойства») и установите свойство «Объединение» — ячейки сольются в одну область. Параметр в объединённой ячейке будет выводиться на всю ширину области. Если в области несколько параметров, проверьте, что каждый привязан к своей ячейке до объединения, иначе часть данных потеряется.

Порядок действий
  1. 1
    Откройте схему компоновки данных отчёта и перейдите на вкладку «Макеты»
  2. 2
    Нажмите «Добавить макет» и выберите тип области (заголовок, итог, группировка)
  3. 3
    В созданном табличном документе выделите ячейки, которые нужно объединить
  4. 4
    Откройте свойства области и установите объединение ячеек
  5. 5
    Проверьте привязку параметров к ячейкам в колонке «Имя параметра»
  6. 6
    Сформируйте отчёт и убедитесь, что область выводится объединённой

Объединение в заголовке таблицы

Для многоуровневой шапки создайте макет типа «Заголовок» для нужной группировки. В макете добавьте строку с общим заголовком и объедините её ячейки по ширине колонок, которые он должен охватывать. Учтите: ширина колонок в макете и в итоговом отчёте может различаться, если включён автоподбор ширины, поэтому проверяйте результат формированием отчёта, а не только визуально в макете.

Объединение ячеек в строке итогов

Аналогично создаётся макет «Общий итог заголовок» или «Общий итог подвал». Типовой приём: объединить несколько первых ячеек строки итога и вывести в них текст «Итого», а в оставшихся ячейках — параметры ресурсов. Если ресурс не выводится, проверьте, что имя параметра в макете точно совпадает с именем поля-ресурса на вкладке «Ресурсы».

Слияние повторяющихся значений группировок

Вторая частая задача — чтобы значение группировки (например, «Организация») не дублировалось в каждой строке, а выводилось один раз на группу. Стандартными средствами СКД полноценное вертикальное объединение ячеек, как в Excel, не делается автоматически: СКД выводит значение в первой строке группы, а дальше оставляет пусто — этого часто достаточно визуально.

Если значения всё же повторяются, проверьте настройки выбранных полей: поле группировки должно быть добавлено на уровне самой группировки, а не в детальных записях. Также посмотрите параметр вывода «Расположение группировки» — вариант «Начало и конец» или «Начало» влияет на то, где выводится значение.

Сравнение вариантов

Макет СКД

Подходит для заголовков, итогов и фиксированных областей. Ограничение: требует ручной привязки параметров и ломается при изменении набора полей.

Настройки группировок

Подходит для слияния повторяющихся значений. Ограничение: настоящего вертикального объединения ячеек нет, только подавление повторов.

Программная обработка результата

Подходит для нестандартной вёрстки. Ограничение: нужен код, сложнее сопровождать.

Программное объединение ячеек после формирования

Если возможностей макета не хватает, результат компоновки можно вывести в табличный документ и затем обработать программно: пройти по областям и вызвать метод объединения. Это даёт полный контроль, но привязывает отчёт к коду.

ТабДок = Новый ТабличныйДокумент;

ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;

ПроцессорВывода.УстановитьДокумент(ТабДок);

ПроцессорВывода.Вывести(ПроцессорКомпоновки);

// Объединяем диапазон ячеек построчно

Для НомерСтроки = 2 По ТабДок.ВысотаТаблицы Цикл

Область = ТабДок.Область(НомерСтроки, 1, НомерСтроки, 2);

Область.Объединить();

КонецЦикла;

При таком подходе помните: объединённые ячейки мешают интерактивной расшифровке и свёртыванию группировок. Пользователь, кликнув по объединённой области, может получить некорректную расшифровку. Используйте программное объединение только для печатных форм и финального вывода, а не для интерактивных отчётов.

Проверка результата и типичные ошибки

После настройки сформируйте отчёт с реальными данными и проверьте три вещи: объединённая область выводится на нужной ширине, параметры отображаются полностью (не обрезаны), при изменении отбора или группировок макет не «разъезжается». Если макет жёстко привязан к колонкам, добавление нового поля в настройках может сместить колонки и нарушить объединение.

Типичные ошибки
01
Объединили ячейки до привязки параметров — часть значений не выводится. Сначала задайте параметры, потом объединяйте.
02
Имя параметра в макете не совпадает с именем поля — ячейка выводится пустой. Проверьте точное совпадение имён.
03
Макет создан для группировки, но не указана сама группировка в настройках макета — область вообще не появляется в отчёте.
04
Программное объединение применено к интерактивному отчёту — перестаёт работать расшифровка.
Контрольные точки

Как проверить результат

Вывод объединённой области
Норма

Область охватывает нужные колонки, текст виден полностью

Тревожный признак

Область смещена или обрезана после изменения настроек

Параметры в макете
Норма

Все значения ресурсов выводятся в своих ячейках

Тревожный признак

Пустые ячейки или дублирование значений

Расшифровка
Норма

Клик по ячейке открывает корректную расшифровку

Тревожный признак

Расшифровка не работает или открывает неверные данные

FAQ

Можно ли объединить ячейки в СКД без макета, только настройками?

Полноценного объединения ячеек через настройки нет. Настройки позволяют лишь управлять повторением значений группировок и расположением полей. Для фактического слияния ячеек нужен макет на вкладке «Макеты» или программная обработка табличного документа.

Почему макет с объединёнными ячейками не выводится в отчёте?

Чаще всего макет создан для группировки, которой нет в текущих настройках отчёта, либо в свойствах макета не указано, к какой группировке он привязан. Проверьте колонку «Группировка» на вкладке «Макеты» и наличие этой группировки в настройках.

Как объединить ячейки вертикально, чтобы значение группировки выводилось один раз?

Стандартного вертикального объединения в СКД нет. Значение группировки по умолчанию выводится один раз в начале группы. Если нужен именно эффект объединённой ячейки, как в Excel, потребуется программная обработка результата в табличном документе.

Ломается ли объединение при добавлении нового поля в отчёт?

Да, это частая проблема: макет жёстко привязан к позициям колонок, и новое поле смещает их. После изменения набора полей проверяйте макет и при необходимости корректируйте область объединения.

Можно ли объединить ячейки в уже сформированном отчёте в режиме предприятия?

Если отчёт выведен в табличный документ, его можно сохранить и отредактировать как обычный табличный документ (mxl), включая объединение ячеек. Но при следующем формировании отчёта эти ручные правки потеряются.

Итог

Что важно запомнить

Объединение ячеек в СКД делается через макет схемы компоновки: создайте область, привяжите параметры, затем объедините ячейки в свойствах. Повторы значений группировок убираются настройками вывода, а нестандартная вёрстка — программной обработкой табличного документа. Всегда проверяйте имена параметров, привязку макета к группировке и работу расшифровки после изменений.