需要任何建议。
我在列标题中使用了expression =WeekdayName(weekday(fields!date.value))
它返回一周中的某一天,但是它会提前一天,例如当我将星期一的日期放入参数中时,报告中显示为“星期二”。
我的问题是,上述表达式能否进行调整以显示前一天的WeekdayName,例如=WeekdayName(weekday(fields!date.value -1))
? 我尝试了这个方法,但出现错误。
谢谢。
需要任何建议。
我在列标题中使用了expression =WeekdayName(weekday(fields!date.value))
它返回一周中的某一天,但是它会提前一天,例如当我将星期一的日期放入参数中时,报告中显示为“星期二”。
我的问题是,上述表达式能否进行调整以显示前一天的WeekdayName,例如=WeekdayName(weekday(fields!date.value -1))
? 我尝试了这个方法,但出现错误。
谢谢。
如果你想从输入的日期中减去一天,那么你可以使用以下代码:
= DateAdd("d", -1, yourdateField)
您可以使用此方法从日期中减去任意天数。
但是,您是否尝试查看为什么它会给出前一日期的日期。请检查系统日期时间或与之检查。
=WeekdayName(weekday(Today()))
并查看它是否为当前日期提供了正确的星期几。
Weekday和weekdayname函数都有另一个可选参数,用于定义一周的起始日。 问题是这两个函数的默认值不同,因此根据您的服务器设置,应明确设置这些函数的第二个参数。
=WeekdayName((weekday(fields!date.value)+5) Mod 7)+1)
括号很重要,以确保加法先执行。
仅供参考: OP再次提问是因为工作日偏移,这是正确的解决方案。 =WeekdayName(weekday(Today()))给我明天
=WeekdayName(Weekday(Today(),FirstDayOfWeek.System))
DateAdd
和-1
来从日期中减去一天,以获得前一天的日期。 - Mahesh