多源分片报表

  • 文档创建者:文档助手1
  • 编辑次数:19次
  • 最近更新:Carly 于 2019-10-22
  • 1. 概述

    1.1 预期效果

    • 多源:指一张报表的数据来源来自多个数据表,甚至是多个物理数据库。这里的多个常常不是两个三个,而是七八个乃至十几个,无法转成单源。

    • 分片:指一张报表的纵向或横向或双向同时被分成了多个区域,往往每个区域来自不同的数据源。

    如下图所示,这样的报表即多源分片报表:

    1571735444386761.png

    1.2 实现思路

    多源分片报表通常有比较复杂的横表头与纵表头,在设计多源分片报表时,可以先将表头设计好,最后设计中间部分的数据。

    此时只需要设置好对应的关联过滤即可,最后进行模板数据字典等显示设置。

    另外一种快速制作多源分片报表的方法是每片单独设计,如上图报表,可以先设计分片 1,确认无误后再设计分片 2,如此类推,同样最后进行模板数据字典等显示设置。

    2. 示例

    2.1 报表制作

    2.1.1 准备数据

    连接数据库 FRDemo,新建四个数据集,数据集名分别为雇员、产品、订单信息和订单。对应的 SQL 语句如下:

    • 雇员的 SQL 语句:SELECT 雇员ID,职务 FROM 雇员

    • 产品的 SQL 语句:SELECT 产品ID,类别ID FROM 产品 where 类别ID =1 or 类别ID =2

    • 订单信息的 SQL 语句:SELECT 订单.订单ID,雇员ID,产品ID,数量,(数量*单价) AS 总额 FROM 订单,订单明细 WHERE 订单.订单ID=订单明细.订单ID

    • 订单的 SQL 语句: select * from 订单

    2.1.2 报表样式

    报表样式如下图所示:

    1571735597176018.png

    1)分片 1 制作

    分片 1 按国家与雇员进行分组统计,中间数据受左表头与上表头双重控制,如下表所示:

    单元格数据集数据列属性
    B4订单货主国家默认
    C4订单雇员ID默认
    E2产品类别ID从左到右扩展,其余默认
    E3产品产品ID从左到右扩展,其余默认
    E4订单信息总额汇总求和,添加过滤条件 雇员ID(列序号:2) 等于 'C4' and 产品ID(列序号:3) 等于 'E3'
    E5订单信息数量汇总求和,添加过滤条件 雇员ID(列序号:2) 等于 'C4' and 产品ID(列序号:3) 等于 'E3'

    2)分片 2 制作

    分片 2 直接统计总额与数量,中间数据只受上表头控制,如下表所示:

    单元格数据集数据列属性
    E6  订单信息  总额  汇总求和,添加过滤条件 产品 ID (列序号:3)等于'E3'  
    E7  订单信息  数量  汇总求和,添加过滤条件 产品 ID (列序号:3)等于'E3'  

    3)分片 3 制作

    分片 3 按照雇员职务与雇员进行分组统计,中间数据受左表头与上表头双重控制,如下表所示:

    单元格数据集数据列属性
    B8  雇员  职务  默认  
    C8  雇员  雇员ID  默认  
    E8  订单信息  总额  汇总求和,添加过滤条件 雇员ID(列序号:2)等于'C8' and 产品ID(列序号:3)等于'E3'  
    E9  订单信息  数量  汇总求和,添加过滤条件 雇员ID(列序号:2)等于'C8' and 产品ID(列序号:3)等于'E3'  

    2.2 形态设置

    根据需要,设置数据的显示样式、形态、颜色等。

    对 C4,C8,E2 和 E3 单元格作形态数据字典设置,都采用数据库表的方式,具体设置如下表所示:

    单元格数据库数据表列名(实际值)列名(显示值)
    C4 FEDemo  雇员  雇员ID  姓名  
    C8FRDemo  雇员  雇员ID  姓名  
    E2  FRDemo  产品类别 类型ID  类别名称  
    E3  FRDemo  产品  产品ID  产品名称  

    示例:C4 单元格形态设置如下图所示:

    1571736138967245.png

    其他单元格类似,不再说明。

    2.3 效果预览

    2.3.1 PC 端

    保存模板,选择分页预览,实现效果如描述中所示。

    2.3.2 移动端

    1)App
    1571736571763793.png

    2)HTML5

    1571736587229142.png

    3. 已完成模板

    已完成的模板,可参见%FR_HOME%\webroot\WEB-INF\reportlets\doc\Advanced\Multidatasource\多源分片报表.cpt

    点击下载模板:多源分片报表.cpt

    附件列表


    主题: 报表设计
    • 有帮助
    • 没帮助
    • 只是浏览