來源:
https://forums.opentext.com/forums/discussion/50068/set-report-parameters-with-csv-files-as-datasource#latest
在 birt 中做 SQL 查詢可以爲數據集指定數據集參數,數據集參數使用時還可以鏈接到某個報表參數,簡單易操作。當然,如果想對 csv 類型的數據文件做查詢也很方便,只是 CSV 類型的數據集不支持指定數據集參數,想要實現篩選就只能使用數據集過濾功能,使用時也有一定的侷限性。所以,這裏推薦給大家一個好用的東西——集算器,易操作易學習,既能做過濾又能傳參數,好處多多。
下面我們就以 Birt 報表工具爲例,介紹一下實現過程:
本例中,僱員銷售信息存儲在 sale.csv 中,需根據輸入參數,來查詢日期大於 2015-03-02 的僱員信息。
sale.csv 數據如下:
userName,date,saleValue,saleCount Rachel,2015-3-1,4500,9 Rachel,2015-3-3,8700,4 Tom,2015-3-2,3000,8 Tom,2015-3-3,5000,7 Tom,2015-3-4,6000,12 John,2015-3-2,4000,3 John,2015-3-2,4300,9 John,2015-3-4,4800,4userName,date,saleValue,saleCount Rachel,2015-3-1,4500,9Rachel,2015-3-3,8700,4Tom,2015-3-2,3000,8Tom,2015-3-3,5000,7Tom,2015-3-4,6000,12John,2015-3-2,4000,3John,2015-3-2,4300,9John,2015-3-4,4800,4
這裏我們以訪問本地的 csv 文件爲例,來介紹如何在 birt 中對 csv 數據集使用參數。
關於 birt 對集算器的集成就不做介紹了,請參考《BIRT 調用 SPL 腳本》。
第一步:添加集算器 JDBC 數據源。
第二步:添加數據集,直接寫 SQL 查詢 CSV 文件。
查詢語句:
報表參數:
設置數據集參數,並將參數與報表參數做關聯:
第三步:創建報表
報表設計如下:
第四步:WEB 預覽,輸入參數,預覽結果:
(1)輸入參數:時間 2015-03-02