这是我的问题:我有一些重复的行(具有相同 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;的隐藏表达式包含错误: 对象变量或未设置块变量。
有关于此的任何想法吗?
提前致谢
答案 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)