我们如何在不浪费行的情况下分组BIRT,并且仍然只在第一行打印组项?

pax*_*blo 6 grouping reporting birt

在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
Run Code Online (Sandbox Code Playgroud)

实现这一目标的正常方法是将设计人员列为设计师:

        +---------+--------+--------------+
Tbl Hdr | Group   | User   |   Reputation |
        +---------+--------+--------------+
Grp Hdr | [Group] |        |              |
        +---------+--------+--------------+
Grp Dtl |         | [User] | [Reputation] |
        +---------+--------+--------------+
Grp Ftr |         |        |              |
        +---------+--------+--------------+
Tbl Ftr |         |        |              |
        +---------+--------+--------------+
Run Code Online (Sandbox Code Playgroud)

遗憾的是,它以完全相同的方式布局数据,并将分组值放在不同的行上:

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
Run Code Online (Sandbox Code Playgroud)

对于数据而言,这是特别痛苦的,因为我们使用的空间是所需的两倍,因此有很多组只有一个用户.如果我们将[Group]数据项向下移动到该Grp Dtl行,我们将为组中的每一行打印它.

在BIRT中,我们如何合并两条线Grp Hdr和第一条线Grp Dtl

Mys*_*ral 7

下面的答案是Mystik的原始答案,但是,尽我所能,我无法让它正常工作(虽然我没有尝试第二个建议,所以它可能工作).这可能是因为我正在运行BIRT的后级(并且,不,我不允许升级,不幸的是,它是具有自己的发布周期的单独产品的一部分).

我终于找到解决的办法是留在分组行的数据值,然后选择单元格(不是数据值),然后设置Drop在控制之下Properties,GeneralDetail而不是默认的None.

这会在呈现报表时将数据值下移到详细信息行.

我正在编辑这个答案,而不是添加我自己的答案,因为我不想成为一个代表妓女:-)


请尝试以下步骤:

  1. 像你一样创建组.
  2. 然后将组数据项向下拖动一行(见下文).此时,您可以根据需要删除组标题行.
  3. 然后单击其中包含组数据项的列.
  4. 选择后,转到控件的属性资源管理器并滚动到底部,选择"高级".
  5. 在高级列表中,您将看到一个名为"Suppress Duplicates"的属性.对于包含Group数据的列,使其成立,您将全部设置.

              Supress
             Duplicates
            +---------+--------+--------------+
    Tbl Hdr | Group   | User   |   Reputation |
            +---------+--------+--------------+
    Grp Hdr |                                 |  <-delete this row AFTER Group Creation
            +---------+--------+--------------+
    Grp Dtl | [Group] | [User] | [Reputation] |
            +---------+--------+--------------+
    Grp Ftr |         |        |              |
            +---------+--------+--------------+
    Tbl Ftr |         |        |              |
            +---------+--------+--------------+
    
    Run Code Online (Sandbox Code Playgroud)