情形一:一张模板定义了两个数据集ds1和ds2,分别是从oracle和sqlserver中取数,想通过参数控制报表数据是从ds1取的还是ds2取的;情形二:有一张模板,里面的样式都是一样的,但是数据都是取自最自身的数据库,自己的数据;情形三:数据集ds1、ds2来自不同的数据源,结构相同,需要将量表中的数据合并起来。以上情形都可以使用关联数据集来实现,下面我们就以情形一为例以图形报表FineReport为平台说明关联数据集的使用方法。
工具/原料
1
图形报表FineReport
2
大小:148.2M 适用平台:windows/linux
方法/步骤
1
定义数据集定义数据集ds1和ds2,分别来自数据库oracle及sqlserver。
2
使用关联数据集进行合并在数据集面板中新建>关联数据集:
3
此时将会列出该报表所有可用的报表数据集、服务器数据集和存储过程,勾选需要的数据集,如这里的ds1、ds2;并且添加条件,如ds1对应的条件是$db='oracle',即当参数db为oracle的时候就用ds1;同样可以给ds2添加条件$db='sqlserver',当参数db为sqlserver的时候就用ds2。
4
注:同一时间有多个数据集满足条件时,最终的结果就是所有满足条件的数据集合并后的结果,合并规则如下:如果几个字段名不完全相同的数据集进行合并时,从第一个数据集自上而下合并,相同的字段的内容匹配到同一个字段中,出现不同字段名的,新增字段名,合并前没有此字段的数据集,合并后字段值用空值代替,如下图:
下一篇:word文档中如何加入关系图?