反馈已提交

网络繁忙

当前为10.0版本文档,只有最新版本的文档支持在线编辑修改,如果想创建/编辑文档,请移步至 最新版帮助文档

嵌入式主子报表

  • 文档创建者:文档助手1
  • 历史版本:26
  • 最近更新:Leo.Tsai 于 2021-09-15
  • 1. 概述

    嵌入式主子报表特点是在单元格中嵌入独立的报表模板,嵌入的模板称为「子报表」,嵌入子报表后的整体称为「主报表」。

    各子报表格式可以不对齐,子表与主表的格式也可以不对齐,子报表能够获取主表中的值。如下图员工销售一览表:

    222

    2. 示例

    2.1 制作主报表

    2.1.1 设计表格

    新建普通报表,设计主表如下图所示:

    Snag_13b7f55.png

    注:根据实际情况将行 3 和行 5 的行高增高,否则只能显示部分数据。

    2.1.2 添加参数

    点击「模板>模板参数」,在主表中添加一个参数,双击参数名修改为「销售员」,通过参数查询某一个销售员的个人信息及订单信息。

    Snag_14242a8.png

    2.1.3 添加下拉框控件

    点击编辑参数界面,点击「全部添加」,在参数面板上生成控件,参数控件选择「下拉框控件」,最后调整组件位置,步骤如下图所示:

    1611725969506032.png

    2.1.4 设置控件默认值

    1)选中「下拉框控件」,控件名称修改为「销售员」,控件值默认为字符串「张颖」,即默认查询张颖的个人信息及订单信息。

    2)点击数据字典设置,选择数据库 FRDemo 中的雇员表,实际值为「雇员 ID」 列,显示值为「姓名」列,此处使用列序号分别为 1 列和 2 列。

    步骤如下图所示:

    1607676144454433.png

    2.2 制作子报表 1

    2.2.1 准备数据

    新建普通报表,新建数据库查询 ds1,SQL 查询语句为:SELECT * FROM 雇员 where 雇员ID ='${ID}'。通过参数 ID 查询出对应销售员的个人信息。

    1623918092649761.png

    2.2.2 设计表格

    设计表格如下图所示:

    1607677611657756.png

    完成后保存报表。

    2.3 制作子报表 2

    2.3.1 准备数据

    新建普通报表,新建数据库查询 ds1,SQL 查询语句为:SELECT * FROM 订单 where 雇员ID = ${销售员} and strftime('%Y',订购日期)='2011'。通过参数「销售员」查询出对应销售员订购日期在 2011 年的订单信息。

    1617172794589933.png

    2.3.2 设计表格

    设计表格如下图所示:

    1607678393124410.png

    完成后保存报表。

    2.4 嵌入子报表

    1)打开主报表,右击主报表 B3 单元格,选择「单元格元素>插入子报表」,如下图所示:

    Snag_186bf5f.png

    2)在弹出的编辑子报表对话框中,选择子报表 1 所在路径。添加参数 ID (子表中的参数名称),值为公式 $销售员,将主表的销售员参数值传递给子表 1 的 ID 参数,如下图所示:

    Snag_189872a.png

    3)右击主报表 B5 单元格,选择「单元格元素>插入子报表」,在弹出的编辑子报表对话框中,选择子报表 2 所在路径。

    由于子报表 2 的参数名与主报表中的参数名相同,此时可以不设置传递参数,直接选择继承报表的参数,如下图所示:

    Snag_18d38f7.png

    2.5 效果预览

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

    4CB8DA55-B8BA-4D6E-8120-31A8006ADCB4.GIF

    注:移动端不支持。

    3. 模板下载

    已完成模板可参见:

    主报表:%FR_HOME%\webroot\WEB-INF\reportlets\doc\Advanced\MasterReport\嵌入式主子表主报表.cpt

    子报表1:%FR_HOME%\webroot\WEB-INF\reportlets\doc\Advanced\MasterReport\嵌入式主子表子报表1.cpt

    子报表2:%FR_HOME%\webroot\WEB-INF\reportlets\doc\Advanced\MasterReport\嵌入式主子表子报表2.cpt

    点击下载模板:

    嵌入式主子表主报表.cpt

    嵌入式主子表子报表1.cpt

    嵌入式主子表子报表2.cpt

    4. 注意事项

    4.1 嵌入的子报表与主报表单元格边界问题

    4.1.1 问题描述

    当在主报表中嵌入子报表的单元格设置边框时,预览效果中子报表与单元格的左边界无法对齐,如下图所示:

    4.1.2 原因分析

    因为单元格的「单元格属性>样式>对齐」默认左右会自动缩进,所以预览时,嵌入的子报表与主报表单元格的左边界无法对齐。如下图所示:

    Snag_1a6da3e.png

    4.1.3 解决方案

    将「单元格属性>样式>对齐」左右缩进改为 0 即可。效果如下图所示:

    注:不支持子报表自动填充整个单元格。

    附件列表


    主题: 报表应用
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

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

    总裁办24H投诉

    热线电话:173-1278-1526