6教学指南及上机指导第6章.docx
- 文档编号:28721318
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:18
- 大小:290.28KB
6教学指南及上机指导第6章.docx
《6教学指南及上机指导第6章.docx》由会员分享,可在线阅读,更多相关《6教学指南及上机指导第6章.docx(18页珍藏版)》请在冰豆网上搜索。
6教学指南及上机指导第6章
第6章报表设计
(一)教学提要
1.掌握使用向导创建报表的方法
2.掌握使用报表设计器创建报表的方法
(二)课程内容
1.报表设计主要包括两个基本部分:
数据源和布局。
数据源通常是数据库表或自由表,也可以是视图或临时表;报表布局则定义了报表的格式。
报表中的记录既可以是数据表中的全部记录,也可以是数据表的部分记录;既可以是数据表的全部字段,也可以是数据表的部分字段。
在定义了一个表文件、一个视图或查询文件后,便可以创建报表。
设计报表文件一般分为4个基本步骤:
①确定要创建的报表类型;
②创建报表所需的数据源;
③修改和设计布局文件;
④预览和打印报表。
报表的总体布局大体可分为列报式、行报式、一对多报表、多栏报表、标签5大类。
在设计报表时,一般可以从这5类总体布局中找到合适的一款来使用。
VisualFoxPro6.0提供了3种创建报表的方法:
使用报表向导创建报表、使用快速报表创建简单的报表和使用报表设计器创建报表。
报表向导提供一系列的操作步骤,提示用户指定创建报表所用的表和字段,并根据用户的要求,自动地为用户创建多种样式的报表。
VisualFoxPro6.0为用户提供了两种类型的报表向导:
①报表向导;
②一对多报表向导。
在报表向导分组记录的“总结选项”中,允许用户用下面的计算类型来处理数值型字段。
①求和:
指定数值型字段值的总和。
②平均值:
指定数值型字段的平均值。
③计数:
在指定的字段中,包含非零值的记录个数。
④最小值:
指定数值型字段中的最小值。
⑤最大值:
指定数值型字段中的最大值。
报表文件的扩展名为.frx,它存储报表的详细说明。
每个报表文件还包括一个相关的.frt文件。
报表文体不存储每个字段的值,只存储一个特定报表的位置和格式信息。
每次运行报表文件,报表结果可能都不同,这取决于报表文件所用数据源的字段是否已被更新。
2.
(1)快速报表
快速报表可以自动为用户创建一个简单的报表布局,并不要求用户知道报表设计器的工作方式。
在创建报表后,用户可以对它的组成部分进行修改,定制满足自己需要的报表。
快速报表只能基于单一的表或视图创建报表,而且无法建立复杂的布局,对通用型字段的内容也无法显示。
(2)报表设计器
报表设计器是VisualFoxPro6.0提供的一种报表设计工具,它具有更灵活、更强大的设计功能。
用户使用它不但可以从空白报表开始设计出图文并茂、美观大方的报表,还可以在报表向导和快速创建的简单报表基础上进行修改和完善。
使用报表设计器创建报表时,一般要进行如下7个步骤的操作。
1)打开报表设计器。
“报表设计器”窗口默认有3个带区:
页标头、细节和页注脚。
在此基础上可以进行扩展,添加标题/总结带区,如果报表页面列数大于1时,还会增加列标头和列注脚两个带区。
在进行报表设计时,要了解各个带区的区别。
2)设置报表数据源,也就是设置报表数据环境。
报表中的数据环境有以下功能:
①在打开或运行报表时,打开报表使用的表或视图文件;
②用表或视图中的数据来填充报表需要的数据组;
③在关闭或释放报表时,关闭表或视图文件。
报表与表和视图不同的是,报表本身不能排序记录,它只能按照表或视图中排列的方式进行显示和打印。
因此,在创建报表时,如果要设置报表中记录出现的顺序,就必须使用一个表或视图的索引来指定排序次序。
如果表或视图中没有所需的索引,就必须在一个表或视图中建立索引来指定排序次序,也可以在数据环境中设置索引。
报表数据环境设计器的使用方法与创建表单时数据环境设计器的使用方法相同。
3)添加报表控件。
在报表或控件布局中,可以添加标签、域控件、线条控件、矩形、圆角矩形和图片/ActiveX绑定6种类型的控件。
对于标签控件,可以设置其字型、字号、文本的前景色和背景色等。
域控件表示用于设置表中字段、变量和计算结果,在报表布局中使用域控件来代替字段值、内存变量或计算值。
域控件的数据类型可以是字符型、数值型或日期型等。
在报表中添加的图片文件可以是.bmp或.jpg等格式的文件,只能静态显示,不会随记录的变化而改变。
如果希望图片随记录的不同而变化,应该在图片/ActiveX绑定控件中使用表的通用型字段。
4)数据分组。
对记录进行分组,便于阅读报表,如果数据源是表,记录的顺序可能不适合分组,必须对数据表进行适当的排序。
通过给表设置索引,或者在数据环境中使用视图作为数据源,对数据记录进行重新排列后,然后才能在报表中应用数据分组。
5)设置报表页面,主要包括以下几个方面:
①设置页面边界和纸张尺寸与方向;
②定义多列报表;
③定义页面标头和注脚;
④定义细节带区;
⑤添加标题区和总结区。
6)调整报表布局。
主要包括调整报表布局中控件的大小、位置,调整各控件之间的对齐方式等。
7)设置打印报表。
主要包括选择打印机、运行要打印的报表文件、设置打印记录的范围和条件等。
(三)教学要求
本章也是一个重点内容,涉及到数据表内容的浏览及输出,重点讲解数据环境添加及使用、报表控件的添加及使用、报表布局的设计,同时注意在程序设计时用命令预览、打印报表的方法。
(四)实验指导
实习1使用向导创建报表
跟我做
∙使用报表向导创建单个表的报表。
∙使用报表向导创建多个表的报表。
分别打开“图书”表、“读者”表和“借阅”表,浏览其中的记录,分别如图6.1、图6.2和图6.3所示,为创建报表准备好数据库表。
图6.1“图书”表中的记录
图6.2“读者”表中的记录
图6.3“借阅”表中的记录
实例1使用报表向导创建一个基于“读者”表的报表,如图6.4所示,报表中包含“读者”表中的全部字段,要求按“性别”字段分组,并按“性别”进行细节总结。
操作步骤:
①打开“图书管理”项目文件,利用报表向导创建报表。
在“向导选取”对话框中选择“报表向导”选项。
②选取“读者”表中的全部字段。
③按“性别”分组记录。
④在“选项总结”对话框中,按“出生日期”字段计算最小值。
图6.4使用向导创建的报表
⑤选择报表样式:
账务式。
⑥定义报表布局:
列布局,方向选择“纵向”。
⑦排序记录:
按“借书证号”升序排序。
⑧键入报表标题“读者信息”,然后预览创建的报表,并以文件名“读者1.frx”保存该报表。
想一想
如果选取“带区式”报表样式,结果如何?
实例2使用报表向导创建一个一对多报表,如图6.5所示。
父表为“读者”表,选取“借书证号”和“姓名”两个字段,子表为“借阅”表,选取其全部字段。
图6.5使用报表向导创建的一对多报表
操作步骤:
①打开“向导选取”对话框,选择“一对多报表向导”,选择父表——“读者”表,并选取“借书证号”和“姓名”两个字段。
②从子表——“借阅”表中选取其全部字段。
③以“借书证号”字段为关键字确立“读者”表和“借阅”表的关系。
④按“借书证号”字段升序排序输出。
⑤选择“带区式”报表样式。
⑥定义报表布局“横向”输出。
⑦预览创建的报表,并以文件名“读者2.frx”保存该报表。
想一想
在使用报表向导创建报表时,如果要将多个(至少3个)具有关联关系表的字段值创建在一个报表中,应如何操作?
练一练
1.填空题
(1)创建报表使用的数据源是、或。
(2)报表的总体布局可以分为、、、和标签5大类。
(3)使用报表向导创建报表时,报表向导提供的报表样式有、、、和
5种。
2.选择题
(1)在使用报表向导创建报表时,最多可以设置的分组层数是()。
A.2B.3C.4D.5
(2)在使用报表向导创建报表时,下列不是总结选项的一组是()。
A.最小值、最大值B.计数、最小值
C.标准差、求和D.求和、平均值
(3)在使用报表向导创建一对多报表时,关于设置排序方式正确的说法是()。
A.只能从父表中设置排序字段B.可以从父表或子表中设置排序字段
C.必须设置排序字段,否则无法继续进行D.只能设置字段排序,不能设置索引标识排序
动手做
1.以“图书”表为基表,使用报表向导,创建一个报表,要求按“版次”字段进行分组,并分别计算单价的最大值、最小值和平均值。
2.先创建一个基于“图书”表和“借阅”表(“图书ID”为关键字段)的视图,再以该视图为数据源利用报表向导创建报表。
3.以“图书”表为父表,“借阅”表为子表,利用报表向导创建一个一对多报表。
4.将实例2修改为以“借阅”表为父表,“读者”表为子表,使用一对多报表向导创建报表。
5.利用报表向导创建一个报表,报表数据取自“图书”表、“读者”表和“借阅”表。
(提示:
先将其中的两个表建立视图,再使该视图与第3个表建立一个新的视图,最后以新建的视图为数据源创建报表。
)
实习2使用报表设计器创建报表
跟我做
∙能快速创建简单的报表。
∙能使用报表设计器创建较复杂的报表。
实例1预览上节实例1使用报表向导创建的“读者1.frx”报表,再使用报表设计器打开该报表文件,观察报表各控件布局结构。
操作步骤:
①预览报表文件“读者1.frx”,结果如图6.7所示。
②启动报表设计器,报表布局如图6.8所示。
想一想
对照预览结果和“报表设计器”窗口中的报表布局,对下面内容进行对比分析。
①该报表设计所使用的带区,各带区所包含的内容。
②标题带区中的日期函数的表示方法。
③ALLTRIM()函数的含义。
④[计算最小值]+ALLT(性别)+[:
]的含义及输出格式。
⑤总结、组注脚1和细节带区中的“出生日期”域控件所完成的计算有何区别?
(提示:
在“报表设计器”窗口中右击要查看的对象,再选择快捷选单中的“属性”选项,在弹出的“报表表达式”对话框中进行分析。
)
熟悉“报表设计器”窗口的布局及其含义,就可以使用报表设计器设计报表了。
图6.7利用向导创建的“读者1”报表
图6.8“读者1”报表文件的结构布局
实例2使用报表设计器创建一个基于“图书”表的统计报表,如图6.9所示。
分析:
在该报表中标题带区为标签“图书统计报表”,报表选取了“图书”表中的“图书ID”、“书名”、“单价”、“出版社ID”、“版次”、“出版日期”和“备注”7个字段,分别设置页标头及对应细节带区中的6个域控件。
在总结带区栏添加了“平均单价”项,用来统计图书的平均单价。
图6.9“图书1”统计报表
操作步骤:
①新建报表。
启动报表设计器,打开一个空白报表。
②在“报表设计器”窗口中添加“标题带区”和“总结带区”。
③打开“报表控件”工具栏,选中标签控件,把光标定位在标题带区,输入“图书统计报表”,同时用“格式”选单中的“字体”进行修饰,选取三号黑体字。
在页标头带区分别添加标签控件:
“图书ID”、“书名”、“单价”、“出版社ID”、“版次”、“出版日期”和“备注”,调整好各控件的间距,使同一带区各控件对齐、上下不同带区各控件对齐。
再用线条控件添加表格线,选取“格式”选单栏“绘图笔”中的2磅粗线。
为了设置各控件的对齐方式,除了选择“格式”选单中的“对齐”选项外,在调整过程中可以通过预览方式,查看各控件的位置,通过键盘方向键进行微调。
④打开数据环境设计器,添加“图书”表。
从“报表控件”工具栏中插入“域控件”,在打开的“报表表达式”对话框的“字段”列表框中,列出了已添加到数据环境中“图书”表的各个字段,分别选取其中的“图书ID”、“书名”、“单价”、“出版社ID”、“版次”、“出版日期”和“备注”字段。
添加表格线,调整各控件的间距,使同一带区各控件对齐、上下不同带区各控件对齐。
⑤在总结带区添加“平均单价”标签控件;添加“单价”域控件,在“计算字段”对话框中选择“平均值”选项。
⑥对报表进行整体修饰。
表格外边框用2磅线,其他部分用1磅线,再分别添加日期时间DATETIME()域控件。
⑦报表设计结果如图6.10所示,并以文件名“图书1.frx”保存该报表布局。
预览上述设计的报表,观察运行结果。
图6.10“图书1”统计报表的布局
想一想
①在添加字段域控件时,除了使用“报表控件”工具栏外,如何从数据环境设计器中直接添加?
②如何设置报表域控件的输出格式?
实例3从上述设计的报表中可以看出,备注型字段内容没有全部显示出来,而是截去了一部分。
修改该报表文件,显示全部备注内容,并在标题带区添加一个图标,修改后的结果如图6.11所示。
图6.11修改后的“图书1”统计报表
操作步骤:
①在“报表设计器“窗口打开上例所创建“图书1.frx”报表文件。
②调整细节带区的宽度,将表格中各栏竖线加长,横线下移。
移动表格线时,选中竖线,鼠标指向竖线下面控点,向下拖动鼠标,使竖线加长至适中。
③将“备注”字段拖成几行。
将鼠标指向“备注”字段下边中部控点,按住左键不放,向下拖动鼠标指针,这里拖动成4行。
④将页标头带区中的“出版日期”标签修改为“封面”,再删除细节带区中的“出版日期”域控件,添加OLE绑定控件,绑定“图书”表中的“封面”字段,其属性设置为“缩放图片,填充图文框”。
⑤在标题带区中添加一个图片,设置其属性为“缩放图片,填充图文框”。
⑥修改后的报表设计布局如图6.12所示,并以文件名“图书2.frx”保存该报表。
图6.12“图书2”统计报表的布局
想一想
①设计报表时,如何选择并同时移动多个控件?
②如何手动调整控件大小和移动其位置?
③设置报表控件有哪几种对齐方式?
实例4创建一个“出版社”表,其中的记录如图6.13所示,并与“图书”表按“出版社ID”字段建立一对多关联。
修改上述创建的“图书2”报表,按“出版社ID”分组。
修改后的报表如图6.14所示。
图6.13“出版社”表
操作步骤:
①在“报表设计器”窗口中打开“图书2”报表。
②打开数据环境设计器,添加“出版社”表,并使“出版社”表和“图书”表以“出版社ID”字段建立一对多关联。
③单击“报表”选单中的“数据分组”,按“出版社.出版社ID”进行分组,其分组表达式为“出版社ID”。
④将页标头中的标签及线条控件移到组标头带区中,然后添加“出版社ID:
”和“出版社名称:
”标签控件及其对应的域控件“出版社.出版社ID”和“出版社.出版社名称”。
图6.14“图书3”统计报表
⑤在组注脚带区中添加“册数:
”标签控件,域控件“图书.出版社ID”,在“计算字段”对话框中设置“计数”。
修改后的报表布局如图6.15所示,以文件名“图书3.frx”保存该报表。
图6.15“图书3”统计报表的布局
对比图6.12与图6.15,两个报表的布局有什么不同?
练一练
1.填空题
(1)在设计报表时,如果没有显示“报表控件”工具栏,可以选择“显示”选单中的选项,启动“报表控件”工具栏。
(2)“图片/ActiveX绑定控件”用于显示或的内容。
(3)多栏报表的栏目数可以通过来设置。
(4)在“页面设置”的“列”选项组中,可以设置报表的、和。
(5)在设置报表添加域控件时,可以从添加,也可以从添加。
2.选择题
(1)在整个报表布局中,只打印一次的是()。
A.标题B.页标头C.列标头D.组标头
(2)要设置控件的前景色和背景色,可以使用()。
A.“报表控件”工具栏B.“布局”工具栏C.“调色板”工具栏D.“报表预览”工具栏
(3)在“报表表达式”对话框中可以设置()。
A.格式、域控件位置、标题B.格式、域控件位置、表达式
C.表达式、域控件位置、组标头D.域控件位置、备注、列标头
动手做
1.使用快速报表,创建一个基于“图书”表的报表,选择“行布局”方式。
2.先将“出版社”表和“图书”表按“出版社ID”建立关联,创建一个视图,如图6.16所示,再利用该视图设计一个布局如图6.17所示的报表。
图6.16“TS4”视图
图6.17以“TS4”视图为数据源设计的报表布局
3.使用报表设计器创建一个报表布局如图6.18所示的报表,该报表中的数据来自“读者”表。
4.使用报表设计器设计一个布局如图6.19所示的报表,其中报表细节中的“借书证号”和“姓名”域控件取自“读者”表,“图书ID”、“出版社ID”、“版次”和“书名”取自“图书”表,“借书日期”和“还书日期”取自“借阅”表,报表预览结果如图6.20所示。
图6.18“读者3”报表的布局
图6.19“读者4”统计报表的布局
图6.20“读者4”统计报表
提示:
①使用视图向导创建一个视图“a”,将“借阅”表和“图书”表按“图书ID”字段建立连接,该视图选取报表所需的字段或全部字段。
②再使用视图向导创建一个视图“b”,将“读者”表和视图“a”按“借书证号”字段建立连接,该视图选取报表所需的字段或全部字段。
③以视图“b”为数据源,使用报表设计器创建报表。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学 指南 上机 指导
![提示](https://static.bdocx.com/images/bang_tan.gif)