目录
本节目录收起
  • 一、报表实例
  • 二、设计过程
  • 引入式主子报表

    引入式子报表的特点是,主报表单元格根据子报表的行数列数,双向同时扩展,子报表有几行几列,主报表中就扩展出几行几列。子报表占用主报表的空白行列,格线严格对齐,引入式子报表在展现、导出和打印时为表格。
        引入式的子报表扩展后,和主报表形成了一个统一的二维矩形单元格,因此子报表的源格不保留,此时母报表不能访问子报表的值。

    一、报表实例

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

    二、设计过程

    (一) 设计子报表1

    第1步:新建报表

    第2步:定义数据集
    demo_雇员信息2:select 雇员ID, 销售人员, 上级, 地址, 家庭电话, 职务, 邮政编码, 雇佣日期 from DEMO_EMPLOYEE

    第3步:编辑子报表1

    1. 设置B1单元格的表达式:=demo_雇员信息2.select(雇员ID,false,雇员ID==@ID)

    2. 设置B2单元格的表达式:=demo_雇员信息2.职务

    3. 设置B3单元格的表达式:=demo_雇员信息2.上级,设置显示值为:demo_雇员信息2.select(销售人员,,雇员ID==value(),,true) 

    4. 合并B4、C4、D4单元格,设置B4单元格的表达式:=ddemo_雇员信息2.地址

    5. 设置D1单元格的表达式:=demo_雇员信息2.销售人员

    6. 设置D2单元格的表达式:=demo_雇员信息2.雇用日期,设置显示格式为:yyyy-MM-dd 

     7. 设置D3单元格的表达式= demo_雇员信息2.家庭电话

    8. 将A1~A4、B2、B3、B4、D2、D3单元格的左主格设为B1

     9. 美化外观

    第4步:保存报表

    子报表1保存为“雇员信息表”。

    (二) 设计子报表2

    第1步:新建报表

    第2步:引用数据集demo_客户订单

    第3步:编辑子报表2

    1. 设置A2单元格的表达式:=demo_客户订单.group(货主地区,false,雇员ID==@ID)

    2. 设置B2单元格的表达式:=demo_客户订单.count()

    3. 设置C2单元格的表达式:=demo_客户订单.sum(数量*单价*(1-折扣))

    4. 美化外观

    第4步:保存报表

    子报表2保存为“订单信息表”。

    (三) 设计子报表3

    第1步:新建报表

    第2步:定义数据集

    demo_货运费用: select 货主地区, 运货费, 运货商ID, 雇员ID from DEMO_ORDERS

    第3步:编辑子报表3

    1. 设置C1单元格的表达式:=demo_货运费用.group(运货商ID,false),并将扩展方式设为横向扩展 
        设置显示值为:map(list(1,2,3),list("急速快递","统一包裹","联邦货运"))

     

    2. 合并A2、A3单元格,设置A2单元格的表达式:=demo_货运费用.group(货主地区,false,雇员ID==@ID

    3. 设置C2单元格的表达式:=demo_货运费用.count()

    4. 设置C3单元格的表达式:=demo_货运费用.Sum(运货费),设置显示格式为:¥#0.00 

    5. 美化外观

    第4步:保存报表

    子报表3保存为“货运费用表”。

    (四) 制作主报表

    第1步:新建报表

    第2步:引用数据集"demo_雇员信息2"

    第3步:编辑主报表

    1. 合并A2~A8单元格,设置A2单元格的表达式:=demo_雇员信息2.select(雇员ID,false),设置显示值为:demo_雇员信息2.select1(销售人员,雇员ID==value())

    2. 选中B3单元格,插入子报表1,引入方式为“引入式”,增加参数ID,对应值表达式:=A2

     

    3. 选中B5单元格,插入子报表2,引入方式为“引入式”,增加参数ID,对应值表达式:=A2

    4. 选中B7单元格,插入子报表3,引入方式为“引入式”,增加参数ID,对应值表达式:=A2

     

    5. 美化外观

    第4步:保存报表

    主报表保存为“销售情况一览表”。

    (五) 预览打印

    引入式主子报表“销售情况一览表”的预览效果如下图所示: