1 概述

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

2 示例效果

以企业税额为例,主表显示企业的基本信息,子表显示企业的税额明细,如下图:

3 操作步骤

3.1 数据准备

准备好本例中使用到的数据视图:
1)主表数据视图:企业
具体SQL如下:

SELECT 
    `dj_swdjnb`.`QYBM` AS `企业编码`,
    `dj_swdjnb`.`QYMC` AS `企业名称`,
    `dj_swdjnb`.`QYJC` AS `企业简称`,
    `dj_swdjnb`.`KYRQ` AS `开业日期`,
    `dj_swdjnb`.`SCJYDZ` AS `经营地址`,
    `dj_swdjnb`.`XM_FR` AS `法人`,
    `dj_swdjnb`.`GDDH_FR` AS `固定电话`,
    `dj_swdjnb`.`JYFS` AS `经营方式`
FROM
    `dj_swdjnb`
WHERE
    round(DJ_SWDJNB.KYRQ/10000,0) = {开业年份}

2)从表数据视图:汇总
具体SQL如下:

SELECT 
    `zs_mx`.`QYBM` AS `企业编码`,
    `zs_mx`.`SZBM` AS `税种编码`,
    SUM(`zs_mx`.`SE`) AS `税额`,
    round(SSRQ/10000,0) AS `年份`
FROM
    `zs_mx`
GROUP BY
    `zs_mx`.`QYBM`, round(SSRQ/10000,0), `zs_mx`.`SZBM`

3.2 报表设计

新建一张普通报表,将上面准备好的数据视图拖拽到“模板数据”中的“数据”节点下,并设计好表样和样式,将对应的字段添加到报表中,效果如下图:

3.2.1 主表设置

1)普通导航格设置
将主表信息中的 C4 单元格设置为“普通导航格”,如下图:

2)强制导航设置
从表单布局可以看出,企业信息、经营方式、法人、固定电话均与导航格不在同一行,想要以C4 单元格进行数据扩展,那么就分别为以上单元格设置强制导航(纵向导航格设置为:C4),如下图:

3.2.2 从表设置

1)普通导航格设置
一个企业对应多条税额信息且是分组显示的,因此需要分别将从表信息中的 B9 和 C9 单元格设置为“普通导航格”,如下图:

2)强制导航设置
同样,从表信息要跟随主表导航格进行扩展,从表每行中的第一个单元格都需要设置强制导航(纵向导航格设置为:C4),如下图:

3)统计设置
需要对税额进行汇总,将 E10 单元格设置为“统计格”即可,如下图:

3.3 效果预览

保存报表,点击[预览]查看主从报表的最终效果,如下图:

4 实例地址

所属应用:智能报表实例
模板地址:应用空间\lczReport\初级教程\表单报表_主从.hte

作者:fancy  创建时间:2023-06-02 17:45
最后编辑:fancy  更新时间:2024-10-31 17:13