← На главную
При разработке отчетов в системе компоновки данных (СКД) разработчики часто сталкиваются с ситуацией, когда в результат выводятся нежелательные данные: например, вместе с кодом, артикулом или оригинальным номером номенклатуры в ячейку или отдельную строку подтягивается полное наименование ссылочного объекта. В итоге колонка растягивается на весь экран, а ограничение ее ширины приводит к появлению многострочного текста, загромождающего отчет.
Разберем причины такого поведения платформы и подробно рассмотрим способы правильной настройки структуры отчета для скрытия лишней информации.
Выясним причины появления лишних полей
Появление нежелательных наименований и реквизитов в группировках обычно обусловлено следующими механизмами платформы 1С:
- Наследование элемента
<Авто> в выбранных полях: если на уровне конкретной строки структуры отчета список выбранных полей содержит элемент <Авто>, группировка автоматически наследует полный перечень полей, настроенный на самом верхнем уровне (на уровне «Отчет»).
- Стандартное представление ссылочных типов: когда в группировку выводится ссылка на справочник (например,
Номенклатура), платформа по умолчанию отображает основное представление объекта (наименование).
- Параметр «Расположение реквизитов»: при значении по умолчанию («Авто» или «Вместе») дополнительные реквизиты объекта объединяются в одну ячейку с основным полем или выводятся под ним новой строкой.
- Использование иерархических группировок: при типе группировки «Иерархия» система выводит названия вышестоящих групп и папок.
Способ 1. Настройка выбранных полей на уровне конкретной группировки
Рассмотрим по шагам, как переопределить состав колонок для конкретной строки отчета, чтобы исключить лишние наименования:
- Перейдем на вкладку «Настройки» в схеме компоновки данных.
- В дереве структуры отчета выделим именно ту группировку, в которой выводятся лишние данные (а не корневой элемент «Отчет»).
- В нижней панели перейдем на вкладку «Выбранные поля».
- Если в списке присутствует элемент
<Авто>, удалим его. Пока присутствует <Авто>, группировка будет дублировать поля родительского уровня.
- Добавим вручную только те реквизиты, которые действительно должны отображаться в данной строке (например,
ОригинальныйНомер или Количество).
- Проверим, чтобы поле
Номенклатура.Наименование или сама ссылка Номенклатура отсутствовали в этом списке.
Способ 2. Изменение расположения полей группировок и реквизитов
Проанализируем параметры размещения данных, которые позволяют разделить сцепленные поля или вовсе скрыть детальные строки:
- Выделим корневой элемент «Отчет» или нужную группировку в структуре.
- Перейдем на вкладку «Другие настройки».
- Найдем параметр «Расположение реквизитов» и переключим его значение на «Отдельно». Это вынесет каждый реквизит в собственную отдельную колонку вместо вывода подстрокой в основной ячейке.
- Найдем параметр «Расположение полей группировок». Если требуется видеть только сводные итоги по номеру или группе без вывода детальных строковых представлений по каждой позиции, установим значение «Отдельно и только в итогах».
Способ 3. Переопределение выражения представления поля
Если необходимо сгруппировать данные по ссылочному полю, но не показывать наименование объекта, настроим явное представление поля в наборе данных:
- Перейдем на вкладку «Наборы данных» схемы компоновки данных.
- В таблице полей найдем нужный объект (например,
Номенклатура).
- В колонке «Выражение представления» укажем требуемый реквизит:
Номенклатура.ОригинальныйНомер
- Если наименование вообще не должно выводиться в этой колонке, можно задать пустую строку:
""
- В результате платформа перестанет обращаться к стандартному наименованию ссылки при формировании ячейки.
Способ 4. Использование типа группировки «Без иерархии» и вычисляемых полей
Разберем ситуацию, когда нежелательные строки формируются из-за структуры самого справочника:
- В структуре отчета откроем свойства группировки и проверим параметр «Тип группировки». Если выбрано значение «Иерархия», изменим его на «Без иерархии» (или «Элементы»), чтобы убрать названия родительских папок.
- Если для отчета ссылка на номенклатуру не нужна, а требуется только артикул или оригинальный номер, создадим на вкладке «Вычисляемые поля» новое поле (например,
НомерДляГруппировки) с выражением Номенклатура.ОригинальныйНомер и используем в группировках именно это простое текстовое или числовое поле вместо ссылки на объект.
Важный совет: если в процессе настройки отчета было установлено множество взаимоисключающих параметров оформления и расположения колонок, наиболее эффективным решением будет сбросить настройки варианта отчета к стандартным и последовательно переопределить состав полей только для нужных узлов структуры.