fastreport使用入门教程之嵌套报表


fastreport使用入门教程之嵌套报表

工具/原料

fastreport

方法/步骤

嵌套报表

有时一些复杂的报表结构中,需要报表的特殊位置显示特殊的数据。通过FastReport的Band可以创建这些报表。创建子报表可以使用“子报表组件” 。

插入这种组件后,就会在设计器中添加一个新的页面,它连接着这个子报表组件。镶嵌式报表就像一系列的多页报表系统。唯一不同的就是嵌套报表显示在基础报表中特殊的位置,而不是在他的后面。当输出报表时,当FastReport系统遇到“SubReport”组件,FastReport引擎,输出关联的设计页,然后输出报表的其他部分。

还可以在子报表窗面上添加子报表,增加嵌套层数。

注意:可以增加嵌套报表,但最多有6层数据。

5.2、设计子报表

你可以在同一Band上放置两个或更多的“SubReport”组件。

fastreport使用入门教程之嵌套报表

这样允许报表设计中,输出数据可以有不同的长度,不同的宽度,不同的高度。

如你所见,报表在输出全部子报表后,生成报表结构。子报表也可以使用各种对齐方法属性。

fastreport使用入门教程之嵌套报表

5.3、子报表中的限制

既然子表是主报表的一部分,他又不能在包含以下Band:“ReportTitle/ReportFooter”、“PageTitle/PageFooter/PageBackground,”和“ColumnTitle/ColumnFooter.”。把这些Band是可以放在主表单上,但是报表系统是不能对其进行处理。同理,嵌套表的选项设置一样不被理会,因为报表输出的时候,主要用到的是主表单的选项。

不能把组件放在“subreport”组件的下面。

fastreport使用入门教程之嵌套报表

当显示子报表的数据时,报表系统将用子报表的内容覆盖“subReport”组件下面的位置。打印可能会出现以下情况:

fastreport使用入门教程之嵌套报表

如果要在subreport下面显示数据,可以使用child-band。

在需要多个子报表的情况,这种方法一样适用,

fastreport使用入门教程之嵌套报表

5.4、PrintOnParent选项

“subreport”组件又一个属性“printonparent”属性,根据情况有需要。默认属性为false。

通常子表显示在主表的band上,父Band不依赖于子Band。不进行拉伸。如果“printonparent”属性设为true,则打印输出报表的子报表到主报表的包含有“subreport”组件的band上。你可以使Band可以随内容进行拉伸。

fastreport使用入门教程之嵌套报表

同为比较常用的报表工具,FineReport对嵌套类报表的解决方案与FastReport有所不同,由于工具本身的差异化,在实现报表嵌套功能时,FineReport的步骤更为简单。FineReport是用主子报表来实现嵌套功能,具体如下:

嵌入式主子表

1. 描述

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

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

fastreport使用入门教程之嵌套报表

2. 示例

2.1 制作主报表

如下图设计主表:

fastreport使用入门教程之嵌套报表

· 添加参数

在主表中定义一个报表参数,参数名为销售员,通过参数查询某一个销售员的个人信息及订单信息。

使用默认的参数界面,销售员参数控件选择下拉框,实际值为雇员表中的雇员ID,显示值为对应的姓名。具体可查看参数定义与参数面板制作章节。

2.2 添加不同参数的子报表

· 子报表sub_1.cpt说明

子报表1:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\MasterReport\sub_1.cpt。

该子表中通过参数“ID”查询出对应销售员的个人信息。SQL语句为:SELECT * FROM 雇员 where 雇员ID = ${ID},表样为:

fastreport使用入门教程之嵌套报表

· 在主表中插入子表1

右击主表B3单元格,单元格元素>插入子报表,弹出编辑子报表对话框,选择子表1所在路径;

添加参数ID(子表中的参数名称),值使用公式$销售员,将主表的销售员参数值传递给子表1的ID参数,如下图设置:

fastreport使用入门教程之嵌套报表

2.3 添加相同参数的子报表

· 子报表sub_2.cpt说明

子报表2:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\MasterReport\sub_2.cpt。

该子表中通过参数“销售员”查询出对应销售员的订单信息。SQL语句为:SELECT * FROM 订单 where 雇员ID = ${销售员},表样为:

fastreport使用入门教程之嵌套报表

· 在主表中插入子表2

右击主报表D5单元格,单元格元素>插入子报表,弹出编辑子报表对话框,选择子表2所在路径;

由于子表2的参数名与主表中的参数名相同,这时可以不设置传递参数,直接选择继承报表的参数。

fastreport使用入门教程之嵌套报表

3. 保存与预览

保存模板,点击设计器中的分页预览,效果如上。

标签: 公务, 参数, 报表, 子表
分类: 职场&理财
时间: 2015-04-26

相关文章

  1. fastreport c#入门教程之嵌套报表

    工具/原料 fastreport 嵌套报表 有时一些复杂的报表结构中,需要报表的特殊位置显示特殊的数据.通过FastReport的Band可以创建这些报表.创建子报表可以使用"子报表组件" . 插入这 ...
  2. fastreport c#教程之嵌套报表

    fastreport c#教程之嵌套报表 工具/原料 fastreport 方法/步骤 嵌套报表 有时一些复杂的报表结构中,需要报表的特殊位置显示特殊的数据.通过FastReport的Band可以创建这些报表.创建子报表 ...
  3. fastreport c#初级教程之嵌套报表

    fastreport c#初级教程之嵌套报表 工具/原料 fastreport 方法/步骤 嵌套报表 有时一些复杂的报表结构中,需要报表的特殊位置显示特殊的数据.通过FastReport的Band可以创建这些报表.创建子 ...
  4. fastreport .net入门教程之嵌套报表

    fastreport .net入门教程之嵌套报表 工具/原料 fastreport 方法/步骤 嵌套报表 有时一些复杂的报表结构中,需要报表的特殊位置显示特殊的数据.通过FastReport的Band可以创建这些报表.创 ...
  5. fastreport中文版入门教程之嵌套报表

    fastreport中文版入门教程之嵌套报表 工具/原料 fastreport 方法/步骤 嵌套报表 有时一些复杂的报表结构中,需要报表的特殊位置显示特殊的数据.通过FastReport的Band可以创建这些报表.创建子 ...
  6. fastreport 入门教程之嵌套报表

    工具/原料 fastreport 嵌套报表 有时一些复杂的报表结构中,需要报表的特殊位置显示特殊的数据.通过FastReport的Band可以创建这些报表.创建子报表可以使用"子报表组件" . 插入这 ...
  7. fastreport使用教程之嵌套报表

    fastreport使用教程之嵌套报表 工具/原料 fastreport 方法/步骤 嵌套报表 有时一些复杂的报表结构中,需要报表的特殊位置显示特殊的数据.通过FastReport的Band可以创建这些报表.创建子报表可 ...
  8. fastreport初级使用教程之嵌套报表

    fastreport初级使用教程之嵌套报表 工具/原料 fastreport 方法/步骤 嵌套报表 有时一些复杂的报表结构中,需要报表的特殊位置显示特殊的数据.通过FastReport的Band可以创建这些报表.创建子报 ...
  9. FastReport教程之嵌套报表

    FastReport教程之嵌套报表 工具/原料 FastReport 方法/步骤 嵌套报表 有时一些复杂的报表结构中,需要报表的特殊位置显示特殊的数据.通过FastReport的Band可以创建这些报表.创建子报表可以使 ...
  10. fastreport 初级教程之嵌套报表

    fastreport 初级教程之嵌套报表 工具/原料 fastreport 方法/步骤 嵌套报表 有时一些复杂的报表结构中,需要报表的特殊位置显示特殊的数据.通过FastReport的Band可以创建这些报表.创建子报表 ...
  11. fastreport .net教程之嵌套报表

    fastreport .net教程之嵌套报表 工具/原料 fastreport 方法/步骤 嵌套报表 有时一些复杂的报表结构中,需要报表的特殊位置显示特殊的数据.通过FastReport的Band可以创建这些报表.创建子 ...
  12. fastreport中文版教程之嵌套报表

    fastreport中文版教程之嵌套报表 工具/原料 fastreport 方法/步骤 嵌套报表 有时一些复杂的报表结构中,需要报表的特殊位置显示特殊的数据.通过FastReport的Band可以创建这些报表.创建子报表 ...
  13. fastreport中文版初级教程之嵌套报表

    fastreport中文版初级教程之嵌套报表 工具/原料 fastreport 方法/步骤 嵌套报表 有时一些复杂的报表结构中,需要报表的特殊位置显示特殊的数据.通过FastReport的Band可以创建这些报表.创建子 ...
  14. fastreport .net初级教程之嵌套报表

    工具/原料 fastreport 嵌套报表 有时一些复杂的报表结构中,需要报表的特殊位置显示特殊的数据.通过FastReport的Band可以创建这些报表.创建子报表可以使用"子报表组件" . 插入这 ...
  15. fastreport使用入门教程之报表预览、打印、导出

    fastreport使用入门教程之报表预览.打印.导出,创建的报表可以预览,打印和导出到报表可以支持的格式.这些在报表预览界面都可以实现. 工具/原料 fastreport 方法/步骤 创建的报表可以预览,打印和导出到报 ...
  16. fastreport c#入门教程之报表预览、打印、导出

    fastreport c#入门教程之报表预览.打印.导出,创建的报表可以预览,打印和导出到报表可以支持的格式.这些在报表预览界面都可以实现. 工具/原料 fastreport 方法/步骤 创建的报表可以预览,打印和导出到 ...
  17. fastreport使用教程之报表预览、打印、导出

    fastreport使用教程之报表预览.打印.导出,创建的报表可以预览,打印和导出到报表可以支持的格式.这些在报表预览界面都可以实现. 工具/原料 fastreport 方法/步骤 创建的报表可以预览,打印和导出到报表可 ...
  18. fastreport初级使用教程之报表预览、打印、导出

    fastreport初级使用教程之报表预览.打印.导出,创建的报表可以预览,打印和导出到报表可以支持的格式.这些在报表预览界面都可以实现. 工具/原料 fastreport 方法/步骤 创建的报表可以预览,打印和导出到报 ...
  19. fastreport 入门教程之报表预览、打印、导出

    fastreport 入门教程之报表预览.打印.导出,创建的报表可以预览,打印和导出到报表可以支持的格式.这些在报表预览界面都可以实现. 工具/原料 fastreport 方法/步骤 创建的报表可以预览,打印和导出到报表 ...