我有一个数据集,我试图强迫所有> 12个月前进入一个组。我试图用一个SQL案例来做这个,当它分配所有月份和年份> 12个月前int值为0但是当我尝试将它放入SSRS时它不起作用。
我一直在尝试使用这个公式,但除非我删除'MonthName'功能,否则它不起作用。
= iif(Fields!ASGN_SUB_DUE_MONTH.Value> 0,monthname(Fields!ASGN_SUB_DUE_MONTH.Value)&“”& Fields!ASGN_SUB_DUE_YEAR.Value
,“超过12个月前”)
但这个公式有效
= iif(Fields!ASGN_SUB_DUE_MONTH.Value> 0,
monthname(iif(Fields!ASGN_SUB_DUE_MONTH.Value> 0和Fields!ASGN_SUB_DUE_MONTH.Value< 13,Fields!ASGN_SUB_DUE_MONTH.Value,1))
&安培; “”&领域!ASGN_SUB_DUE_YEAR.Value
,“超过12个月前”)
有谁知道为什么以及如何解决。第二个功能有效,但我不习惯将它留在报告中,嵌入的iif的第二部分有效。
提前致谢
答案 0 :(得分:0)
该问题与我的案例陈述以及我在后续研究中如何处理SSRS中的iif相关。 真正的语句需要嵌入的iif,因为它评估所有条目与表达式的所有部分,所以即使我有“月”值为-1或0但不会使用MONTHNAME()命中iif部分,它仍在评估它和导致错误。