以下是我试图通过表达式完成的简化版本。
如果response_time > response goal
,“颜色”,但如果response_time > response_goal * 0.25
,“颜色#2”
这可以通过表达式来实现吗?
在我的头撞墙的舞台上......
答案 0 :(得分:1)
我不完全了解SSRS将使用的操作顺序,但尝试将乘法值包装在括号中。
IIf(response_time > response_goal, "colour", IIf(response_time > (response_goal * 0.25), "colour#2","default option"))
如果response_time
不大于response_goal
或response_goal
* 0.25,则您希望更改“默认选项”,无论表达式应该返回。
答案 1 :(得分:1)
我会从Nick那里改进这个表达式,因为即使第二个条件为真,第一个条件也会评估为真。如果使用Switch功能,它也会更容易阅读。所以尝试这样的事情:
=Switch(response_time > response_goal and response_time <= response_goal * 0.25,"colour", response_time > response_time * 0.25, "colour#2")
更新:尼克在操作顺序上是正确的 - 我被键入了大于号而不是数学运算。我仍然更喜欢Switch函数,但只是为了纠正记录 - 表达式应如下所示:
=Switch(response_time > response_goal 0.25 and response_time <= response_goal ,"colour#2", response_time > response_time, "colour")