当前星期一和当前星期五的 SSRS 表达式

SSRS Expression for current monday and current friday

我在 SSRS 中的报告文本框有以下表达式

="TR1's Sent Between "+Format(dateadd(DateInterval.Day,1-WeekDay(Today), Today), "dd/MM/yyyy")

这个 returns 星期日而不是星期一。有谁知道如何显示当前星期一和当前星期五的日期?如果你能解释每个部分,让我理解格式,那就太好了

尝试使用这两个表达式:

对于 Mondays 你可以使用这样的东西:

=Format(Today.AddDays(1-WeekDay(Today,FirstDayOfWeek.Monday)),"dd/MM/yyyy")

对于Fridays你可以使用:

=FORMAT(Today.AddDays(5-WeekDay(Today,FirstDayOfWeek.Monday)),"dd/MM/yyyy")

您的表达式的第一个问题是您没有在 WeekDay 函数中指定一周的第一天,如果您的表达式是 return 系统默认的星期日的第一天一周是星期天。

我的表达式采用今天的日期和 add/substract 获得一周的第一天所需的天数:星期一。当我使用 FirstDayOfWeek.Monday 在我的表达式中设置一周的第一天时,它会计算 1-1 = 0 它将在今天的日期中添加零天,因为今天是星期一(至少现在在哥伦比亚)。

对于星期五是相似的,星期五是一周中的第 5 天,因此您必须 add/substract 到今天日期所需的天数才能得到它的日期。 5-1 = 4 (5 - 1 今天是星期几,考虑到星期一是第一天),现在只需将今天的日期加上 4 天就可以 return 周五日期。

如果有帮助请告诉我。