2016-06-10 79 views
0

我目前有一組下拉參數可將日期傳遞給查詢。有一個顯示值可供每個工作周選擇。SSRS可選下拉式參數傳遞日期

創建日期參數2016 01(2016年1月3日),P01-16 Q1-16

值傳遞給SQL是WEEK_BEGIN_DATE:

在下拉顯示: 2016年1月3日

新船日期參數:

顯示在下拉:2016 01(2016年12月27日)P12-15 Q4-15

值被傳遞到SQL是SHIP_WEEK_BEGIN_DATE:2016年12月27日

我希望能夠使這兩個可選。

我試着在參數值SQL中得到下面的參數來允許空值,但是我得到了一個數據類型錯誤。我確實開始沿着varchar()路線向下投下陣容,但是它很快變得混亂。

SELECT 'NULL' AS WEEK_BEGIN_DATE 
UNION 
SELECT d.WEEK_BEGIN_DATE FROM DATE d 

任何建議,非常感謝。讓我知道如果我可以提供任何其他有用的信息。

回答

0

這應該工作,你不需要單引號

SELECT NULL AS WEEK_BEGIN_DATE 
UNION 
SELECT d.WEEK_BEGIN_DATE FROM DATE d 

使參數可選您在where子句中寫類似

where (WEEK_BEGIN_DATE = @date or @date is null) 
+0

卸下單引號是我的問題的答案。這種簡單的修復,我只是忽略了。謝謝! – ISW

0

可以,如果您的日期參數是一個VARCHAR()你需要做Kostya所說的。但由於它不是,你可以點擊「允許空值」下的報表參數屬性(右擊你的參數,並選擇屬性)

enter image description here

+0

感謝您的建議。雖然,除非您從參數源值傳遞空值,否則「允許空值」選項不起作用。 – ISW

+0

暗示 – scsimon