Как вывести характеристики номенклатуры отдельной колонкой в типовом отчете 1С:УПП

Программист 1С v8.3 (Обычные формы) Управленческий учет
← На главную

В типовых конфигурациях, таких как 1С:Управление производственным предприятием (УПП) ред. 1.3, многие отчеты (например, «Товары на складах») построены с использованием технологии ПостроительОтчетов. По умолчанию система выводит аналитические разрезы, такие как номенклатура и характеристики, в виде иерархических группировок (одна под другой). Однако для детального анализа или выгрузки в Excel пользователям часто требуется табличный вид, где характеристика отображается в соседней колонке от номенклатуры.

В рамках данной статьи мы разберем, как изменить структуру отчета стандартными средствами настройки, не прибегая к программированию и изменению кода конфигурации.

Причина возникновения сложности

Разберем ситуацию: когда мы добавляем поле ХарактеристикаНоменклатуры в список группировок строк, ПостроительОтчетов автоматически создает новый уровень вложенности. Это удобно для итогов, но неудобно для линейного восприятия данных. Использование механизма «Дополнительные поля» часто кажется очевидным решением, но при стандартном подходе характеристика все равно может «прилипать» к номенклатуре в одной ячейке или выводиться отдельной строкой. Выясним, как добиться именно колоночного расположения.

Пошаговая настройка вывода характеристик в колонку

Рассмотрим алгоритм действий, который позволит нам трансформировать отчет:

  1. Откройте настройки отчета: Нажмите кнопку «Настройка» в верхней панели типового отчета.
  2. Изменение группировок строк: Перейдите на закладку «Группировки». Здесь необходимо удалить поле Номенклатура и ХарактеристикаНоменклатуры из списка активных группировок. Это критически важный шаг: пока поле находится в группировках, оно будет стремиться занять отдельную строку.
  3. Настройка дополнительных полей: Перейдите на закладку «Дополнительные поля». Добавьте сюда два поля: сначала Номенклатура, затем ХарактеристикаНоменклатуры.
  4. Выбор размещения: В нижней части настройки дополнительных полей найдите параметр «Размещение». По умолчанию там может стоять значение «В одной колонке». Вам необходимо принудительно установить значение «В отдельных колонках». Именно эта настройка отвечает за создание полноценного табличного вида.
  5. Включение детальных записей: Чтобы отчет вывел конкретные позиции товаров, необходимо установить флаг «Выводить детальные записи». Без этого флага отчет может показать только общие итоги по складу без расшифровки по товарам, так как мы убрали номенклатуру из группировок.

Особенности иерархии и итогов

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

Оставьте группировку по Номенклатура (с типом «Иерархия»), но для самой детальной записи используйте дополнительные поля. Однако стоит помнить, что ПостроительОтчетов в этом плане менее гибок, чем современная СистемаКомпоновкиДанных (СКД).

Проблема пустых характеристик и объектов

В 1С:УПП не для всех товаров может вестись учет по характеристикам. При выводе отдельной колонкой вы можете столкнуться с тем, что в строках товаров без характеристик будет пусто или отобразится надпись <Объект не найден>. Рассмотрим, как это минимизировать:

Сортировка данных при использовании дополнительных полей

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

Перейдите на закладку «Сортировка» и добавьте туда поля Номенклатура.Наименование (или Артикул) и ХарактеристикаНоменклатуры.Наименование. Это гарантирует, что товары будут идти по алфавиту, а внутри одного товара характеристики также будут упорядочены.

Использование «Универсального отчета» как альтернатива

Если типовой отчет «Товары на складах» не поддается нужной настройке, вспомните о существовании «Универсального отчета» (меню Отчеты -> Универсальный отчет). Он позволяет строить отчеты напрямую по регистрам (в данном случае — регистр накопления ТоварыНаСкладах).

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

  1. Выберите тип объекта «Регистр накопления» и имя объекта «Товары на складах».
  2. В настройках на закладке «Группировки» оставьте только Склад.
  3. На закладке «Дополнительные поля» добавьте Номенклатура и Характеристика.
  4. Установите размещение «В отдельных колонках».

Этот метод часто оказывается быстрее и надежнее для получения простых плоских таблиц.

Техническая справка для разработчиков

Если вы решите реализовать это программно, то работа с ПостроительОтчетов будет выглядеть примерно так (фрагмент для понимания логики настройки программного вывода):


// Пример настройки построителя программно
ПостроительОтчета.ВыводитьДетальныеЗаписи = Истина;
НовоеПоле = ПостроительОтчета.ВыбранныеПоля.Добавить("Номенклатура");
НовоеПоле = ПостроительОтчета.ВыбранныеПоля.Добавить("ХарактеристикаНоменклатуры");

// Настройка размещения доп. полей
ПостроительОтчета.РазмещениеДополнительныхПолей = РазмещениеТекстаРезультатаПостроителяОтчета.ВОтдельныхКолонках;

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

← На главную