在SSRS背景颜色表达中使用Today()函数

时间:2014-07-22 18:44:21

标签: reporting-services

我正在尝试创建一些SSRS表达式,当满足以下情况时会突出显示行:当日期字段=今天...当日期字段> =今天到+120天...当日期field =昨天和之前的所有日子......

这是来自Crystal Report,其中包含以下代码:

if  {usp_ND044R01;1.review_Date} in  AllDatesToYesterday
then crYellow
else
if  {usp_ND044R01;1.review_Date} in  CurrentDate to CurrentDate+ 120
then crYellow
else
crWhite

这就是我所在的地方:

=IIF(Fields!review_Date.Value = Today(), "Yellow", "No Color")
=IIF(Fields!review_Date.Value <= dateadd("d",120,today()), "Yellow", "No Color")
=IIF(Fields!review_Date.Value <= dateadd("d",-1,today()), "Yellow", "No Color")

我总是得到一个错误(今天之后的括号下的红色波浪线。今天是E.G. **)

任何建议都会有所帮助。

谢谢

2 个答案:

答案 0 :(得分:0)

如果他们引用同一行,您需要将IIF语句组合在一起。因此,您可以将行的填充属性设置为以下内容:

    =IIF(Fields!ProductDate.Value = Today(), "Yellow", 
     IIF(Fields!ProductDate.Value < Today(), "Green",
     IIF(Fields!ProductDate.Value <= dateadd("d",120,Today()), "Blue", "White")))

首先,这将检查该字段是否等于今天。如果是,则该行将为黄色。否则,它会检查字段值是否小于今天的日期。在那种情况下,它将是绿色的。如果没有,它将检查该值是否小于今天的日期加上120天。如果是,则该行将为蓝色。如果所有这些陈述都是假的,那么行的背景将是白色的。

答案 1 :(得分:0)

最后使用以下表达式使其工作:     = IIF(Fields!review_Date.Value&lt; DateAdd(“d”,120,Today)或Fie​​lds!review_Date.Value&lt; = Today,“Yellow”,“White”)