资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第9章,结构化程序设计,9.1 快速报表,9.2 使用报表设计器设计报表,9.3 数据分组报表,本章小结,第9章 结构化程序设计9.1 快速报表,1,在线教务辅导网:,教材其余课件及动画素材请查阅在线教务辅导网,QQ:,349134187,或者直接输入下面地址:,在线教务辅导网:http:/www.shangfuwang,2,9.1 快速报表,报表主要由两部分组成:数据源和布局。数据源是报表的数据来源,可以是数据库中的表或自由表,也可以是查询、视图或临时表。报表布局定义报表的打印格式,通常有行报表、列报表、一对多报表、多栏报表4种常规布局类型。,Visual FoxPro提供了3种创建报表的方法:使用报表向导创建报表、利用快速报表创建报表、利用报表设计器创建报表。,9.1.1 使用报表向导创建报表,例9-1,使用报表向导建立报表。,要求:报表中包含“学生”表中的学号、姓名、性别、专业和助学金字段,按照性别对记录进行分组,报表样式为“帐务式”,报表布局方向为“纵向”,报表记录按助学金升序排序,报表标题为“学生情况表”,将报表保存为文件report1.frx。,9.1 快速报表 报表主要由两部分组成:数据源和,3,9.1.2 快速报表,除了使用报表向导创建报表外,还可以用“快速报表”功能来建立简单的报表。在快速报表中,Visual FoxPro根据用户选择的布局,选择最基本的报表组件,自动建立简单的报表布局。,例9-2,使用快速报表方法建立学生情况报表report2.frx,报表包括“学生”表的学号、姓名、性别、专业、助学金字段。,9.1.2 快速报表,4,9.2 使用报表设计器设计报表,使用报表设计器设计报表涉及到带区、报表控件和数据源等概念。,9.2.1 报表设计器中的带区,在报表设计器中将报表的不同部分分成不同的带区,在这些带区中可以插入各种控件,可以根据需要修改带区或添加新的带区。带区的主要作用是控制数据在页面上的显示位置,在打印或预览报表时,系统会以不同的方式处理不同带区的数据。对于“页标头”带区,系统将在每页上打印一次该带区所包含的内容;而对于“标题”带区,则只是在报表开始时打印一次该带区的内容。,“页标头”、“细节”和“页注脚”这三个带区是快速报表默认的基本带区。,9.2 使用报表设计器设计报表 使用报表设计器设计报表,5,表9-1 报表带区的名称和作用,带区名称,作用,标题,每张报表开头打印一次,如报表名称,页标头,报表的每页打印一次,如报表的字段名称,细节,报表的每个记录打印一次,如表中的每条记录,页注脚,报表的每页下面打印一次,如页码或打印日期,总结,每张报表最后打印一次,组标头,数据分组时,报表的每组打印一次,组注脚,数据分组时,报表的每组打印一次,列标头,在分栏报表时,每列打印一次,列注脚,在分栏报表时,每列打印一次,表9-1 报表带区的名称和作用带区名称作用标题每张报表开头打,6,9.2.2 报表工具栏,1报表设计器工具栏,图9-10 “报表设计器”工具栏,表9-2 “报表设计器”工具栏各按钮功能,按钮名称,功能,数据分组,显示“数据分组”对话框,用于建立报表中的数据分组,数据环境,显示数据环境设计器窗口,报表控件工具栏,显示或隐藏报表控件工具栏,调色板工具栏,显示或隐藏调色板工具栏,布局工具栏,显示或隐藏布局工具栏,9.2.2 报表工具栏 图9-10 “报表设计器”工具栏表9,7,2报表控件工具栏,可以使用“报表控件”工具栏在报表上创建控件,,单击需要的控件按钮,将鼠标指针移到报表上,然后单击报表来放置控件或将控件拖动到合适大小。,在报表上放置了控件以后,可以双击报表上的控件,在出现的“属性”对话框中设置、修改控件的属性。,图9-11 “报表控件”工具栏,2报表控件工具栏 图9-11 “报表控件”工具栏,8,表9-3 “报表控件”工具栏各按钮功能,按钮名称,功能,选定对象,移动或改变控件的大小,标签,在报表上创建标签控件,显示与记录无关的数据,域控件,在报表上创建字段控件,显示字段、内存变量或其他表达式的内容,线条、矩形、圆角矩形,用于在报表上绘制相应的图形,图片,/ActiveX,绑定控件,显示图片或通用型字段的内容,按钮锁定,允许添加多个同种类型的控件,而不需要多次按此控件的按钮,表9-3 “报表控件”工具栏各按钮功能按钮名称功能选定对象移,9,3其他工具栏,布局工具栏用于在报表上或表单上对齐或调整控件的位置;,调色板工具栏用于设定报表或表单上控件的前景或背景的颜色。,3其他工具栏,10,9.2.3 报表的数据源和报表的布局,1报表的数据源,设计报表的一般步骤是:,(1)打开“报表设计器”,建立一个空报表。,(2)单击“报表设计器”工具栏中的数据环境图标或执行菜单命令显示数据环境,打开“数据环境设计器”窗口。,(3)在“数据环境设计器”窗口中用鼠标右键单击,选择快捷菜单中的“添加”命令,打开“添加表或视图”对话框,依次将要使用的表或视图添加到数据环境中。,(4)如果在数据库中存在表或视图之间的联系,该联系自动添加到数据环境中,也可以在数据环境中建立表或视图之间的联系。,(5)在“数据环境设计器”中,将字段拖动到报表设计器窗口中(一般是“细节”带区)。,(6)修改报表布局,完成报表设计。,9.2.3 报表的数据源和报表的布局,11,2报表的布局,报表布局的设计主要包括以下几方面内容:,(1)添加或减少带区。,在报表设计器打开的情况下,选择“报表”菜单中的相关命令可以添加或删除带区。,(2)调整带区的空间。,将鼠标左键拖动带区即可改变带区空间的大小,在调整带区的大小时执行“预览”命令能看到明显的效果。,(3)添加或删除控件。,使用“报表控件”工具栏可以方便地添加报表控件,需要经常添加的控件是标签控件和域控件。选中控件后,按键盘上的Del键可以删除控件。,(4)设置控件的格式。,控件的大小或对齐效果通过“布局”工具栏可以实现,通过格式菜单下的字体命令设置控件上的文字字体、字型、大小等。,2报表的布局,12,3使用报表设计器创建报表的实例,例9-3,使用报表设计器建立报表report_student.frx,如图9-12所示。其中,报表的数据来自成绩管理数据库中的“学生”表,报表标题由标签控件实现,报表日期由域控件实现,横线由线条控件实现,合理设置页面布局。,图9-12 例9-3的预览效果,3使用报表设计器创建报表的实例 图9-12 例9-3的预,13,9.3 数据分组报表,报表中的数据分组类似于Excel中的分类汇总,数据分组使数据表中的数据在报表中分组显示,通过分组可以明显地分隔每组记录,并在各组之间添加总结性数据。和Excel分类汇总类似,数据分组前需要先按表达式进行排序或索引。,9.3.1 设计数据分组报表,1设置报表的记录顺序,报表的数据源一般来自于表、视图和查询,为了使数据源适合于分组处理记录,必须对数据源进行适当的排序或索引。视图和查询一般在建立时进行排序,使其满足分组的条件。,在对数据表分组时,一般在表设计器中建立索引,一个表可以有多个索引,在将表添加到报表的数据环境之前应当设置当前索引,设置的方法可以在命令窗口在执行 SET ORDER TO 命令。,9.3 数据分组报表 报表中的数据分组类似于Ex,14,在数据环境设计器中也可以设置当前索引,设置方法是:,(1)打开数据环境设计器。,(2)在“数据环境设计器”中右击鼠标,从快捷菜单中选择“属性”,打开属性窗口。,(3)在属性窗口中选择对象“Cursor1”。,(4)在“Cursor1”的属性列表中选定“Order”属性,在属性值的索引列表中选择一个索引,如图9-16所示,该索引被设置为当前索引。,图9-16 数据源属性窗口,在数据环境设计器中也可以设置当前索引,设置方法是:图9-1,15,2添加分组表达式,在报表设计器打开的情况下,执行菜单命令报表数据分组,打开“数据分组”对话框,在“分组表达式”列表中可以添加一个或多个分组表达式,如图9-17所示。,图9-17 “数据分组”对话框,2添加分组表达式 图9-17 “数据分组”对话框,16,3编辑“组标头”和“组注脚“带区,添加分组表达式之后,报表布局中增加了“组标头”和“组注脚”带区,但此时这两个带区中无任何信息,需要向“组标头”和“组注脚”带区添加控件,以增加报表的可读性。一般的,“组标头”带区包含分组字段的域控件,“组注脚”通常包含组的统计和总结性信息。,4分组报表示例,例9-4 利用报表设计器建立学生信息报表report3.frx,如图9-18所示。其中,报表的数据源来自于成绩管理数据库中的“学生”表,报表按照“性别”分组,并计算每组的助学金最大值以及所有学生助学金的最大值。,3编辑“组标头”和“组注脚“带区,17,图9-18 分组报表预览结果,图9-18 分组报表预览结果,18,9.3.2 报表的输出,1页面设置,在Visual FoxPro主窗口中执行菜单命令文件页面设置,在页面设置对话框中设置页边距、纸张大小、打印方向等。,2预览报表,在Visual FoxPro主窗口中执行菜单命令文件打印预览或者单击工具栏上的“打印预览”按钮,可以进入预览窗口。,3打印报表,在Visual FoxPro主窗口中执行菜单命令文件打印,系统将弹出“打印”对话框,在打印对话框内可以设置各项打印参数,完成报表的打印功能。,单击工具栏上的“运行”按钮,也可以打印报表,这种方法不能设置打印参数。在命令窗口中输入命令:,REPORT FORM PREVIEW,可以打印或预览指定的报表。,9.3.2 报表的输出,19,本章小结,本章介绍了在Visual FoxPro中创建报表的方法,主要包括利用向导生成报表、快速创建报表和用报表设计器设计满足用户需求的各种形式的报表。,报表的创建过程一般是先利用报表向导或快速报表生成一个满足基本数据或信息要求的报表,然后利用报表设计器对生成的报表进行修改,以满足用户的各种实际需要。,报表主要包括两部分内容,数据源和布局。报表的数据源通常是数据库表或自由表,也可以是查询、视图或临时表。,在利用报表设计器修改报表时,报表工具栏提供了常用的工具,主要有报表标签、域控件、图片ActiveX绑定控件等。,在设计报表布局时,涉及到标题带区、页标头带区、细节带区、页注脚带区等;,可以设计数据分组报表和分栏报表。,报表文件的扩展名是.frx,其中存储的是报表格式的定义,报表运行时动态从数据表中提取数据并形成格式化的报表。报表一般通过打印输出,也可以通过屏幕进行预览。,本章完成了学生管理系统中报表的设计工作,实现了数据库应用系统的格式化输出,下一章完成整个应用系统的开发工作。,本章小结 本章介绍了在Visual FoxPro中创,20,
展开阅读全文