皕杰报表工具子报表设计

皕杰报表软件是一个灵活易用、功能强大的主流Java报表工具,即可以做各种复杂的报表,也可以做主子组合报表,本文介绍如何用皕杰报表来做主子组合报表。所谓主子组合报表是指主报表包含了多片区域,每片区域各自展示不同的主题,像这样的报表我们称之为主子组合报表。其中每一小片区域称为子报表,子报表构成的报表整体称为主报表。

本例中主表为05子报表演示.brt,子表分别为05-1产品.brt、05-2订单.brt、05-3订单明细.brt。

子报表设计相关示例体验网址:http://demo.bijetsoft.com/iface (体验账号密码:admin/1)

子报表设计相关brt下载网址:http://www.bijetsoft.com/product-download.html
(下载最新版本,最新版本中含有相关brt文件)

首先设计好需要用到的子表

05-1产品.brt

05-2订单.brt

05-3订单明细.brt

在主表中选中需要展示子表的单元格,右键单元格-设置类型-为子报表类型

在这个单元格属性-单元格赋值-数据值中使用单元格函数subreport()连接子表

点击如图所示的公式编辑按钮,弹出公式编辑对话框。

编辑公式:subreport('Demo/08其它特性/05-1产品.brt')

同理,另外两个单元格的公式编辑分别为:subreport('Demo/08其它特性/05-2订单.brt')、subreport('Demo/08其它特性/05-3订单明细.brt')。

根据需要可以设置这个子报表的单元格属性

通过皕杰报表工具预览报表

子报表传参和路径问题说明

A.子报表传参问题

子表中有参数 date(日期类型) 、type (字符串类型)和 name (字符串组类型)

主表中有date1参数(子表date的参数值)、B3(子表type的参数值)和集合F4{}(子表name的参数值)

那么子报表连接表达式应该是subreport('Demo/06图表演示/01饼状图.brt','date='+tostr(@date1,'yyyy-MM-dd')+';type='+B3+';name='+tostr(F4{}))

B.子报表路径问题

报表设计器端:subreport的报表路径从主表所在项目作为根目录,然后设置同项目下的子表的路径。例如饼状图.brt,它在项目视图中是Demo-06图表演示-01饼状图.brt,那么子报表表达式应该是subreport('Demo/06图表演示/01饼状图.brt')

Web服务器端:报表默认是放到WEB-INF/reports(report_config.xml设置报表存放路径的根目录地址)目录下的,如果子表放到WEB-INF/reports/Demo/06图表演示/01饼状图.brt这个路径下,那么子报表表达式应该是subreport('Demo/06图表演示/01饼状图.brt')。

有产品 有技术 服务好 可信赖

免费试用

仅需1分钟,即可体验新一代企业级Java报表工具,充分挖掘数据价值,引领企业增长!