`

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

阅读更多

多数据源报表即一张报表中可以定义多个数据集,分别取出需要的数据库表,所取的数据库表甚至可以来自于不同的数据库。本文通过几个例子说明多个数据集数据如何相互关联来实现多源报表。

 

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 设置过滤

 

此时设计器预览,效果如下:

 

可以看到,扩展出来的每一个销售员下,都重复显示销售总额字段的所有数据。

 

虽然销售总额的父格为销售员数据列,由于他们来自于不同的数据集,因此销售总额不会将父格销售员作为条件进行筛选,即不存在附属关系。

 

我们需要销售总额与销售员一一对应,就需要设置过滤条件,将这两个数据集的数据通过销售员关联起来。

 

选中销售总额所在单元格,设置过滤,添加过滤条件:销售员 等于 'C4',取出与C4单元格中销售员匹配的数据,如下图:

 

2.5 保存并预览

 

保存模板,预览报表,即可看到如上的效果。

 

3. 多数据源报表优势

 

多数据源报表传统的做法,是通过拼SQL将多源整合为单源。如上例中将销量表与销售总额表整合起来:SELECT * FROM 销量,销售总额 WHERE 销量.销售员 = 销售总额.销售员 。若数据库表比较复杂,且使用的表个数不止2张而是更多时,可以想象,最终的SQL查询语句将会非常复杂。

 

FineReport天然支持多数据源的报表,一张报表中可以添加任意多个数据集,每个数据集使用最简单的SQL语句查询出需要的表数据,在报表中只需要使用过滤就可以将来自不同表的数据相互关联起来。使得多数据源报表制作更加简单。

 

 

 

分享到:
评论

相关推荐

    JasperReport中使用多个数据源的方法

    - **概念**:多数据源是指在一个报表设计中同时使用多个数据源进行数据填充的技术。这些数据源可以是不同的数据库连接、XML文件、JavaBean对象等。 - **应用场景**:例如,一个报表中需要同时展示来自不同数据库的...

    用友NC报表IUFO操作手册

    2. 数据源配置:用户可以根据实际业务需求,将NC系统的数据库或其他外部数据源连接到报表,实现跨系统数据整合。 3. 计算公式与规则:IUFO提供了丰富的计算公式,如SUM、AVG、IF等,可以进行复杂的财务计算,并支持...

    润乾报表与帆软报表产品对照.pdf

    从多个方面进行了对比,包括报表设计、对 EXCEL 的支持、设计器功能、统计图、远程设计、功能性、中国式复杂报表、多源分片、动态格间运算、行列对称、不规则分组、数据源、主子表、行类型、折叠报表、统计图、...

    15款报表工具的总结

    - **JMagallanes**:结合了静态报表、Swing pivot表格与图表功能的Java/J2EE OLAP与动态报表应用,兼容多种数据源,输出格式多样。 - **ART – A lightweight reporting solution**:轻量级、多平台、基于Web的报表...

    FineReport报表软件技术白皮书

    - 支持从多个数据源获取数据,并在同一个报表中显示。 - 可以实现数据的灵活组合和展示。 4. **自定义规则分组** - 用户可以定义自己的分组逻辑,满足复杂的数据分析需求。 - 支持动态分组,根据数据变化自动...

    InforRepor报表工具白皮书

    1. **数据来源支持能力**:InforReport支持多种数据源,如数据库、文本文件等。 2. **报表格式设计能力**:支持自定义的复杂表格布局,包括表格合并、拆分等高级功能。 3. **报表数据计算能力**:支持复杂的公式...

    报表软件--Style Report报表数据填报

    - **数据源关联**:支持多种数据源的连接,包括但不限于数据库、文件系统等,实现异构数据源之间的表关联,从而实现多源填报的需求。 #### 四、数据处理灵活性 - **JavaScript数据结构调整**:用户可以通过...

    wincc报表实现

    数据存储机制是报表功能的基础,为后续的数据分析和输出提供原始数据源。 #### 数据分析和输出 WinCC提供了强大的数据分析工具,如历史数据查询、数据筛选、数学运算等,允许用户根据需求对数据进行深度挖掘。报表...

    水晶报表2008新增功能

    - **数据源支持**:支持多种类型的数据源接入,包括数据库、XML文件、Web服务等,简化了数据获取过程。 #### 四、结语 水晶报表2008通过一系列新增功能的加入,不仅提升了报表的设计和制作水平,同时也改善了用户...

    CrystalReports10_5.rar

    水晶报表支持多种数据源,如数据库、XML文件、Web服务等,通过ODBC或OLE DB接口与数据源建立连接。用户可以设计复杂的数据查询,甚至利用嵌套子报表来展示多层次的数据关系。 其次,报表设计界面提供了直观的拖放...

    《火山引擎智能数据洞察平台v2.0 》PPT

    - **数据源接入**:支持包括HDFS/Hive/Impala在内的多种数据存储形式,以及Kafka等流式数据处理技术。 - **数据建模系统**:提供可视化建模工具,支持自定义指标和复杂的数据处理逻辑。 - **查询分析服务**:采用...

    2020卢山巍:数据中台:宜信敏捷数据中台建设实践.pdf

    Wormhole则是一个实时数据管道工具,用于数据源到目标系统的快速传输;Moonbox是一款轻量级的分布式SQL引擎,支持复杂的数据查询和分析;而Davinci则是一个数据可视化平台,为企业提供了丰富的数据报表和仪表板设计...

    用SQL Server 2005 Analysis Services解决商务难题

    在传统系统中,这可能涉及多个数据源和复杂的查询。SSAS 提供了“分离的语义视图”,它创建了一个抽象层,将复杂的数据库结构转化为易于理解的模型。用户可以通过直观的界面与数据交互,无需深入了解底层数据库结构...

    广告数仓.txt

    2. **数据源集成**:对接各类数据源,实现自动化数据采集。 3. **数据预处理**:清洗、转换数据,确保数据质量。 4. **数据建模**:根据业务需求设计数据模型,选择合适的存储技术。 5. **数据可视化**:构建交互式...

    大数据整体架构.pptx

    数据源可以是航班信息、机场状态、航空器数据、航空情报、监控视频、地空通话、空域和气象等。实时事件处理(如Event Processing引擎)和快数据处理用于即时响应和决策,如实时决策引擎。 2. **数据管理**:数据...

Global site tag (gtag.js) - Google Analytics