2013年7月31日 星期三

[SQL Server 2008R2][SSRS] 預設值全選

SSRS 在使用互動式報表中可以在報表參數屬性中設定預設值,在報表首次載入時,即帶入預設值來顯示資料,預設的選項是「沒有預設值」。
「指定值」用來指定特定值,可以加入多個指定值,但必須搭配資料集中 WHERE 參數的句型,多個指定值時要使用 WHERE  欄位名 IN (@參數) 才不會出錯。不然會出現「處理本機報表期間發生錯誤。報表處理期間發生錯誤。資料集 'XXXX' 的查詢執行失敗。接近 '.' 之處的語法不正確。」



若 WHERE 的句型是 WHERE YEAR(TRX_DTE) IN (@YEAR) ,在@YEAR參數屬性中,資料類型是整數,允許多個值。
當設定為複選時,系統會自動產生一個全選的選項,但是這個全選的選項仍有一個小缺點,如果在設定預設值時,是不能預設全選的。為了解決這個預設全選的問題,可以使用一個資料集的方式,將所有的不重複的值取出,如取出各年份資料。在預設值的頁籤中選用從查詢取得值,並指到一個資料集及值欄位。如此預設值即為全選的選項。



2 則留言:

匿名 提到...

使用多選時,有另外一個方法,不用加入一個資料集也可以使用全選。在預設值的地方增加全部的值即可。

小鯨 提到...

感謝網友提供另一種好方法!!