Как в СКД сделать заголовки ресурсов слева?

Программист 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

При разработке отчетов в системе компоновки данных (СКД) мы часто сталкиваемся со стандартным поведением системы: ресурсы (показатели) выводятся в колонках, а их заголовки располагаются в «шапке» сверху. Однако для создания анкет, карточек или специфических аналитических таблиц требуется иная структура — когда названия показателей идут списком в левой колонке (в строках), а данные распределяются по горизонтали. Разберем подробно, как реализовать такое представление в 1С.

Метод 1: Использование структуры «Таблица» и перенос ресурсов в строки

Рассмотрим наиболее стандартный и «чистый» способ, который не требует написания кода или создания сложных макетов. В СКД объект Таблица позволяет гибко управлять измерениями и показателями. Выясним, как заставить систему воспринимать ресурсы как элементы строк.

  1. Перейдем на вкладку «Настройки» в схеме компоновки данных.
  2. Добавим в структуру отчета элемент Таблица.
  3. В «Колонки» таблицы добавим те измерения, которые должны отображаться сверху (например, Период, Склад или Подразделение).
  4. В «Строки» таблицы вместо выбора обычного поля группировки добавим специальный элемент Авто (Выбранные поля).
  5. Теперь самое важное: перейдем на вкладку «Выбранные поля» именно для этой группировки строк. Здесь мы должны указать только те ресурсы, которые хотим видеть слева.

Проанализируем ситуацию: когда мы помещаем ресурсы в группировку строк, СКД автоматически формирует вертикальный список названий этих ресурсов. Это позволяет превратить классическую горизонтальную таблицу в вертикально-ориентированную.

Метод 2: Настройка «Расположение реквизитов» и «Расположение имен ресурсов»

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

Разберем по шагам, как это работает в сочетании с группировками. Если у вас есть группировка по Номенклатуре, и вы установите Расположение ресурсов = Вертикально, то напротив каждой позиции номенклатуры в одной строке (но в разных подстроках) выведутся названия ресурсов (например, «Остаток», «Резерв») и их значения.

Метод 3: Использование вычисляемых полей для имитации заголовков

Иногда требуется более сложная структура, где заголовок ресурса должен выглядеть как обычное значение измерения. В этом случае мы можем прибегнуть к хитрости с вычисляемыми полями. Рассмотрим пример:

  1. Создадим Вычисляемое поле с именем НазваниеПоказателя.
  2. В выражении этого поля просто напишем строковое значение в кавычках: "Сумма продаж, руб.".
  3. Добавим это поле в группировку строк нашей таблицы.
  4. В соседней колонке (в области ресурсов) выведем сам ресурс СуммаОборот.

Повторив этот прием через объединение наборов данных (Union) или через несколько группировок, мы получим отчет, где в левой колонке текст задан нами вручную, а в правой — выводятся числовые данные.

Метод 4: Полный контроль через Макеты оформления

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

Рассмотрим алгоритм создания индивидуального оформления:

  1. Переходим на вкладку «Макеты».
  2. Добавляем Макет группировки. Выбираем тип группировки (Заголовок или Строка) и имя поля.
  3. В появившемся редакторе табличного документа рисуем область. Например, две ячейки: левая — для текста (имя ресурса), правая — для параметра (значение ресурса).
  4. В левой ячейке пишем статический текст Прибыль.
  5. Для правой ячейки устанавливаем Заполнение = Параметр и указываем имя параметра, соответствующее нашему ресурсу.

В этом случае при компоновке результата 1С не будет использовать свои стандартные алгоритмы рисования шапки, а возьмет нарисованный нами шаблон. Это гарантирует, что заголовок ресурса будет именно там, где мы его разместили — слева, справа или даже по диагонали.

Метод 5: Транспонирование через «Детальные записи»

Выясним причину, почему иногда ресурсы не хотят выстраиваться вертикально в обычном списке. В настройках конкретной группировки можно зайти в «Выбранные поля», снять флаг «Использовать стандартные настройки» и добавить ресурсы по одному. Если при этом в «Прочих настройках» этой группировки установить Расположение ресурсов = Вертикально, система создаст для каждого ресурса отдельную строку.

Пример настройки структуры:


Отчет
|_ Группировка: Склад
   |_ Группировка: <Детальные записи>
      (В выбранных полях: Ресурс1, Ресурс2)
      (В прочих настройках: Расположение ресурсов = Вертикально)

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

Заключение

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

← На главную