规定当子报表进行运算时,以当前格为扩展格,分别向右、向下进行扩展,结果子报表有几行几列,则扩展出几行几列。扩展后的子报表占用母报表的空白行列,接受母报表的行高列宽,整表依旧是由统一的二维矩形单元格组成,这种子报表称为引入式子报表。 # 报表特点 引入式子报表的特点是,主报表单元格根据子报表的行数列数,双向同时扩展,子报表有几行几列,主报表中就扩展出几行几列。子报表占用主报表的空白行列,格线严格对齐,引入式子报表在展现、导出和打印时为表格。 引入式的子报表扩展后,和主报表形成了一个统一的二维矩形单元格,因此子报表的源格不保留,此时母报表不能访问子报表的值。 # 报表样例 制作“销售情况一览表”,引用“雇员信息表”、“订单信息表”和“货运费用表”三个子报表。 ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_f31006f2c9e24dc6fd621513a40a61cf_r.png) # 制作方法 ## 制作主报表“销售情况一览表” ### 第一步 引用数据集 引用数据集"demo _ 雇员表"。 ![](/uploads/projects/7.11_online/uploads/projects/7.11_online/uploads/sjjc/images/m_2119a7ea84ce37712429cc39a3accd03_r.png) ### 第二步 制作表样 绘制出报表基本结构,如下图: ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_151864674764c4da3f871a31c988cd28_r.png) ### 第三步 设置A2单元格表达式 设置A2单元格表达式为:`=demo_雇员信息2.select(雇员ID,false)` ### 第四步 设置显示值 选中A2单元格,设置显示值为:演示_雇员表.select1(销售人员,雇员ID==value()) ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_505affc7cd2dcbc30efb5f041c2808c8_r.png) ### 第五步 保存报表 点击【保存】按钮,将报表保存为“销售情况一览表”。 ## 制作子报表1“雇员信息表” ### 第一步 引用数据集 引用数据集"demo _ 雇员表"。 ![](/uploads/projects/7.11_online/uploads/projects/7.11_online/uploads/sjjc/images/m_2119a7ea84ce37712429cc39a3accd03_r.png) ### 第二步 制作表样 绘制出报表基本结构,如下图: ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_d59393886d6d977b57b0c7b5e386a621_r.png) ### 第三步 设置单元格表达式 设置单元格表达式: B1:=演示_雇员表.select(雇员ID,false,雇员ID==@ID) B2:=演示_雇员表.职务 B3:=演示_雇员表.上级 B4:=演示_雇员表.地址 D1:=演示_雇员表.销售人员 D2:=演示_雇员表.雇用日期 D3:=演示_雇员表.家庭电话 ### 第四步 添加参数 打开【编辑】菜单栏里的【参数和宏】页面,添加名为“ID”的参数,如下图: ![](/uploads/projects/7.11_online/uploads/projects/7.11_online/uploads/projects/7.11_online/uploads/sjjc/images/m_110783febe37528688b9ea479c1fc4ce_r.png) ### 第五步 设置父子格 将A1~A4单元格的左主格设为B1。 ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_f9dd327c941216e29a8b47cc6995d5de_r.png) ### 第六步 保存报表 点击【保存】按钮,将报表保存为雇员信息表”。 ## 制作子报表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 ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_5e62dc8b30183e0a6297703ffa566947_r.png) ### 第二步 制作表样 绘制出报表基本结构,如下图: ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_b09fd7162bc1c79da8dce135c3f2a706_r.png) ### 第三步 设置单元格表达式 设置单元格表达式: A2:=客户信息.group(货主地区,false,雇员ID==@ID) B2:=客户信息.count() C2:=客户信息.sum(数量*单价*(1-折扣比例)) ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_ec6b29040f859c6c2ae3f2bfdd371ed1_r.png) ### 第四步 添加参数 打开【编辑】菜单栏里的【参数和宏】页面,添加名为“ID”的参数,如下图: ![](/uploads/projects/7.11_online/uploads/projects/7.11_online/uploads/projects/7.11_online/uploads/sjjc/images/m_110783febe37528688b9ea479c1fc4ce_r.png) ### 第五步 保存 点击【保存】按钮,将报表保存为“订单信息表”。 ## 制作子报表3“货运费用表” ### 第一步 定义数据集 新建复杂SQL数据集“货运费用”,SQL语句: select 货主地区,运货费,运货商ID,雇员ID from DEMO_ORDERS ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_fa6e9cdb33619c5ad0e64f951982bc1f_r.png) ### 第二步 制作表样 绘制出报表基本结构,如下图: ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_61492f0f60be1d2dfcc515c55e9cc8b5_r.png) ### 第三步 设置单元格表达式 设置单元格表达式: C1:=货运费用.group(运货商ID,false) A2:=货运费用.group(货主地区,false,雇员ID==@ID) C2:=货运费用.count() C3:=货运费用.Sum(运货费) ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_1e1c8a51f9e25604358200704ed9ec27_r.png) ### 第四步 添加参数 打开【编辑】菜单栏里的【参数和宏】页面,添加名为“ID”的参数,如下图: ![](/uploads/projects/7.11_online/uploads/projects/7.11_online/uploads/projects/7.11_online/uploads/sjjc/images/m_110783febe37528688b9ea479c1fc4ce_r.png) ### 第五步 设置横向扩展 设置C1单元格的扩展方式为:横向扩展 ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_c13f7fb8af875434cf422bdb974e66fb_r.png) ### 第六步 设置显示值和显示格式 1)设置C1单元格显示值 选中C1单元格,打开【编辑】菜单栏里的【显示值】页面,设置如下图所示: ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_d38a9662df030de386efa4cdc596bf24_r.png) 2)设置C3单元格显示格式为¥#0.00。 ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_4aea8e8d6ec7631e6b80fb596880ac55_r.png) ### 第七步 保存报表 点击【保存】按钮,将报表保存为“订单信息表”。 ## 添加子报表 ### 第一步 打开主报表 打开主报表“销售情况一览表”,进入主报表设计界面。 ### 第二步 插入子报表 1)选中B3单元格,点击菜单栏【插入】-【子报表】,将“引入方式”设为“引入式”,“路径”选择子报表“雇员信息表”。然后点击参数定义后的【添加】按钮添加参数,对应值表达式为:=A2,设置完成点【确定】按钮。 ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_b60079d8ca3353975a5973ff1150eebe_r.png) 2)选中B5单元格,点击菜单栏【插入】-【子报表】,将“引入方式”设为“引入式”,“路径”选择子报表“订单信息表”。然后点击参数定义后的【添加】按钮添加参数,对应值表达式为:=A2,设置完成点【确定】按钮。 ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_e7cd462fd3fdaf8c47753884a47be70a_r.png) 3)选中B7单元格,点击菜单栏【插入】-【子报表】,将“引入方式”设为“引入式”,“路径”选择子报表“雇员信息表”。然后点击参数定义后的【添加】按钮添加参数,对应值表达式为:=A2,设置完成点【确定】按钮。 ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_7a569f7a451e5e8c80f917597380658e_r.png) ### 第三步 保存预览 点击【预览】按钮,保存并预览报表。 预览界面如下图所示: ![](/uploads/projects/7.11_online/uploads/sjjc/images/m_7e9732188398699a7e7c24edc3f5041c_r.png)