构建报告并根据某些变量更改颜色。如果是休息学期,则将颜色设为“Gainsboro”。如果出勤率小于 0.4 并且不为空,则将颜色设置为“#ffc7ce”
我完全困惑为什么这段代码无法运行,它看起来很简单。
=IIF(fields!Break_Semester <> "Break Semester"
,IIF(len(Fields!Attendance.Value) <> 0 and Fields!Attendance.Value < 0.4
,"#ffc7ce"
,"Gainsboro")
,"Gainsboro")
运行此代码时,代码有效:
=IIF(len(Fields!Attendance.Value) <> 0 and Fields!Attendance.Value < 0.4
,"#ffc7ce"
,"Gainsboro")
所以我不确定为什么嵌套会搞砸。
有什么指点吗?
最佳答案
我相信您只是错误地识别了 Break_Semester
字段。确保 Fields
部分大写,并且需要添加 .Value
。所以应该是这样的
=IIF(Fields!Break_Semester.Value <> "Break Semester"
,IIF(len(Fields!Attendance.Value) <> 0 and Fields!Attendance.Value < 0.4
,"#ffc7ce"
,"Gainsboro")
,"Gainsboro")
在条件语句周围添加括号也是不错的选择,但这只是个人偏好,以保持简洁。
关于if-statement - 嵌套 If 语句 SSRS 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55165359/