我在SQL Server Reporting Services中有一个Matrix,其中只对具有此结果T
,F
或N/A
的列进行了一些计算。
我要做的是:
T
或F
,则颜色应为“灰色”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'.
我做错了什么?
谢谢!
答案 0 :(得分:0)
您的一个IIF陈述不正确。像Snowlockk提到的那样,
SUM(IIF(Fields!Indicator_P3.Value = "T" Or Fields!Indicator_P3.Value = "F"))
此IIF声明没有true
或false
值。我的猜测是,你的括号没有正确关闭。这意味着,您计算SUM(GREEN)
表示true,SUM(RED)
表示false;这并没有多大意义。您需要在IIF语句中为true和false条件添加2个整数值。