有時我們並不需要對所有的數據進行顯示。只需要顯示查詢其它部分數據,就可使用FineReport提供的參數查詢。它能對數據進行過濾,將我們需要的數據根據查詢條件動態的顯示出來。實現這種效果有要有兩種方式:
在FineReport中,有兩種參數定義的方式:
[b]► 在SQL語句中直接寫入過濾條件,如:select * from i_ht_contract where ContractName='${contractName}'[/b]
//'${contractName}'定義一個變量,它要和一些控件進行綁定。讓用戶去選擇,點擊查詢後在將實際的值傳過來。構成一個完整的sql語句。ContractName數據庫中的屬性字段。
[b]► 在菜單欄報表|報表參數當中定義參數[/b]
報表參數處定義,需要在單元格里進行調用,只對當前格子以及當前格子的子格的數據起到過濾的作用。
在報表|報表參數當中新增一個參數,單元格綁定數據列之後,在過濾頁面,調用已定義的參數,對格子中的數據進行過濾。根據FineReport的數據模型,設置了過濾的當前格子以及當前格子的子格,會根據輸入的參數值進行過濾。
無論以上哪種模式,如果需要將參數值顯示在某個單元格中,可以通過“=$參數名”這樣的公式來得到,其中$參數名可作爲公式的元素進行任意的公式計算。
[color=red][b]小結:[/b][/color]
兩種參數的都要和控件進行綁定,控件的名字就是參數的名字。只不過在sql語句中設置的參數,它是對整個數據源進行篩選。而報表參數只是針對某個單元格或者某行數據進行過濾。它不會對數據源產生影響。只是對顯示的結果數據進行過濾。
都需要設計參數界面
報表添加了參數之後,需要有一個可視化的界面,能夠讓用戶輸入參數值。FineReport內置了一個默認的參數界面,用戶可在內置的界面中,調整參數的位置,並通過控件設置得到例如下拉框,複選框,日曆等不同的數據選擇方式。
參數設計是和模板設計類似的格子界面,左側列出了報表當中已定義的參數,可通過拖拽的方式顯示到參數界面中,再將默認的控件設置“文本”進行更改。
如果不需要使用FineReport的內置參數界面,則需要通過自定義頁面傳遞參數的方式完成外部數據與報表的交互。
FineReport使用(一)參數查詢
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
整合Struts2+JasperReport Web報表應用示例
整合Struts2+JasperReport Web報表應用示例 JasperReports作爲一種優秀且開源的報表引擎,不利用太可惜了。
tpf01
2020-06-16 03:41:33
使用JasperReport與iBATIS開發Web報表
tpf01
2020-02-24 06:49:41
使用ireport生成jasperreport報表模板
yingkongshi99
2020-02-23 08:18:30
使用JasperReport報表工具,做出Java項目報表打印功能(三)
exodus3
2019-09-04 21:20:21
使用JasperReport報表工具,做出Java項目報表打印功能(二)
exodus3
2019-09-04 21:20:21
使用JasperReport報表工具,做出Java項目報表打印功能(一)
exodus3
2019-09-04 21:20:21
JasperReport報表
luweifeng1983
2018-11-07 06:18:23
ireport4.0.1+jasperreport4.0.1使用小結
luweifeng1983
2018-11-07 06:18:23
java 圖形報表-2(折線圖)
iteye_18014
2018-09-05 18:43:57
java圖形報表-3(柱狀圖)
iteye_18014
2018-09-05 18:43:57
JAVA報表之JasperReport+iReport5.6 報表分組和統計(三)
x一又二分之一x
2018-09-03 23:42:15
JAVA報表之JasperReport+iReport5.6 Subreport子報表的實現(四)
x一又二分之一x
2018-09-03 23:42:15
JAVA報表之JasperReport+iReport5.6 stacked堆積圖及stacked堆積圖3D的實現(七)
x一又二分之一x
2018-09-03 23:42:15
JAVA報表之JasperReport+iReport5.6 餅圖和3D餅圖的實現(五)
x一又二分之一x
2018-09-03 23:42:15