参数的强化通常是指定义数据集SQL语句如SELECT * FROM [TableName] WHERE [ColName] = ${para},其中${}中的内容为变量,报表工具会将${}中的内容计算后形成字符串拼接至SQL中形成最终的可执行查询语句,发送到数据库端进行执行。${}中可以使用报表中的函数对参数进行处理,此即为参数的强化。
用户在使用Java报表工具进行部署时,常会需要用到参数强化,下面以FineReport报表工具为例,简单介绍下参数与日期参数的格式化处理。
日期的表示形式有很多种,有时我们习惯填写的形式与数据库存储的形式可能不同,此时,报表下载,就需要进行日期的格式化处理。比如,Java报表软件,将“2010-02-24”形式的日期转化为“20100224”的形式。
1. 新建报表
2. 定义数据集
定义数据库查询,SQL语句为:SELECT * FROM SALES_BASIC WHERE 日期 = '${format(date,报表公司,"yyyyMMdd")}'
参数date为日期如2010-02-24,对该日期按照yyyyMMdd进行格式化后作为最终的值赋给日期。
3. 模板设计
如下设计报表
4. 定义参数界面
点击参数设计,使用默认的参数界面,定义日期控件,返回值设置为日期,如下图
5. 保存模板
保存模板,点击设计器分页预览,选择日期,查询数据如下