多源报表

多数据源报表解析之简单多源报表

六眼飞鱼酱① 提交于 2019-12-16 19:54:11
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 多数据源报表即一张报表中可以定义多个数据集,分别取出需要的数据库表,所取的数据库表甚至可以来自于不同的数据库。本文通过几个例子说明多个数据集数据如何相互关联来实现多源报表。 1. 描述 多数据源,就是在同一张报表当中,显示的数据来自于多个不同的表或不同的库。 如下图一张简单的多数据源报表,左侧蓝色部分来自于销量表,右侧黄色部分来自销售总额表,即数据来自于两张不同的数据库表: 2. 示例 2.1 打开单个数据源报表 打开报表 %FR_HOME%\WebReport\WEB-INF\reportlets\doc\Primary\CrossReport\Cross.cpt 。 2.2 新增数据源 再新增一个数据集ds2 ,其 SQL 语句为 SELECT * FROM [ 销售总额] 。ds2 数据集与 ds1 数据集都有一个销售员字段。 2.3 绑定数据列 如下图,将ds2 中销售总额数据列拖拽到单元格中,并设置父格为销售员所在单元格,使销售总额跟随销售员而扩展: 2.4 设置过滤 此时设计器预览,效果如下: 可以看到,扩展出来的每一个销售员下,都重复显示销售总额字段的所有数据。 虽然销售总额的父格为销售员数据列,由于他们来自于不同的数据集,因此销售总额不会将父格销售员作为条件进行筛选,即不存在附属关系。