这是我试图通过表达式做的简化版本。
如果response_time > response goal
,“颜色”,但如果response_time > response_goal * 0.25
,“颜色#2”
这可以通过表达式起作用吗?
在把我的头撞到墙上的舞台上......
这是我试图通过表达式做的简化版本。
如果response_time > response goal
,“颜色”,但如果response_time > response_goal * 0.25
,“颜色#2”
这可以通过表达式起作用吗?
在把我的头撞到墙上的舞台上......
我并不完全了解 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 ,您可能希望使用表达式应返回的任何内容更改“默认选项” 。
我会从 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")