При группировке в BIRT мы часто хотим, чтобы группирующееся значение обнаружилось на первой строке следующим образом:
Group User Reputation
------ --------------- ----------
Admins Bill The Weasel 51,018
Mark Grovel 118,101
Users Pax_my_bags_got_to_go 73,554
Jon Scoot **,***,*** <- overflow
Clueless 92,928
Нормальный способ достигнуть этого состоит в том, чтобы разметить группу в разработчике как follws:
+---------+--------+--------------+
Tbl Hdr | Group | User | Reputation |
+---------+--------+--------------+
Grp Hdr | [Group] | | |
+---------+--------+--------------+
Grp Dtl | | [User] | [Reputation] |
+---------+--------+--------------+
Grp Ftr | | | |
+---------+--------+--------------+
Tbl Ftr | | | |
+---------+--------+--------------+
который, к сожалению, размечает данные точно тем способом со сгруппированным значением на другой строке:
Group User Reputation
------ --------------- ----------
Admins
Bill The Weasel 51,018
Mark Grovel 118,101
Users
Pax_my_bags_got_to_go 73,554
Jon Scoot **,***,*** <- overflow
Clueless 92,928
Это особенно болезненно с данными, где существует много групп только с одним пользователем, так как мы используем вдвое больше пространства по мере необходимости. Если мы перемещаемся [Group]
элемент данных вниз к Grp Dtl
строка, мы получаем распечатанный для каждой строки в группе.
Как в BIRT сделайте мы объединяем эти две строки Grp Hdr
и первое Grp Dtl
?
Ответ ниже был оригинальным ответом Mystik, но, как я ни старался, я не смог заставить его работать правильно (хотя я не пробовал второе предложение, так что оно вполне может работать). Это может быть вызвано тем фактом, что я работаю на последнем уровне BIRT (и, нет, к сожалению, мне не разрешено обновляться, это часть отдельного продукта, который имеет свои собственные циклы выпуска).
Решение, которое я нашел, заключалось в том, чтобы оставить значение данных в строке группировки и выбрать ячейку (не значение данных), затем установить Drop
элемент управления в Properties
, General
на Detail
, а затем None
по умолчанию.
В результате значение данных при выводе отчета опускается в строку детализации.
И я редактирую этот ответ, а не добавляю свой собственный, поскольку не хочу быть репортерской шлюхой :-)
Попробуйте выполнить следующие шаги:
В расширенном списке вы увидите свойство "Подавлять дубликаты". Установите это значение для столбца с данными группы, и все будет готово.
Подавлять
Duplicates
+---------+--------+--------------+
Tbl Hdr | Group | User | Reputation |
+---------+--------+--------------+
Grp Hdr | | <удалить эту строку ПОСЛЕ создания группы
+---------+--------+--------------+
Grp Dtl | [Группа] | [Пользователь] | [Репутация] | <удалить эту строку после создания группы>.
+---------+--------+--------------+
Grp Ftr | | | | | |
+---------+--------+--------------+
Tbl Ftr | | | | | |
+---------+--------+--------------+