分享

报表工具FineReport参数的强化全攻略

 桑子Y 2010-11-16

       定义数据集SQL语句如SELECT * FROM [TableName] WHERE [ColName] = ${para},其中${}中的内容为变量,FineReport会将${}中的内容计算后形成字符串拼接至SQL中形成最终的可执行查询语句,发送到数据库端进行执行。

      ${}中可以使用报表中的函数对参数进行处理,此即为参数的强化。

参数与字符串拼接

${}即为一个公式变量,在数据集sql查询中,输入的参数可能只是一部分,需要与其他固定的信息共同构成最终的参数值,这时,可以在查询语句中进行参数与字符串拼接来达到目的。

1. 新建报表

2. 定义数据集

    定义数据库查询ds1SQL语句为:SELECT * FROM STSCORE WHERE ClassNo = '${"Class"+classno}'

    表示将输入的classno参数与字符串"Class"拼接后组成最终的参数值赋给ClassNo


3.
模板设计

    设计报表如下


数据列设置如下表

单元格

数据集

数据列

属性

A4

ds1

ClassNo

默认

B4

ds1

Sex

默认

C4

ds1

Name

默认

D3

ds1

Course

从左向右扩展,其余默认

D4

ds1

Grade

汇总求和,其余默认

 

4. 设计器预览

    设计器预览,输入参数值1,便可查询出Class1的数据,效果如下

   

 

日期参数的格式化处理

日期的表示形式有很多种,有时我们习惯填写的形式与数据库存储的形式可能不同,此时,就需要进行日期的格式化处理。比如,将“2010-02-24”形式的日期转化为“20100224”的形式。

1. 新建报表

2. 定义数据集

    定义数据库查询,SQL语句为:SELECT * FROM SALES_BASIC WHERE 日期 = '${format(date,"yyyyMMdd")}'

    参数date为日期如2010-02-24,对该日期按照yyyyMMdd进行格式化后作为最终的值赋给日期。


3.
模板设计

    如下设计报表


4.
定义参数界面

    点击参数设计,使用默认的参数界面,定义日期控件,返回值设置为日期,如下图


5
. 保存模板

    保存模板,点击设计器分页预览,选择日期,查询数据如下

   

   

 

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多