反饋已提交
網絡繁忙
在线视频学习请查看:主子报表 。
注:文档与视频中有出入的地方以文档为准。
单表式主子报表一般数据集会有两个以上,分别是主表的数据集和子表的数据集,在展现上,一般要求主表以自由格式展现,子表以列表格式展现,为一对多的关系,子报表可能同时存在多个。
单表式主子报表操作比较方便,而且可以进行数据填报,详情可参见:主从表填报。
下面制作一个单表式主子报表作为示例:
该报表的数据分为两个区域展示,分别为「订单统计表」和「订单明细表」。这两个表格都是展示订单相关的数据,即它们都针对同一个对象「订单」,但他们展示的详细订单数据完全不同。我们称「订单统计表」为主表,称「订单明细表」为子表,而这两个表格构成的报表整体称为「单表式主子报表」(命名为「订单数据主子表」)。
新建普通报表,新建两个数据库查询,SQL 查询语句分别为:
ds1:SELECT * FROM 订单
ds2:SELECT * FROM 订单明细
1)按照下面表格中的说明设计「订单统计表」样式:
注:因为所有数据均依靠 B3 单元格的「订单 ID」查询出来的,所以左父格均为 B3。
给单元格添加黑色的外部底框的方法如下图所示:
设计好的「订单统计表」样式如下图所示:
2)将数据集 ds1 中的相关数据列按照标题字段依次拖入到 B3,B4,D4,B5,D5,B6,B7,D7 单元格中。
3)选中 B4,D4,B7 单元格,右边属性面板选择「单元格属性>样式>文本」,设置格式为「日期型 > yyyy-MM-dd」。
4)选中 D7 单元格,右边属性面板选择「单元格属性>样式>文本」,设置单元格格式为「数字 > #0.00」,保留数值小数点后两位。
1)按照下面表格中的说明设计「订单明细表」样式:
2)设计好的「订单明细表」样式如下图所示:
通过给 A12 单元格添加数据过滤条件,建立起数据集 ds1 和 ds2 之间的联系。
双击 A12 单元格,弹出数据列对话框,选择「过滤」。给单元格添加一个普通条件,将 ds2 的「订单 ID」字段与 ds1 的「订单 ID」字段进行绑定,实现两个数据集之间的关联。
条件可以设置为 ds2 的「订单 ID」列等于「单元格 B3」 或者等于「数据列 ds1 订单ID」。
为了让扩展出来的每个「订单 ID」对应的「订单统计表」和「订单明细表」分页展示,需要设置分页。
因为一个「订单 ID」可能对应几个「产品 ID」,即订单明细表扩展的数据可能不止一行,所以此时无法设置「行后分页」,需要在下一页前设置「行前分页」。选中 A1 单元格,右边属性面板选择「单元格属性>其他>分页」,勾选「行前分页」。
保存报表,点击「分页预览」,效果如下图所示:
移动端查看报表的方式请参见 报表移动端预览。
App 端和 HTML5 端均支持,效果如下图所示:
已完成模板可参见:%FR_HOME%\webroot\WEB-INF\reportlets\doc\Advanced\MasterReport\订单数据主子表.cpt
点击下载模板:订单数据主子表.cpt
文 檔回 饋
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉