考试首页 | 考试用书 | 培训课程 | 模拟考场 | 考试论坛  
全国  |             |          |          |          |          |         
  当前位置:计算机等级 > 二级考试 > Visual FoxPro > VF辅导 > 文章内容
  

计算机等级考试二级VFP数据库程序设计辅导讲义:报表数据分组

中华IT学院   【 】  [ 2017年5月23日 ]

  报表数据分组

  在设计报表时,有时所要报表的数据是成组出现的,需要以组为单位对报表进行处理。例如在打印职工花名册时,为阅读方便,需要按所在部门或技术职务进行分组。前面学习了利用报表向导创建了一对多报表,其实它就是一个典型的分组报表的例子。在本节里,我们来学习如何用报表设计器进行数据分组报表。

  利用分组可以明显地分隔每组记录,使数据以组的形式显示。组的分隔是根据分组表达式进行的,这个表达式通常由一个以上的表字段生成,有时也可以相当复杂。可以添加一个或多个组、更改组的顺序、重复组标头或者更改、删除组带区。

  分组之后,报表布局就有了组标头和组注脚带区,可以向其中添加控件。组标头带区中一般都包含组所用字段的“域控件”,可以添加线条、矩形、圆角矩形,也可以添加希望出现在组内第一条记录之前的任何标签。组注脚通常包含组总计和其它组总结性信息。

  报表布局实际上并不排序数据,它只是按它们在数据源中存在的顺序处理数据。因此,如果数据源是表,记录的顺序不一定适合于分组。当设置索引的表、视图或查询作为数据源时,可以把数据适当排序来分组显示记录。排序必须使用视图、索引或布局外的其它形式的数据操作来完成。

  6.1 添加单个组

  一个单组报表可以基于输入表达式进行一级数据分组。例如,可以把组设在“技术职务”字段上来打印所有记录,相同技术职务的记录在一起打印。

  注意:这样做的前提是数据源必须按该字段排序。

  添加单个组的步骤:

  从快捷菜单或“报表”菜单中,选择“数据分组”。 出现“数据分组”对话框 :

  这里的属性设置包括打印标头和注脚文本来区别各组,在新的一页上打印每一组,当某组在新页上开始打印时,重置页号。

  对话框选项意义如下:

  分组表达式 显示当前报表的分组表达式,如字段名,并允许输入新的字段名。如果想创建一个新的表达式,可选择对话按钮,显示“表达式生成器”对话框。

  组属性 此属性用以指定如何分页。

  每组从新的一列上开始 当组改变时,从新的一列上开始。

  每组从新的一页上开始 当组改变时,从新的一页上开始。

  每组的页号重新从 1 开始 当组改变时,组在新页上开始打印,并重置页号。

  每页都打印组标头 当组分布在多页上时,指定在所有页的页标头之后打印组标头。

  小于右值时组从新的一页上开始 设置要打印组标头时,组标头距页底的最小距离。

  插入 在“分组表达式”框中插入一个空文本框,以便定义新的分组表达式。

  删除 从“分组表达式”框中删除选定的分组表达式。

  在第一个“分组表达式”框内键入分组表达式。 或者选择对话按钮,在“表达式生成器”对话框中创建表达式。

  在“组属性”区域,选定想要的属性。

  选择“确定”按钮。

  添加表达式后,可以在带区内放置任意需要的控件。通常,把分组所用的域控件从“细节”带区移动到“组标头”带区。

  6.2 添加多个数据分组

  有时,我们需要对报表进行多个数据分组,如在打印职工花名册时在用“所在部门”分组的基础上,还想按技术职务分组,这也称为嵌套分组。嵌套分组有助于组织不同层次的数据和总计表达式。在报表内最多可以定义 20 级的数据分组。

  步骤:

  从“报表”菜单中,选择“数据分组”。出现“数据分组”对话框:

  

d7-6-2.jpg (522774 字节)

  在第一个“分组表达式”框内键入分组表达式。 或者选择对话按钮,在“表达式生成器”对话框中创建表达式。

  在“组属性”区域,选择所需的属性。

  选择“插入”并且对每个分组表达式重复 2、3 步。

  选择“确定”按钮。

  注意:在选择一个分组层次进,请先估计一下分组值的可能更改的频度,然后定义最经常更改的组为第一层。例如,报表可能需要一个按省份的分组和一个按城市的分组。城市字段的值比省份字段更易更改,因此,城市应该是两个组中的第一个,省份就是第二个。在这个多组报表内,表必须在一个关键值表达式上排序或索引过,例如 省份+城市 。

  6.3 更改分组设置

  6.3.1 更改组带区

  更改分组的表达式和组打印选项的方法同上面建立分组一样,都在“数据分组”对话框的“表达式”及“组属性”中进行。

  6.3.2 删除组带区

  如果不再需要在报表布局保留某一分组,可以删除它。在“数据分组”对话框中选中希望删除的组,按“删除”按钮即可实现。如果该组带区中包含有控件,将提示同时删去控件。

  6.3.3 更改分组次序

  在报表中的组定义之后,可以通过如下方法更改它们的次序:

  在“报表”菜单中,选择“数据分组”。

  选中想移动的组左侧的移动按钮,并把它拖到新位置。

  当组重新排序时,组带区中定义的所有控件都将移到新的位置,但重新排序组并不更改以前定义的控件。如果框或线条以前是相对于组带区的上部或底部定位的,那么它们仍将固定在组带区的原位置。

  分组报表的使用可以参考第九节例子。

首页 1 2 尾页
分享到:
本文纠错】【告诉好友】【打印此文】【返回顶部
将考试网添加到收藏夹 | 每次上网自动访问考试网 | 复制本页地址,传给QQ/MSN上的好友 | 申请链接 | 意见留言 TOP
关于本站  网站声明  广告服务  联系方式  站内导航  考试论坛
Copyright © 2007-2013 中华考试网(Examw.com) All Rights Reserved