主子报表

1.概述

1.1 支持版本
报表设计器版本
since 5.7
1.2 应用场景

主子报表,报表展现分为主报表和子报表。主报表为一行数据,通过自由格式展现报表。 子报表一般为多行数据,通过列表的方式展现。对应到数据库表为主表和从表,是一对多的关系,主表一行数据,对应子表多行数据, 通过外键进行关联。比如:订单表和订单详情表,一个订单对应多条订单详情,通过订单号进行关联。

2.示例

2.1 示例说明

本实例制作订单统计表,数据集分别来自订单表「t_order」和订单明细表「order_detail」,表格间通过订单号「order_id」关联。

预期效果如下:

主子报表预览
2.2 数据准备

通过数据源「VRDemo」,分别建立数据集如下:

  • 数据集ds1,SQL为:SELECT * FROM t_order

  • 数据集ds2,SQL为:SELECT * FROM order_detail

2.3 报表设计

设计报表表头,拖入相应字段到单元格,完成报表设计,如下图所示:

主子报表设计

除B3外,设置A1~F10的左主格为B3;设置A11的左主格为B3。

2.4 数据集关联

数据集ds1和ds2由于属于不同数据集,需要建立关联关系。当ds1和ds2的订单号相等时,则为同一个订单数据。 选中A11,点击工具栏「过滤」,为A11设置过滤条件,如下图所示:

主子报表设置过滤条件
2.5 效果预览

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

主子报表预览