SSRS 14 - 背景颜色表达错误

时间:2017-05-29 07:45:48

标签: vba reporting-services expression

我在SQL Server Reporting Services中有一个Matrix,其中只对具有此结果TFN/A的列进行了一些计算。

我要做的是:

  • 如果该列没有任何结果TF,则颜色应为“灰色”
  • 其他count("T")/Count("T" U "F")如果此结果为> 0.5则为“绿色”,否则为“红色”。

我有这段代码:

=IIF(Sum(IIF(Fields!Indicator_P3.Value = "T" Or Fields!Indicator_P3.Value = "F", 1, 0)) = 0 ,
"DimGray" , 
IIF( Sum(IIF(Fields!Indicator_P3.Value = "T", 1, 0)) / 
    Sum(IIF(Fields!Indicator_P3.Value = "T" Or Fields!Indicator_P3.Value = "F")) > 0.5, "Green" ,"Red" ) )

但是当我执行报告时,我遇到了这个问题:

A expressão BackgroundColor para caixa de texto 'Textbox40' contém um erro: [BC30455] Argument not specified for parameter 'FalsePart' of 'Public Function IIf(Expression As Boolean, TruePart As Object, FalsePart As Object) As Object'.

我做错了什么?

谢谢!

1 个答案:

答案 0 :(得分:0)

您的一个IIF陈述不正确。像Snowlockk提到的那样,

SUM(IIF(Fields!Indicator_P3.Value = "T" Or Fields!Indicator_P3.Value = "F"))

此IIF声明没有truefalse值。我的猜测是,你的括号没有正确关闭。这意味着,您计算SUM(GREEN)表示true,SUM(RED)表示false;这并没有多大意义。您需要在IIF语句中为true和false条件添加2个整数值。