如何格式化日期以包含周数?

时间:2015-10-19 14:21:16

标签: sql reporting-services ssrs-2012 bids

我正在使用Microsoft Business Intelligence Development Studio 2012尝试创建一个计算字段,该字段将为我提供名称为“createdon”的字段的月份和周数。

我是SQL新手,经过一些研究,这是我提出的代码。

=Format(Fields!createdon.Value, "MMMM") & " Week " & (Int(DateDiff("d",DateSerial(Year(Fields!createdon.Value),Month(Fields!createdon.Value),1), Fields!FullDateAlternateKey.Value)/7)+1).ToString

但我收到错误:

  

“数据集'数据集1'的字段表达式引用该字段   'FullDateAlternateKey'。报表项表达式只能引用   当前数据集合中的字段,或者如果在聚合内部,则为   指定的数据集范围。我使用的字段名称中的字母   正确的情况。

我知道这意味着“FullDateAlternateKey”不是有效的字段名称,但我不知道要替换哪个字段名称来纠正此表达式。有经验的人是否有任何关于如何纠正这个问题的想法?

理想情况下,我希望它格式化为显示“周末结束”的列。 因此,从2015年9月26日到2015年2月2日的任何日期都会说“2015年10月2日周”

1 个答案:

答案 0 :(得分:0)

试试这个:

="Month: " & Datepart("m", Fields!createdon.Value) & " Week: " &
Datepart(DateInterval.WeekOfYear,Fields!createdon.Value)

您将获得以下内容:Month: 10 Week: 43

编辑您的问题并添加所需结果的示例,以便为您提供特定格式的帮助。

<强>更新

试试这个:

="Today: " & Format(Fields!createdon.Value,"dd/M/yyyy") & "Week Of: " & Format(
DATEADD("d" ,7-DATEPART(DateInterval.WeekDay,Fields!createdon.Value,FirstDayOfWeek.Monday),Fields!createdon.Value),
"dd/M/yyyy")

它会显示:Today: 19/10/2015 Week Of: 25/10/2015