Reporting services 如何将SSRS表达式设置为返回上个月?
我想使用SSRS表达式将参数的默认值设置为一年中的上一个月 我试过:Reporting services 如何将SSRS表达式设置为返回上个月?,reporting-services,ssrs-2012,Reporting Services,Ssrs 2012,我想使用SSRS表达式将参数的默认值设置为一年中的上一个月 我试过: =CDate( DateSerial( IIf(DatePart("m", Today())=12, DatePart("yyyy",Today())-1, DatePart("yyyy",Today())), IIf(DatePart("m", Today())=12, 1, DatePart("m",Today())-1), 1 ) ) 我认为你把这件事复杂
=CDate(
DateSerial(
IIf(DatePart("m", Today())=12, DatePart("yyyy",Today())-1, DatePart("yyyy",Today())),
IIf(DatePart("m", Today())=12, 1, DatePart("m",Today())-1),
1
)
)
我认为你把这件事复杂化了,你不需要检查自己的年度变化——让内置函数为你做这件事 可能会有更好的解决方案,但这对我来说一直很有效 如果您只想要上个月的第一天,那么:
=DateSerial(
Year(
DateAdd("m", -1, Today())
),
Month(
DateAdd("m", -1, Today())
),
1
)
出于我的目的,我通常还需要上个月的最后一天,为此,我使用以下内容:
=DateSerial(
Year(
DateAdd("m", -1, Today())
),
Month(
DateAdd("m", -1, Today())
),
Day(
DateAdd("d", -1, DateSerial(Year(Today()), Month(Today()), 1))
)
)