2014-07-22 175 views
1

我在pentaho報表設計器中創建報表,並需要一些幫助爲我創建的參數設置默認值。在pentaho報表設計器中設置參數的默認值

其中一個標記爲date的參數從表格的日期列中提取數據。雖然我可以查看下拉列表中的所有日期,但我無法找到將此下拉列表的默認值設置爲all(表示所有日期在一起)的方法。

有沒有一種方法可以將「全部」值設置爲默認值?

回答

0

假設您從PRD中的JDBC連接獲取過濾器的值,可以編寫一個像這樣的查詢。 (我用過Postgresql)。 這將加載'All'作爲下拉列表中的第一個值以及表中其他不同的日期值。 (做正確鑄件)

SELECT 1 AS sort,'All' AS date 
UNION 
SELECT DISTINCT 2 AS sort, 

    tablename.datecolumn::date AS date 
FROM 
    tablename 

ORDER BY sort 

然後在您的參數顯示給用戶選擇的日期,在Default Value字段中輸入All並選擇我們寫查詢。 接下來假設你使用KTR檢索數據到報表,您可以在一個「表輸入」步下面的查詢,

(tablename.datecolumn IN (SELECT CASE WHEN('${date}' = 'All' OR '${date}' IS NULL) THEN tablename.datecolumn ELSE '${date}' END)) 

希望這會有所幫助。如果您有任何其他問題,請在下面評論。因爲這對我來說非常合適。