隐藏重复行SSRS 2008 R2

问题描述 投票:6回答:6

由于源表具有重复数据,因此我的报告中将出现重复数据。没有创建组,我想隐藏重复的数据写表达式。所以我做了什么:我选择表格行并为表格行的隐藏属性添加表达式。

表达式就像=(Previous(Fields!ID.Value)= Fields!ID.Value)但它不起作用......仍然显示重复数据。因此,请告诉我如何在ssrs写入表达式中禁止重复行而不是通过分组。

ssrs-2008
6个回答
15
投票

你可能应该首先尝试这些选项:

  • 尝试清理源上的重复数据。
  • 更改源查询,以便重复项不会出现在数据集中。 (例如SELECT DISTINCT)

如果没有,在行的Visibility Hidden属性中,您可以使用Previous函数:

=iif(Fields!YourField.Value = Previous(Fields!YourField.Value), True, False)

您必须对YourField列进行排序才能使其正常工作。


9
投票

我也把上面的表达式放在上面,直到我开始在属性窗格中使用“隐藏重复项”行。您基本上只需选择行,在下拉列表中选择您的数据集,就是这样。任何重复都将被隐藏。此外,如果你只是想隐藏某些文本框重复,你可以像我之前说的那样做,除了点击文本框而不是行。只是另一种选择,我知道你说使用表达式。


6
投票

您可以使用表达式或单元格或行属性中的“隐藏重复项”选项来执行此操作。

表达式:

=IIF(Fields!YourField.Value = Previous(Fields!YourField.Value), True, False)

隐藏重复步骤:

  1. 选择行或单元格
  2. 单击键盘上的F4键
  3. 寻找“隐藏重复”
  4. 从下拉列表中选择您的DataSet

做完了,我希望有所帮助


1
投票

作为替代选项,您可以通过设置行组来完成。在我试图创建的报告中,由于在列表容器中多次使用相同的数据集,Hide Duplicates属性将无法正常运行。

您需要做的就是设置默认行组的行组属性(右键单击灰色行标题,然后转到Row Group然后Group Properties),并在Group expressions选项卡上添加General。为每个字段添加所需的数量。这就像Microsoft Excel中的删除重复项工具


0
投票

有时,“隐藏重复项”选项会应用于报表内容。如果在单元格中的字段周围添加=Sum(Field!Field_Name.Value)和,则会抑制先前记录中的副本。当然,严格来说,这是一个解决方案,其中传入的数据集具有问题的单元格的NULL行。


0
投票

由于在SSRS中使用Previous函数与之前的唯一记录相比较,因此如果重复记录不是彼此相邻,则可能导致仍然显示的记录的副本。

使用您应用Previous函数的每个表上的排序,它应该解决“非相邻的”重复记录。

© www.soinside.com 2019 - 2024. All rights reserved.