BIRT 中对 CSV 数据集传递参数

来源:
https://forums.opentext.com/forums/discussion/50068/set-report-parameters-with-csv-files-as-datasource#latest

在 birt 中做 SQL 查询可以为数据集指定数据集参数,数据集参数使用时还可以链接到某个报表参数,简单易操作。当然,如果想对 csv 类型的数据文件做查询也很方便,只是 CSV 类型的数据集不支持指定数据集参数,想要实现筛选就只能使用数据集过滤功能,使用时也有一定的局限性。所以,这里推荐给大家一个好用的东西——集算器,易操作易学习,既能做过滤又能传参数,好处多多。

下面我们就以 Birt 报表工具为例,介绍一下实现过程:

本例中,雇员销售信息存储在 sale.csv 中,需根据输入参数,来查询日期大于 2015-03-02 的雇员信息。

sale.csv 数据如下:

userName,date,saleValue,saleCount

Rachel,2015-3-1,4500,9

Rachel,2015-3-3,8700,4

Tom,2015-3-2,3000,8

Tom,2015-3-3,5000,7

Tom,2015-3-4,6000,12

John,2015-3-2,4000,3

John,2015-3-2,4300,9

John,2015-3-4,4800,4

这里我们以访问本地的 csv 文件为例,来介绍如何在 birt 中对 csv 数据集使用参数。

关于 birt 对集算器的集成就不做介绍了,请参考《BIRT 调用 SPL 脚本》。

第一步:添加集算器 JDBC 数据源。

1png

第二步:添加数据集,直接写 SQL 查询 CSV 文件。

查询语句:

2png

报表参数:

3png

设置数据集参数,并将参数与报表参数做关联:

4png

第三步:创建报表

报表设计如下:

1png

第四步:WEB 预览,输入参数,预览结果:

(1)输入参数:时间 2015-03-02

2png

3png