簡體   English   中英

如何格式化Reporting Services中的“可用值”標簽字段

[英]How to format the Available Value label field in Reporting Services

我已經看過幾個類似的問答,但沒有一個與我所追求的完全匹配(除非我誤解了!)。

我已經寫了一個查詢,該查詢的參數要求星期幾,但是下拉菜單中顯示了星期開始日期,以使其更加用戶友好。 我使用“報告參數屬性”對話框中“可用值”下的“標簽”字段來完成此操作。

[因此,主查詢報告基於具有此代碼行WHERE (REG_Session_No IN (@WeekNo)) 報表數據窗格/參數顯示@WeekNo,它是文本,而可用值取自名為qWeekDateSelection .....的查詢。

SELECT DISTINCT MIN(REG_Session_Date) AS WeekStartDate, REG_Session_No
FROM            REGStud
INNER JOIN      REGSessn ON REGStud.REGStud_key = REGSessn.REGSessn_key
GROUP BY REGSessn.REG_Session_No, REGStud.Year
HAVING   (MIN(REGSessn.REG_Session_Date) < GETDATE() - 1) 
   AND   (REGStud.Year = CASE WHEN Month(GetDate()) < 8 THEN Year(GetDate()) - 1 ELSE Year(GetDate()) END)
ORDER BY WeekStartDate DESC

...值字段為REG_Session_No,標簽字段為WeekStartDate。]

現在,下拉列表顯示為dd / mm / yyyy hh:mm:ss(例如06/01/2014 00:00:00)。

**我想擺脫hh:mm:ss部分**

一種方法是在基礎查詢中進行SELECT DISTINCT CAST(MIN(REGSessn.REG_Session_Date) AS varchar(12)) AS WeekStartDate ,即SELECT DISTINCT CAST(MIN(REGSessn.REG_Session_Date) AS varchar(12)) AS WeekStartDate

然后,下拉列表將顯示MMM dd yyyy(例如2013年9月30日)。

我的問題是,這可以在Reporting Services本身而不是在查詢中格式化嗎?

這樣一來,也許我就能進行更優雅的格式化。 我是SSRS的新手,並且了解“參數!” 但不知道如何或在哪里實施。

我當前的機器上沒有SSRS副本,因此我要在這里關閉內存。 如果將其設為文本框而不是下拉框,則可以將其設為日期時間字段(在屬性下方?)

在該字段的默認值中,您可以輸入公式來選擇當前星期的第一天。

我將嘗試為您找到一個代碼示例。

在這里,這應該是您想要的。

=DATEADD("d", 1 - DATEPART(DateInterval.WeekDay, Today(),FirstDayOfWeek.Monday), Today())

樣本是從這里獲取的。

http://www.sqlservercentral.com/Forums/Topic953520-150-1.aspx#bm953561

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM