Eclipse BIRT报告中存在错误的重复行

Eclipse BIRT报告中存在错误的重复行,eclipse,birt,Eclipse,Birt,我正在处理的BIRT报告有一个问题,报告中有一个嵌套表。外部表包含与发票上的项目相关的数据,而内部表包含与人工费用的价格带相关的内容。我已经编写了一个单独的数据集,它获取内部数据,由参数绑定到外部表中的数据。现在,当我使用我给它的默认值在BIRT中预览内部数据集时,它返回两行关于账单编号和项目编号的数据-正常费率和加班费率,如果您愿意的话。当我在相同的数据上完整地运行报告时,外部表的内容很好,但是内部表只是重复同一行两次——这只是重复的第一行 这是表格在布局视图中的大致外观: Item De

我正在处理的BIRT报告有一个问题,报告中有一个嵌套表。外部表包含与发票上的项目相关的数据,而内部表包含与人工费用的价格带相关的内容。我已经编写了一个单独的数据集,它获取内部数据,由参数绑定到外部表中的数据。现在,当我使用我给它的默认值在BIRT中预览内部数据集时,它返回两行关于账单编号和项目编号的数据-正常费率和加班费率,如果您愿意的话。当我在相同的数据上完整地运行报告时,外部表的内容很好,但是内部表只是重复同一行两次——这只是重复的第一行

这是表格在布局视图中的大致外观:

Item   Description   Rate       Quantity    Item total
[item] [desc]        [rate]     [quantity]  [total]
…其中价格和数量在内部表格中

我本以为会看到这样的情况:

Item   Description       Rate  Quantity   Item Total
1      Callout           $40       1        $40
2      Labor             $30       4.5      $185
                         $50       1        
但我更喜欢:

Item   Description       Rate   Quantity   Item Total
1      Callout           $40       1        $40
2      Labor             $30       4.5      $185
                         $30       4.5        
…即使查询数据库并基于相同的输入条件预览内部数据集也会显示预期结果


还有其他人有过这样的经历吗?我有一种预感,这与绑定有关,但不确定是什么。

不确定您的问题是否可以在查看数据和设计的情况下得到回答。但需要注意的是,您在数据集预览中看到的结果并不一定是查询完全运行时所看到的结果。我已经看到了返回的7条记录的差异。我原以为只有7分,全速跑的时候应该是一样的,但事实并非如此。预览不仅仅是一个前500名的查询,它还有一些其他(不确定是什么)过滤器

要解决的问题是您的查询还是绑定

如果您使用的是SQL数据库。在SSMS查询中运行SQL,查看是否得到与在Inner表中运行时相同的结果


另外,创建一个新的测试报告,复制数据集并与一个独立的表一起使用

不知道不看数据和设计就能回答你的问题。但需要注意的是,您在数据集预览中看到的结果并不一定是查询完全运行时所看到的结果。我已经看到了返回的7条记录的差异。我原以为只有7分,全速跑的时候应该是一样的,但事实并非如此。预览不仅仅是一个前500名的查询,它还有一些其他(不确定是什么)过滤器

要解决的问题是您的查询还是绑定

如果您使用的是SQL数据库。在SSMS查询中运行SQL,查看是否得到与在Inner表中运行时相同的结果


另外,创建一个新的测试报告,复制数据集并与一个独立的表一起使用

我想我对它进行了排序,这是最奇怪的事情:在子表上,我一直在删除页眉和页脚行&只是在布局视图中保留细节行。今天的最后一件事,就在我准备回家之前,我再次尝试——那天大约第70次删除了表,替换了它,重新做了参数绑定,一切都和以前一样,但这次我保留了页眉行和页脚不变。点击预览标签,瞧,所有的都显示正确。因此,由于我不需要子表的页眉或页脚,我进入属性,单击隐藏此元素,再次预览-一切正常。对数据绑定没有区别,对映射或其他任何内容没有区别,对数据集没有更改-唯一的区别是保留页眉和页脚,但将其隐藏


考虑做一个bug报告,tbh。

我想我已经把它分类了,这是最奇怪的事情:在子表上,我一直在删除页眉和页脚行&只是在布局视图中保留细节行。今天的最后一件事,就在我准备回家之前,我再次尝试——那天大约第70次删除了表,替换了它,重新做了参数绑定,一切都和以前一样,但这次我保留了页眉行和页脚不变。点击预览标签,瞧,所有的都显示正确。因此,由于我不需要子表的页眉或页脚,我进入属性,单击隐藏此元素,再次预览-一切正常。对数据绑定没有区别,对映射或其他任何内容没有区别,对数据集没有更改-唯一的区别是保留页眉和页脚,但将其隐藏


考虑生成错误报告,tbh。

获得此行为的一种方法是意外地将表级绑定替换为列级绑定

例如,通过将数据集拖动到报表中来定义表。选择整个表格(使用outline视图,或选择表格中的某些内容,然后单击网格下方弹出的“表格”按钮),然后转到Binding选项卡。请注意,数据集和列绑定都已填充


现在,在详细信息行中只选择一个字段。请注意,在“绑定”选项卡上,数据集为空,不显示任何列绑定。对此感到困惑的人(就像我一样)可能会编辑列的绑定并指定用于创建表的相同数据集。如果执行此操作,则在运行报告时,仅会在该列中看到重复的单个值。(我相信被重写的列正在绑定到数据集的第二个实例,而不是表正在迭代的实例。)

获得此行为的一种方法是意外地将表级绑定替换为列级绑定

例如,通过将数据集拖动到报表中来定义表。选择整个表格(使用outline视图,或选择表格中的某些内容,然后单击网格下方弹出的“表格”按钮),然后转到Binding选项卡。请注意,数据集和列绑定都已填充

现在,在详细信息行中只选择一个字段。请注意,在“绑定”选项卡上,数据集为空,不显示任何列绑定。对此感到困惑的人(就像我一样)可能会编辑该列的绑定