反馈已提交

网络繁忙

单表式主子报表

  • 文档创建者:文档助手1
  • 编辑次数:24次
  • 最近更新:Alicehyy 于 2021-04-24
  • 1. 概述

    1.1 视频学习

    在线视频学习请查看:主子报表 。

    注:若文档与视频内容有出入,请以文档为准。

    1.2 应用场景

    单表式主子报表一般数据集会有两个以上,分别是主表的数据集和子表的数据集,在展现上,一般要求主表以自由格式展现,子表以列表格式展现,为一对多的关系,子报表可能同时存在多个。

    单表式主子报表操作比较方便,而且可以进行数据填报,详情可参见:主从表填报

    2. 示例

    下面制作一个单表式主子报表作为示例:

    该报表的数据分为两个区域展示,分别为「订单统计表」和「订单明细表」。这两个表格都是展示订单相关的数据,即它们都针对同一个对象「订单」,但他们展示的详细订单数据完全不同。我们称「订单统计表」为主表,称「订单明细表」为子表,而这两个表格构成的报表整体称为「单表式主子报表」(命名为「订单数据主子表」)。

    Snag_f104708.png

    2.1 数据准备

    新建普通报表,新建两个数据库查询,SQL 查询语句分别为: 

    ds1:SELECT * FROM 订单

    ds2:SELECT * FROM 订单明细

    2.2 报表设计

    2.2.1 订单统计表

    1)按照下面表格中的说明设计「订单统计表」样式:

    单元格操作
    A1~D2合并A1~D2单元格,写入标题「订单统计表」,字号12,字体居中,加粗,左父格为 B3
    A3,A4,C4,A5,C5,A6,A7,C7依次写入字段标题名:订单编号,订单日期,发货日期,客户编号,客户名称,地址,到货日期,应付金额。字体靠左,左父格为 B3
    B3~D3,B4,D4,B5,D5,B6~D6,B7,D7合并 B3~D3 单元格,合并 B6~D6 ,给这些空白单元格只添加黑色的外部底框,字体靠左,左父格为 B3

    注:因为所有数据均依靠 B3 单元格的「订单 ID」查询出来的,所以左父格均为 B3。

    给单元格添加黑色的外部底框的方法如下图所示:

    Snag_19abaf61.png

    设计好的「订单统计表」样式如下图所示:

    1567936896839579.png

    2)将数据集 ds1 中的相关数据列按照标题字段依次拖入到 B3,B4,D4,B5,D5,B6,B7,D7 单元格中。

    1567940875454965.png

    3)选中 B4,D4,B7 单元格,右边属性面板选择「单元格属性>样式>文本」,设置格式为「日期型 > yyyy-MM-dd」。

    1567941232925382.png

    4)选中 D7 单元格,右边属性面板选择「单元格属性>样式>文本」,设置单元格格式为「数字 > #0.00」,保留数值小数点后两位。

    1567941453788537.png

    2.2.2 订单明细表

    1)按照下面表格中的说明设计「订单明细表」样式:

    单元格操作
    A9~E10合并 A9~E10 单元格,写入标题「订单明细表」,字号12,字体居中,加粗
    A11~E11依次写入字段标题名:产品,单价,数量,折扣,销售额。字体居中
    A12~D12依次将数据集 ds2 中的数据列:「产品 ID,单价,数量,折扣」 拖入到对应单元格中。字体居中,设置 A12 单元格的左父格为 B3
    E12插入公式B12*C12*(1-D12),计算出销售额

    2)设计好的「订单明细表」样式如下图所示:

    1567946862830429.png

    2.3 设置过滤

    通过给 A12 单元格添加数据过滤条件,建立起数据集 ds1 和 ds2 之间的联系。

    双击 A12 单元格,弹出数据列对话框,选择「过滤」。给单元格添加一个普通条件,将 ds2 的「订单 ID」字段与 ds1 的「订单 ID」字段进行绑定,实现两个数据集之间的关联。

    条件可以设置为 ds2 的「订单 ID」列等于「单元格 B3」 或者等于「数据列 ds1 订单ID」。

    Snag_1a3045f2.png

    2.4 设置分页

    为了让扩展出来的每个「订单 ID」对应的「订单统计表」和「订单明细表」分页展示,需要设置分页。

    因为一个「订单 ID」可能对应几个「产品 ID」,即订单明细表扩展的数据可能不止一行,所以此时无法设置「行后分页」,需要在下一页前设置「行前分页」。选中 A1 单元格,右边属性面板选择「单元格属性>其他>分页」,勾选「行前分页」。

    1612254130515731.png

    2.5 效果预览

    2.5.1 PC 端

    保存报表,点击「分页预览」,效果如下图所示:

    1612254322774750.png

    2.5.2 移动端

    移动端查看报表的方式请参见 报表移动端预览

    App 端和 HTML5 端均支持,效果如下图所示:

    Screenshot_20190908_213743_com.finereact.v10.jpg

    3. 模板下载

    已完成模板可参见:%FR_HOME%\webroot\WEB-INF\reportlets\doc\Advanced\MasterReport\订单数据主子表.cpt

    点击下载模板:订单数据主子表.cpt

    附件列表


    主题: 报表应用
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    在线QQ:800049425

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526

    文 档反 馈

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭