我有一个SSRS报告,它使用一个名为@Month的可选参数。
如果它为null,则存储过程返回上个月的数据。
如果它是一个值,它应该是2位数的月份,例如" 10"十月,一切都运作得很好。
我需要在Header中添加月份名称和运行报告的年份。
所以我在标题中添加了一个标签,我想让我的表达式根据用户选择的值写出月份。
因此,例如,如果值保留为null,在这种情况下返回的数据是上个月(在存储过程中使用DateAdd
),然后在12月标签将显示对于2014年11月,或者在2015年1月,该标签将显示2014年12月的
如果用户输入的参数值是月份,例如 10 ,我想显示 2014年10月。
我已经开始使用VS 2008报表设计器中的表达式构建器,但我被卡住了。
=" for " & Switch Parameters!Month.Value
我是否需要使用Switch
或Case
声明?
答案 0 :(得分:1)
你可以使用这样的东西,假设当用户输入月份时它指的是当前年份。
=" for " & IIF(IsNothing(Parameters!Month.Value), MonthName(Month(DateAdd("m",-1,Today()))) & " " & Year(DateAdd("m",-1,Today())), MonthName(Month(Today())) & " " & Year(Today()))