SSRS - 没有应用条件格式?
SSRS - Conditional formatting not getting applied?
我有以下表达式将背景颜色应用到文本框,但当该条件为真时,只会应用红色。所有其他条件都显示为白色?例如,当报表呈现时第一个条件为真时,背景颜色是白色而不是绿色?
=IIF(Round(SUM(CInt(Fields!TotalAchieved.Value) * 7.14)) >= 86, "Green",
IIF(Round(SUM(CInt(Fields!TotalAchieved.Value) * 7.14)) >= 79 AND
Round(SUM(CInt(Fields!TotalAchieved.Value) * 7.14)) <= 85, "Light Green",
IIF(Round(SUM(CInt(Fields!TotalAchieved.Value) * 7.14)) >= 64 AND
Round(SUM(CInt(Fields!TotalAchieved.Value) * 7.14)) <= 78, "Yellow", "Red" )))
您的 SUM(CINT(Fields!TotalAchieved.Value) * 7.14) 计算似乎没有给出您期望的结果。我要做的第一件事是添加一个显示此值的列,以确保它能满足您的期望。
一旦你弄对了,我还建议你使用 SWITCH 语句而不是嵌套的 IIF,它们更容易 read/debug。
你的表情会是
=SWITCH(
Round(SUM(CInt(Fields!TotalAchieved.Value) * 7.14)) >= 86, "Green",
Round(SUM(CInt(Fields!TotalAchieved.Value) * 7.14)) >= 79, "LightGreen",
Round(SUM(CInt(Fields!TotalAchieved.Value) * 7.14)) >= 64, "Yellow",
TRUE, "Red"
)
这样您就不需要检查范围,例如,如果值为 75,则第一个表达式失败但第二个表达式为真,因此 SWITCH
将在该点停止而不是评估其余部分,如果全部失败,那么最终的 TRUE
将像 else
.
我有以下表达式将背景颜色应用到文本框,但当该条件为真时,只会应用红色。所有其他条件都显示为白色?例如,当报表呈现时第一个条件为真时,背景颜色是白色而不是绿色?
=IIF(Round(SUM(CInt(Fields!TotalAchieved.Value) * 7.14)) >= 86, "Green",
IIF(Round(SUM(CInt(Fields!TotalAchieved.Value) * 7.14)) >= 79 AND
Round(SUM(CInt(Fields!TotalAchieved.Value) * 7.14)) <= 85, "Light Green",
IIF(Round(SUM(CInt(Fields!TotalAchieved.Value) * 7.14)) >= 64 AND
Round(SUM(CInt(Fields!TotalAchieved.Value) * 7.14)) <= 78, "Yellow", "Red" )))
您的 SUM(CINT(Fields!TotalAchieved.Value) * 7.14) 计算似乎没有给出您期望的结果。我要做的第一件事是添加一个显示此值的列,以确保它能满足您的期望。
一旦你弄对了,我还建议你使用 SWITCH 语句而不是嵌套的 IIF,它们更容易 read/debug。
你的表情会是
=SWITCH(
Round(SUM(CInt(Fields!TotalAchieved.Value) * 7.14)) >= 86, "Green",
Round(SUM(CInt(Fields!TotalAchieved.Value) * 7.14)) >= 79, "LightGreen",
Round(SUM(CInt(Fields!TotalAchieved.Value) * 7.14)) >= 64, "Yellow",
TRUE, "Red"
)
这样您就不需要检查范围,例如,如果值为 75,则第一个表达式失败但第二个表达式为真,因此 SWITCH
将在该点停止而不是评估其余部分,如果全部失败,那么最终的 TRUE
将像 else
.