2015-10-19 65 views
1

我正在使用Microsoft商業智能開發工作室2012試圖創建一個計算字段,該字段將給我一個名爲'createdon'的字段的Month和Week編號。如何格式化日期以包含週數?

我是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 

但我得到的錯誤:

"The Field expression for the dataset 'Dataset1' refers to the field 'FullDateAlternateKey'. Report item expressions can only refer to fields within the current datasetscop or, if inside an aggregate, the specified dataset scope. Letters in the names of fields my use the correct case.

我知道這意味着「FullDateAlternateKey」不是一個有效的字段名,但我不知道該替代哪些字段名稱,而不是糾正這種表達。有更多經驗的人有什麼想法可以解決這個問題嗎?

理想情況下,我希望它的格式設置爲顯示「以星期爲結尾」的列。 於是從2015年9月26日至2015年10月2日的任何日期會說:「周的2015年10月2日」

+0

爲什麼不使用日期部分( 「W」,Createdon.value)返回星期? – MiguelH

回答

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

+0

好吧!已更新以提供更多細節。 –

+0

@ Shawn.parker檢查我的更新。 –

+0

乾杯隊友!這工作完美 –