Reporting services SSRS IIF评估所有字段
我有一个文本框,它位于使用SSRS 2008的表外。我正在尝试使用下面的代码确定其中是否有任何一行包含2、3或4。这只适用于第一行 有没有一种方法可以让它评估所有字段而不仅仅是第一行 谢谢你的建议Reporting services SSRS IIF评估所有字段,reporting-services,iif,Reporting Services,Iif,我有一个文本框,它位于使用SSRS 2008的表外。我正在尝试使用下面的代码确定其中是否有任何一行包含2、3或4。这只适用于第一行 有没有一种方法可以让它评估所有字段而不仅仅是第一行 谢谢你的建议 =IIf( ( Fields!Type.Value = "2" Or Fields!Type.Value = "3" Or Fields!Type.Value = "4" ) , "Ye
=IIf(
(
Fields!Type.Value = "2"
Or Fields!Type.Value = "3"
Or Fields!Type.Value = "4"
)
, "Yes, found it.", "No, it's missing"
)
除非定义范围/数据集,否则它将不起作用,
IIf
不支持该范围/数据集。
您可以通过以下方式解决此问题:
- 创建更新外部文本框的
(code
)右键单击报告>报告属性>代码选项卡
- 在表中使用您的表达式
=IIf(
Sum(
IIf(Fields!Type.Value=2, 1, 0),
"YourDataSet"
) = 0,
"Not Found",
"found " & Fields!Type.Value
)
不确定这是否适用于您的范围,但这是另一种解决方案。使用以下表达式:
IIF(SUM(IIF(Fields!Type.Value = "2" OR Fields!Type.Value = "3" OR Fields!Type.Value = "4",1,0),"DataSet1")>0,"Yes, found it.", "No, it's missing")
其中DataSet1是数据集的名称
它所做的是计算它找到值2、3或4的次数。如果计数大于0,则该值存在,因此它将显示“是的,我找到了”为什么要将其保留在
表之外?表的作用域中存在行数,因此表达式仅显示1行,您只需创建列
并写入表达式即可。