參數(shù)的強(qiáng)化通常是指定義數(shù)據(jù)集SQL語(yǔ)句如SELECT * FROM [TableName] WHERE [ColName] = ${para},其中${}中的內(nèi)容為變量,報(bào)表軟件會(huì)將${}中的內(nèi)容計(jì)算后形成字符串拼接至SQL中形成最終的可執(zhí)行查詢語(yǔ)句,發(fā)送到數(shù)據(jù)庫(kù)端進(jìn)行執(zhí)行。${}中可以使用報(bào)表中的函數(shù)對(duì)參數(shù)進(jìn)行處理,此即為參數(shù)的強(qiáng)化。
用戶在使用Java報(bào)表軟件進(jìn)行部署時(shí),常會(huì)需要用到參數(shù)強(qiáng)化,下面以FineReport報(bào)表軟件為例,簡(jiǎn)單介紹下參數(shù)與日期參數(shù)的格式化處理。
日期的表示形式有很多種,有時(shí)我們習(xí)慣填寫(xiě)的形式與數(shù)據(jù)庫(kù)存儲(chǔ)的形式可能不同,此時(shí),就需要進(jìn)行日期的格式化處理。比如,將“2010-02-24”形式的日期轉(zhuǎn)化為“20100224”的形式。
1. 新建報(bào)表
2. 定義數(shù)據(jù)集
定義數(shù)據(jù)庫(kù)查詢,SQL語(yǔ)句為:SELECT * FROM SALES_BASIC WHERE 日期 = '${format(date,"yyyyMMdd")}'
參數(shù)date為日期如2010-02-24,對(duì)該日期按照yyyyMMdd進(jìn)行格式化后作為最終的值賦給日期。

3. 模板設(shè)計(jì)
如下設(shè)計(jì)報(bào)表

4. 定義參數(shù)界面
點(diǎn)擊參數(shù)設(shè)計(jì),使用默認(rèn)的參數(shù)界面,定義日期控件,返回值設(shè)置為日期,如下圖

5. 保存模板
保存模板,點(diǎn)擊設(shè)計(jì)器分頁(yè)預(yù)覽,選擇日期,查詢數(shù)據(jù)如下

文章轉(zhuǎn)自:http://finereport.blog.chinabyte.com/2010/10/12/120/