При разработке отчетов в системе компоновки данных (СКД) программисты часто сталкиваются с тем, что стандартный механизм вывода данных добавляет лишние визуальные элементы. Одним из таких элементов является системный заголовок "Детальные записи". Этот заголовок автоматически появляется над списком строк, если в структуре отчета используется соответствующая группировка. В этой статье мы подробно разберем, как избавиться от этой надписи и сделать отчет более эстетичным без написания лишнего программного кода.
Рассмотрим наиболее простой и правильный с точки зрения архитектуры СКД способ. Система компоновки данных предоставляет гибкие параметры управления выводом для каждого элемента структуры отчета. Посмотрим, как ими воспользоваться.
Для начала откроем схему компоновки данных и перейдем на вкладку "Настройки". В дереве настроек (левая колонка) выберем конкретную группировку, заголовок которой мы хотим скрыть. Обычно она так и называется — Детальные записи.
Разберем последовательность действий в нижней части окна настроек:
Авто.Этот метод позволяет полностью отключить системную надпись, не затрагивая сами данные. Проанализируем также параметр "Расположение группировок". Если установить его в значение Нет, это может скрыть заголовки всех группировок в отчете, что полезно для простых плоских таблиц.
Существует еще один интересный механизм, который часто упускают из виду. Каждая группировка в СКД имеет свойство ВариантИспользованияГруппировки. Рассмотрим, как это влияет на визуализацию.
Если мы выделим группировку Детальные записи и обратим внимание на ее свойства (или перейдем в настройки в последних версиях платформы), мы увидим возможность выбора типа использования:
Выбрав "Дополнительная информация", мы добьемся того, что системный заголовок перестанет выводиться. Этот метод отлично подходит, если нам нужно вывести какой-то свой текст или вообще оставить пустую область перед данными, не ломая структуру таблицы.
Если предыдущие методы по каким-то причинам не подходят (например, из-за особенностей иерархии), мы можем применить "хитрость" с именованием. Рассмотрим этот вариант подробнее.
В настройках группировки есть поле "Заголовок". Если мы просто оставим его пустым, система может подставить стандартное имя Детальные записи. Однако, если мы впишем туда одиночный пробел, СКД воспримет это как установленный пользователем заголовок и выведет пустую строку вместо системной надписи.
Проанализируем ситуацию, когда нам нужно скрыть заголовки конкретных полей. В этом случае на вкладке "Выбранные поля" можно выделить каждое поле, нажать правую кнопку мыши, выбрать "Установить заголовок" и также ввести пробел. Это полезно, когда нам нужно сохранить колонки, но убрать "шапку" над ними.
Для более сложных случаев, когда нужно не просто скрыть текст, а полностью изменить визуальное представление заголовка группировки, мы используем вкладку "Макеты". Разберем, как создать пустой макет для заголовка.
МоиДетальныеЗаписи) на вкладке настроек.МоиДетальныеЗаписи) и тип макета — "Заголовок".Теперь система вместо стандартного формирования заголовка будет обращаться к нашему пустому макету. Выясним причину, почему это иногда лучше: такой подход позволяет полностью контролировать отступы и границы вокруг данных.
Иногда настройки вывода заголовка игнорируются из-за специфических настроек родительских групп. В таких случаях мы можем воспользоваться механизмом условного оформления. Посмотрим на пример реализации:
ЗаказСсылка Заполнено или просто не указываем условие для оформления всей области).Это принудительно заставит СКД заменить любой текст (в том числе системный заголовок) на пустоту при рендеринге отчета.
Мы рассмотрели пять различных подходов к управлению видимостью заголовка Детальные записи. Подведем итог, какой метод выбрать в зависимости от ситуации:
Помните, что излишнее нагромождение макетов может усложнить поддержку отчета в будущем, поэтому всегда старайтесь сначала использовать стандартные переключатели в "Других настройках".