Reporting services SQL Server报表生成器行组仅显示第一条记录
行组中的值不是First、Sum或任何其他汇总行的值。所有记录都应以字段的形式返回!FieldName。数据集的值。考虑以下数据集:Reporting services SQL Server报表生成器行组仅显示第一条记录,reporting-services,ssrs-2008,Reporting Services,Ssrs 2008,行组中的值不是First、Sum或任何其他汇总行的值。所有记录都应以字段的形式返回!FieldName。数据集的值。考虑以下数据集: SerlNmbr ItemNmbr Qty ABC123 34562334 2 ABC123 23314454 1 ABC123 09878976 3 因此,如果在我的表中,我将行组“Serial”设置为group by field SerlNmbr以显示ItemNmbr和Qty
SerlNmbr ItemNmbr Qty
ABC123 34562334 2
ABC123 23314454 1
ABC123 09878976 3
因此,如果在我的表中,我将行组“Serial”设置为group by field SerlNmbr以显示ItemNmbr和Qty,我应该看到:
SerlNmbr ItemNmbr Qty
ABC123
34562334 2
23314454 1
09878976 3
但是,我只得到数据集的第一行。但是,当我回到串行组并通过SerlNmbr取出分组时,我得到:
SerlNmbr ItemNmbr Qty
ABC123
34562334 2
ABC123
23314454 1
ABC123
09878976 3
所以我知道我的数据集将返回所有3行。为什么我的分组要删除除第一个之外的所有内容?我无法在类似的数据库架构上重现这一点。我的建议是重新创建报告,并确保报告的详细信息部分包含
ItemNmbr
和Qty
字段。高亮显示此行,并添加新的组项目。添加SerlNmbr
作为要分组的字段。确保“详细信息”部分中的字段显示字段!ItemNmbr.Value,而不是第一个(…)
添加组页脚和页眉。在页脚中添加以下内容:
=Count(Fields!ItemNmbr.Value)
查看它是否返回序列号的子项数。因此,这可能不是最合适的方法,但我得到了所需的结果,即按照第三个示例中的方式对其进行分组,并通过执行以下操作来隐藏重复的SerlNmbr行
=IIF(Previous(Fields!SerlNmbr.Value) = Fields!SerlNmbr.Value, True, False)
在行可见性方面,实际上,如果我不仅可以隐藏重复的值,而且隐藏空白行,也可以使第三个分组示例工作。我知道我可以进入row属性并设置HideDuplicates=SerlNmbr,但它仍然返回一个空行,而SerlNmbr应该是空的。我怎么才能让它停止回排?明白了=SerlNmbr行可见性中的IIF(前一个(Fields!SerlNmbr.Value)=Fields!SerlNmbr.Value,True,False)。我很好。