多值查詢即是參數的返回值是多個的,即按照多個值查詢出數據??丶念愋陀袛祿瘏岛蛨蟊韰担旅娣謩e介紹下在FineReport中,這兩個參數的多值查詢的方法。
報表參數多值查詢
報表參數的多值查詢關鍵的就是設置過濾條件,下面我們就以下拉復選框為例來介紹下多值查詢的過濾條件的設置。
報表參數多值查詢具體示例
1、打開模板
打開模板:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Parameter\ParaConnection.cpt
2、修改參數控件類型
點擊參數界面,將參數city的控件類型設置為下拉復選框,并設置返回值類型為數組。下拉復選框的返回值類型無論是字符串還是數組其過濾條件都是相同的,因此這邊我們可以隨便設置成數組還是字符串。
3 過濾條件設置
點擊A2單元格,選擇單元格上方的過濾按鈕,彈出過濾對話框,選中貨主城市的過濾條件,將其操作符修改為包含于,然后點擊修改,最終的過濾設置界面如下圖:

4 保存模板
點擊分頁預覽,將貨主城市選擇多個值后,點擊查詢,就會查詢出多個城市的數據,效果如下圖:

數據集參數多值查詢
數據集參數的多值查詢,關鍵是定義sql語句,下面我們來介紹下設置方法。
數據集參數多值查詢示例
1 打開模板
打開模板:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Parameter\MultiValue\MultiValue.cpt。
2 刪除報表參數及過濾條件
將報表參數刪除掉,并把A2單元格中的過濾條件刪除掉。
3 修改數據集
由于下拉復選框的返回值類型為數組型,要定義復雜的公式,因此我們推薦使用返回值類型為字符串型的,下面我們就介紹返回值為字符串型的數據集的定義及下拉框的設置方法。
要將下拉復選框參數的返回值拼湊成(‘值1′,’值2′,’值3′,…)這樣的數據,因此我們將數據集定義為:SELECT * FROM 訂單 where 貨主地區= ‘${area}’ and 貨主省份 = ‘${province}’ and 貨主城市 in (‘${city}’)
4 下拉復選框設置
選擇參數的返回值類型為字符串,由于要將參數拼湊成(‘值1′,’值2′,’值3′,…)這樣的結果,因此要將分隔符定義為’,’,如下圖所示:

5 保存模板
點擊分頁預覽,選擇多個城市后,效果如下圖:

具體的設置可參考模板:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Parameter\MultiValue\MultiValue1.cpt。
原文轉載自:FineReport官網:http://www.finereport.com/knowledge/design/mulfound.html
了解Java報表工具就從這里開始
posted on 2014-12-11 15:26
season 閱讀(218)
評論(0) 編輯 收藏