7.5 DataReport的数据分组统计
在报表的设计与使用中,报表的分组与统计使用得非常广泛,比如要求通过报表显示班里每位学生的每科成绩分数、每位学生各科成绩之和、每位学生的平均分等,就必须使用分组统计来实现报表的设计。下面举例说明这一问题。
现在以学生成绩统计为例,程序的界面要求如图7-11所示。
图7-11 学生成绩统计界面
而我们希望产生如图7-12所示的报表形式,则报表的制作过程如下:
图7-12 分组统计报表校样图
1.先建立一个数据环境器,通过数据环境器中Connection对象和Command对象联接好相应的数据库和数据表,这里以“学生学籍数据库.mdb”中的“成绩表”为例。然后建立一个对“姓名”字段的分组操作,最后,添加两个合计,一个为“总成绩”合计,对“成绩”字段进行求和分组统计;另一个为“平均分”合计,对“成绩”字段进行平均分分组统计。由于在6.5.3、6.5.4节中已经对分组和合计部分有所介绍,读者可参阅前面章节的学习制作过程,这里只做简单讲解。设计好的数据环境器如图7-13所示。
图7-13 分组统计的数据环境器设置
2.添加一个Data Report到工程中,并且将其DataSource属性设置为“Data Environment”,Data Member属性设置为“Command1_Grouping”(注意:不是Command1,而应是分组名称)。
3.在Data Report上单击鼠标右键,待出现快捷菜单时,从中选取“检索结构”命令,接着出现的对话框如图7-14所示。
图7-14 报表检索结构提示对话框
单击“是”,让Data Report检索新的数据记录结构,然后查看Data Report的区域结构。结果除了在前面所介绍的报表标头、页标头、细节、页注脚和报表注脚之外,在细节区域的前后各增加了“分组标头”和“分组注脚”区域。新增的两个区域,主要用来设置分组字段和统计字段。
4.接下来我们预定如下安排数据:
分组标头:放置分组的“姓名”字段(包含标签框和文本框),再放入两个报表标签框,一个为“课程名称”,另一个为“成绩”。
细节:明细数据,包含“课程名称”和“成绩”两个字段,都为报表文本框控件。
分组注脚:统计数据,也就是两个分组合计字段,“总成绩”合计和“平均分”合计。
明确各区域的数据安排后,采用本章第一小节所介绍的方法,逐一从Data Environment拖动上述字段到Data Report所对应的区域中,如图7-15所示。
图7-15 分组统计报表的布局
这样,就完成了分层统计报表的设计。以上的设计有几个重点:
1.应该先使用Data Environment建立好分组统计的Command对象。
2.Data Report的DataMember属性应设置成Command对象中的“分组对象”。
3.利用Data Report快捷菜单的“检索结构”来检索分组统计的结构。
4.明细数据应放置在Data Report的“细节”区域。
5.分组字段应放置在Data Report 的“分组标头”区域。
6.统计字段通常放置在Data Report的“分组注脚”区域(如果放置在“分组标头”区域也可以)。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。