规定当子报表进行运算时,以当前格为扩展格,分别向右、向下进行扩展,结果子报表有几行几列,则扩展出几行几列。扩展后的子报表占用母报表的空白行列,接受母报表的行高列宽,整表依旧是由统一的二维矩形单元格组成,这种子报表称为引入式子报表。

报表特点

引入式子报表的特点是,主报表单元格根据子报表的行数列数,双向同时扩展,子报表有几行几列,主报表中就扩展出几行几列。子报表占用主报表的空白行列,格线严格对齐,引入式子报表在展现、导出和打印时为表格。

引入式的子报表扩展后,和主报表形成了一个统一的二维矩形单元格,因此子报表的源格不保留,此时母报表不能访问子报表的值。

报表样例

制作“销售情况一览表”,引用“雇员信息表”、“订单信息表”和“货运费用表”三个子报表。 引入式主子报表 - 图1

制作方法

制作主报表“销售情况一览表”

第一步 引用数据集

引用数据集"演示 _ 雇员表"。 引入式主子报表 - 图2

第二步 制作表样

绘制出报表基本结构,如下图: 引入式主子报表 - 图3

第三步 设置A2单元格表达式

设置A2单元格表达式为:=演示_雇员表.select(雇员ID,false)

第四步 设置显示值

选中A2单元格,设置显示值为:=演示_雇员表.select1(销售人员,雇员ID==value())

引入式主子报表 - 图4

第五步 保存报表

点击【保存】按钮,将报表保存为“销售情况一览表”。

制作子报表1“雇员信息表”

第一步 引用数据集

引用数据集"演示 _ 雇员表"。 引入式主子报表 - 图5

第二步 制作表样

绘制出报表基本结构,如下图: 引入式主子报表 - 图6

第三步 设置单元格表达式

设置单元格表达式:

B1:=演示_雇员表.select(雇员ID,false,雇员ID==@ID)

B2:=演示_雇员表.职务

B3:=演示_雇员表.上级

B4:=演示_雇员表.地址

D1:=演示_雇员表.销售人员

D2:=演示_雇员表.雇佣日期

D3:=演示_雇员表.家庭电话

第四步 添加参数

打开【编辑】菜单栏里的【参数和宏】页面,添加名为“ID”的参数,如下图:

引入式主子报表 - 图7

第五步 设置父子格

将A1~A4单元格的左主格设为B1。 引入式主子报表 - 图8

第六步 保存报表

点击【保存】按钮,将报表保存为雇员信息表”。

制作子报表2“订单信息表”

第一步 定义数据集

新建复杂SQL数据集“客户信息”,SQL语句:select demo_orders.订单ID,demo_orders.雇员ID,demo_orders.货主地区,demo_orders.客户ID,demo_orderdetails.数量,demo_orderdetails.单价,demo_orderdetails.折扣比例 from demo_orders,demo_orderdetails where demo_orders.订单ID=demo_orderdetails.订单ID 引入式主子报表 - 图9

第二步 制作表样

绘制出报表基本结构,如下图: 引入式主子报表 - 图10

第三步 设置单元格表达式

设置单元格表达式:

A2:=客户信息.group(货主地区,false,雇员ID==@ID) B2:=客户信息.count() C2:=客户信息.sum(数量*单价*(1-折扣比例))

引入式主子报表 - 图11

第四步 添加参数

打开【编辑】菜单栏里的【参数和宏】页面,添加名为“ID”的参数,如下图:

引入式主子报表 - 图12

第五步 保存

点击【保存】按钮,将报表保存为“订单信息表”。

制作子报表3“货运费用表”

第一步 定义数据集

新建复杂SQL数据集“货运费用”,SQL语句: select 货主地区,运货费,运货商ID,雇员ID from DEMO_ORDERS 引入式主子报表 - 图13

第二步 制作表样

绘制出报表基本结构,如下图: 引入式主子报表 - 图14

第三步 设置单元格表达式

设置单元格表达式:

C1:=货运费用.group(运货商ID,false) A2:=货运费用.group(货主地区,false,雇员ID==@ID) C2:=货运费用.count() C3:=货运费用.Sum(运货费)

引入式主子报表 - 图15

第四步 添加参数

打开【编辑】菜单栏里的【参数和宏】页面,添加名为“ID”的参数,如下图:

引入式主子报表 - 图16

第五步 设置横向扩展

设置C1单元格的扩展方式为:横向扩展 引入式主子报表 - 图17

第六步 设置显示值和显示格式

1)设置C1单元格显示值 选中C1单元格,打开【编辑】菜单栏里的【显示值】页面,设置如下图所示: 引入式主子报表 - 图18

2)设置C3单元格显示格式为¥#0.00。 引入式主子报表 - 图19

第七步 保存报表

点击【保存】按钮,将报表保存为“订单信息表”。

添加子报表

第一步 打开主报表

打开主报表“销售情况一览表”,进入主报表设计界面。

第二步 插入子报表

1)选中B3单元格,点击菜单栏【插入】-【子报表】,将“引入方式”设为“引入式”,“路径”选择子报表“雇员信息表”。然后点击参数定义后的【添加】按钮添加参数,对应值表达式为:=A2,设置完成点【确定】按钮。 引入式主子报表 - 图20

2)选中B5单元格,点击菜单栏【插入】-【子报表】,将“引入方式”设为“引入式”,“路径”选择子报表“订单信息表”。然后点击参数定义后的【添加】按钮添加参数,对应值表达式为:=A2,设置完成点【确定】按钮。 引入式主子报表 - 图21

3)选中B7单元格,点击菜单栏【插入】-【子报表】,将“引入方式”设为“引入式”,“路径”选择子报表“雇员信息表”。然后点击参数定义后的【添加】按钮添加参数,对应值表达式为:=A2,设置完成点【确定】按钮。 引入式主子报表 - 图22

第三步 保存预览

点击【预览】按钮,保存并预览报表。 预览界面如下图所示: 引入式主子报表 - 图23