如何在SSRS 2005中隐藏特定的重复行?

时间:2016-03-15 15:45:10

标签: reporting-services reportingservices-2005

这是我的问题:我有一些重复的行(具有相同 ID 的行)。我想要的是根据特定的列值隐藏行。提到的列显然不是ID列(它是描述列)。

我在行可见性(表达式)上尝试了这个:

=IIF (Fields!Incident_ID.Value = Previous(Fields!Incident_ID.Value)

AND

ReportItems!Description.Value <> "Incident Status Change to Work In Progress from Open", true, false)

因此,我想要排除描述不等于&#39;事件状态更改为正在进行的工作的行<#39;

我得到的信息是:

  

表格&#39;表1&#39;的隐藏表达式包含错误:   对象变量或未设置块变量。

有关于此的任何想法吗?

提前致谢

3 个答案:

答案 0 :(得分:1)

我认为您可能会收到该错误,因为您的查询结果中有一行或多行在NULL字段中有Description值。

你可以通过简化你的表达来测试这个理论:

=IIF(Fields!Incident_ID.Value = Previous(Fields!Incident_ID.Value), true, false)

只是为了看看你是否可以无误地运行报告。

如果可行,那么您需要在较大条件测试中添加NULL值的测试,以回到您想要的逻辑。

试试这个:

=IIF(Fields!Incident_ID.Value = Previous(Fields!Incident_ID.Value) AND IsNothing(Fields!Description.Value) = false AND Fields!Description.Value <> "Incident Status Change to Work In Progress from Open", true, false)

Description具有NULL值时,这可以通过阻止评估条件的最后部分来避免错误。

答案 1 :(得分:0)

我认为你只是使用ReportItems而不是Fields!

=IIF(Fields!Incident_ID.Value = Previous(Fields!Incident_ID.Value) AND Fields!Description.Value <> "Incident Status Change to Work In Progress from Open", true, false)

答案 2 :(得分:0)

SSRS有时可能会不稳定。尝试括号:

 =IIF(((Fields!Incident_ID.Value = Previous(Fields!Incident_ID.Value)) AND (IsNothing(Fields!Description.Value) = false) AND (Fields!Description.Value <> "Incident Status Change to Work In Progress from Open")), true, false)