好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

access数据库报表设计方法.ppt

57页
  • 卖家[上传人]:夏**
  • 文档编号:591866215
  • 上传时间:2024-09-18
  • 文档格式:PPT
  • 文档大小:1.06MB
  • / 57 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第8章 Access报表设计方法Ø学习Access报表对象的组成结构Ø学习使用向导建立Access报表的方法Ø学习报表设计视图中可以完成的各种设计操作Ø掌握各个主要的报表控件的作用及其设计Ø学习建立“教材征订管理信息系统”数据库中的Access报表对象 8.1 Access报表对象概述§Access报表对象是Access数据库中的一个二级容器对象,其间应包含若干数据源和其他一些对象包含在报表对象中的这些对象也称为报表控件,而设计一个Access报表对象也就是在报表容器中合理地设计各个报表控件,以实现数据库应用系统对输出报表的具体需求 8.1.1 Access报表对象的作用§使用报表对象,我们可以得到符合规范的各种表格形式,既可以用于显示也可以用于打印§报表中的大部分数据都是从基表、查询或SQL语句中获得的,它们是报表对象的数据源§例如在“教材征订管理信息系统”数据库中,需要为意欲参加竞标的供书商打印“教材预订数据报表”这个报表对象中的数据应该来源于“教材预订表”,而“教材预订表”中的数据记录是操作员通过“教材预订信息编辑”窗体输入的因此,可以将“教材预订数据报表”的驱动,设计在“教材预订信息编辑”窗体上,即在“教材预订信息编辑”窗体中设计一个命令按钮控件,用于打开“教材预订数据报表”。

      8.1.1 Access报表对象的作用§从以上举例可以看到,一个Access报表对象的驱动都可以通过在对应的Access窗体对象上安置合适的命令按钮,并编写相应的VBA程序来实现同时,这个驱动报表对象的窗体对象,还应该具有为被驱动的报表对象提供数据准备的功能§先来看看“教材预订信息编辑”窗体驱动“教材预订数据报表”的示例为此,需要在“教材预订信息编辑”窗体中设置一个命令按钮“ ”,令其响应单击事件的处理程序为: 8.1.1 Access报表对象的作用§ Private Sub Command40_Click() On Error GoTo Err_Command40_Click Dim stDocName As String stDocName = "教材预订数据报表" DoCmd.OpenReport stDocName, acPreview Exit_Command40_Click: Exit Sub Err_Command40_Click: MsgBox Err.Description Resume Exit_Command40_Click End Sub如此,单击“教材预订信息编辑”窗体上的“预览教材预订数据报表”命令按钮“ ”,即可预览显示“教材预订数据报表”,如图8-1-1所示。

      8.1.1 Access报表对象的作用图8-1-1 “教材预订数据报表”预览视图 8.1.2 Access报表对象的结构§Access报表对象的结构与窗体对象的结构非常相似,也是由五个节构成它们分别是:“报表页眉”节、“页面页眉”节、“主体”节、“页面页脚”节和“报表页脚”节图8-1-2所示即为“教材预订数据报表”的设计视图,从图中可以看到一般报表结构所具有的五个节图8-1-2 “教材预订数据报表”设计视图 8.1.3 Access报表对象的数据源§一般情况下,一个报表的数据源都是基于一个查询或一条SQL语句的可以有两种方法来为报表对象设定数据源第一种方法是在创建数据表对象之前,先行创建一个查询对象,然后在创建报表对象时指定该查询对象为其数据源第二种方法是在报表对象设计窗口中,对其“记录来源”属性设计一条SQL语句§例如上述“教材预订数据报表”的数据源是一个已经创建完成的“教材预订表”,就可以采用第一种方法为其指定数据源图8-1-3所示即为“教材预订数据报表”的数据源设定 8.1.3 Access报表对象的数据源图8-1-3 “教材预订数据报表”的数据源设定§如果一个报表对象的数据源无法由一个数据表对象、一个查询对象或一条SQL语句指定,则称此报表是一个源于多重数据集的报表对象。

      在这样的情况下,必须在报表对象中设计子报表,如同在窗体对象中设计子窗体一样 8.2 Access报表向导§Access提供的向导总是可以使得创建数据库对象的操作更加便捷因此,使用Access报表向导创建报表对象,然后再进入报表设计视图对之进行细致的设计,可以提高报表对象设计的工作效率 8.2.1 创建二维报表§现以“教材征订管理信息系统”数据库中的“教材预订数据报表”的创建为例,介绍使用Access报表向导创建二维报表对象的方法§打开“教材征订管理信息系统”数据库,在数据库设计视图中的报表对象选项卡上,单击“新建”按钮“ ”在随即弹出的“新建报表”对话框中选择“报表向导”选项,并在“数据来源”列表框中选定“教材预订数据报表”数据源“教材预订表”,然后单击“确定”按钮“ ”如图8-2-1所示 8.2.1 创建二维报表图8-2-1 在“新建报表”对话框中选定“报表向导” 8.2.1 创建二维报表§使用报表向导创建二维报表对象的操作过程总共包含六个操作步骤§1.为报表对象设定数据源及其字段 在如图8-2-2所示的“报表向导”对话框1中,从其左上部的下拉式列表框中选择一个数据表或一个查询作为创建报表的数据源。

      接下来,须从选定的数据源中为报表对象逐一选定所需数据字段,如图8-2-2所示设定数据源,并选定所需字段的操作完成后,可以单击“下一步”按钮,即进入报表向导操作的第二步骤 8.2.1 创建二维报表图8-2-2 “报表向导”对话框1 8.2.1 创建二维报表§2.为报表选定分组字段 在如图8-2-3所示的“报表向导”对话框2中,若选定报表分组字段,Access将在创建完成的报表中依据所指定的分组字段进行分组计算 对于“教材预订数据报表”,并不需要进行分组计算因此,不需选择分组字段,可单击“下一步”按钮,直接进入报表向导操作的第三步骤 8.2.1 创建二维报表图8-2-3 “报表向导”对话框2 8.2.1 创建二维报表§3.确定报表记录的打印显示顺序§在如图8-2-4所示的“报表向导”对话框3中,可以设定报表记录的打印显示顺序在需要的情况下, 可以指定报表数据的排列顺序§对于“教材预订数据报表”,只是要求“课堂编号”字段数据按照升序排列,而这也正是报表数据源“教材预订表”所设定的数据排列顺序因此,可以直接单击“下一步”按钮,进入报表向导操作的第四步骤 8.2.1 创建二维报表图8-2-4 “报表向导”对话框3 8.2.1 创建二维报表§4.初步设定报表格式§在如图8-2-5所示的“报表向导”对话框4中,可以为所建报表对象设定基本格式。

      §对于“教材预订数据报表”,此处应该选择“表格”布局同时,由于“教材预订数据报表”具有较多的字段,需要横向打印,所以在如图8-2-5所示的“报表向导”对话框4中,应该选择以“横向”方式打印显示选定完毕,单击“下一步”按钮,即进入报表向导操作的第五步骤 8.2.1 创建二维报表图8-2-5 “报表向导”对话框4 8.2.1 创建二维报表§5.为所建报表对象设定报表样式§在如图8-2-6所示的“报表向导”对话框5中,可以为所建报表设定报表样式所谓设定报表样式包括,报表中文字与数字字体、字型与字号的选择与搭配方式设置、报表标题与报表表体的相互位置设置、报表背景色彩与图案的设置等项内容§对于“教材预订数据报表”,可以选择“组织”样式然后单击“下一步”按钮,即进入报表向导操作的第六步骤 8.2.1 创建二维报表图8-2-6 “报表向导”对话框5 8.2.1 创建二维报表§6.指定报表标题§在如图8-2-7所示“报表向导”对话框6上部的文本框中,可以输入所需要的报表标题,此处指定的报表标题同时也是该报表对象的名称§在“报表向导”对话框6中,单击“完成”按钮后,如果预先选定“修改报表设计”单选框,则进入报表设计视图,如图8-2-8所示。

      如果预先选定“预览报表”单选框,则进入报表视图,如图8-1-1所示§对于“教材预订数据报表”,报表标题输入为“教材预订数据报表”,并选定“修改报表设计”单选框单击“完成”按钮,即进入报表设计视图如图8-2-8所示 8.2.1 创建二维报表图8-2-7 “报表向导”对话框6 8.2.1 创建二维报表图8-2-8 使用报表向导初创的“教材预订数据报表” 8.2.2 创建标签报表§所谓标签报表,指的是在一张报表中包含若干个相互独立的数据单元,每一个数据单元的结构相同,而数据不同这每一个数据单元即可视为标签例如,在“教材征订管理信息系统”数据库中,如果我们需要向某一个供书商单独发出供书竞标邀请,即可以考虑将每一个教材的竞标邀请设计为一个个Access标签,打印在一张报表中,从而构成一个Access标签报表对象§根据这样的需求,可以在“教材征订管理信息系统”数据库中设计一个名为“教材预订数据标签”报表对象,其预览视图如图8-2-9所示 8.2.2 创建标签报表图8-2-9 “教材预订数据标签”报表预览视图 8.2.2 创建标签报表§打开“教材征订管理信息系统”数据库,在数据库设计视图中的报表对象选项卡上,单击“新建”按钮。

      在随即弹出的“新建报表”对话框中选择“标签向导”选项,并在“数据来源”列表框中选定“教材预订数据标签”数据源“教材预订表”,然后单击“确定”按钮如图8-2-10所示图8-2-10 在“新建报表”对话框中选定“标签向导” 8.2.2 创建标签报表§随之,即进入标签向导的操作过程使用标签向导创建标签报表对象的操作过程总共包含六个操作步骤§1.为标签报表对象设定标签尺寸§在如图8-2-11所示的“标签向导”对话框1中,应该为标签报表对象设定标签尺寸为了达到如图8-2-9所示的“教材预订数据标签”报表对象形式,应该选定“Avery”提供的“C2166”型标签,其尺寸为52毫米高、70毫米宽,每一行打印2个标签§设定标签尺寸后,可以单击“下一步”按钮,即进入标签向导操作的第二步骤 8.2.2 创建标签报表图8-2-11 “标签向导”对话框1 8.2.2 创建标签报表§2.为标签设定文本字体与颜色§在如图8-2-12所示的“标签向导”对话框2中,应该为标签设定文本字体与颜色为了达到如图8-2-9所示的“教材预订数据标签”报表对象形式,应该设置字体为“宋体”、字号为9号、字体粗细为“细”、文本颜色为“黑色”,且文字无倾斜、无下划线。

      各项参数选定如图8-2-12所示§完成上述设置后,可单击“下一步”按钮,进入标签向导操作的第三步骤 8.2.2 创建标签报表图8-2-12 “标签向导”对话框2 8.2.2 创建标签报表§3.确定标签的显示内容§在如图8-2-13所示的“标签向导”对话框3中,可以设定标签的显示内容为了实现如图8-2-9所示的“教材预订数据标签”报表对象设计,可以参考如图8-2-13所示内容填写“原型标签”文本框内的文字 §填写完毕期望在标签中显示的内容,即可单击“下一步”按钮,进入标签向导操作的第四步骤如图8-2-14所示 8.2.2 创建标签报表图8-2-13 “标签向导”对话框3 8.2.2 创建标签报表§4.设定标签报表各标签的显示顺序§在如图8-2-14所示的“标签向导”对话框4中,可以设定标签报表各标签的显示顺序对于“教材预订数据标签”报表对象,此处可以选定“课堂编号”字段作为“排序依据”字段,如图8-2-14所示 §设定完毕标签报表各标签的显示顺序,可以单击“下一步”按钮,即进入标签向导操作的第五步骤 8.2.2 创建标签报表图8-2-14 “标签向导”对话框4 8.2.2 创建标签报表§5.为标签报表对象设定名称§图8-2-15所示的“标签向导”对话框5是Access标签向导的最后一步操作,在这一步操作中应该为标签报表对象设定报表名称。

      完成以后,应该单击“标签向导”对话框5中的“完成”按钮,进入标签报表预览视图,或者进入标签报表设计视图这将取决于在“标签向导”对话框5中是选定了“插卡标签的打印预览”单选项还是选定了“修改标签设计”单选项§对于“教材预订数据标签”报表对象,我们希望看到其设计视图,因此选定“修改标签设计”单选项如图8-2-15所示然后单击“标签向导”对话框5中的“完成”按钮,即进入“教材预订数据标签”报表设计视图,如图8-2-16所示 8.2.2 创建标签报表图8-2-15 “标签向导”对话框5 8.2.2 创建标签报表§观察图8-2-16所示“教材预订数据标签”报表设计视图,可以看到还可以在报表设计视图中修改“教材预订数据标签”报表的各项设计参数,这将在下一节中再作介绍图8-2-16 使用标签向导初创的“教材预订数据标签”报表设计视图 8.3 Access报表设计视图§虽然利用报表向导可以快捷地完成各类报表对象的创建操作,但是如上所述,使用向导创建的报表往往难以满足我们对报表对象的最终要求为了实现任一个报表对象的最终设计,都只有启动报表设计视图,利用报表设计视图提供的各种报表设计工具来完成报表对象的各项功能设计。

      在报表设计视图中,我们不仅可以直接创建报表对象,也可以在其中修改已有的报表对象因此,必须全面地了解报表设计视图的组成,各种工具的使用方法以及报表属性的设置方法,方能最终完成一个报表对象全面设计 8.3.1 Access报表设计视图工具栏§在数据库设计视图中的报表对象卡上选中一个报表对象,单击“设计”按钮“    ”,即进入报表设计视图报表设计视图工具栏如图8-3-1所示图8-3-1 Access报表设计视图中的工具栏 8.3.1 Access报表设计视图工具栏§在图8-3-1所示报表设计视图中的工具栏中,第一行是报表设计视图常用工具栏,第二行是报表控件设计工具箱§请将这个工具栏与第6.3节中介绍的窗体设计视图中的工具栏做一个比较,可以看到它们完全是一样的,且其各个工具按钮的功能也是相同的§报表控件设计工具箱中的很多控件都具有类似的特征,必须很好地掌握这些特征,才能设计出合乎要求的报表对象 8.3.2 Access报表对象基本属性§在报表设计视图中,单击常用工具栏上的“属性”按钮“   ”,或单击菜单栏上的【视图】|【属性】命令,即弹出报表属性设置对话框图8-3-2所示为“图书借阅数据分析报表”对象的属性对话框及其各属性的取值。

      §一个报表对象及其置于其中的一个报表控件的属性可以分为四类,分别是“格式”属性、“数据”属性、“事件”属性和“其他”属性,并在属性对话框中分列于四张选项卡上单击某一张选项卡,即可对相应属性赋值或选取属性值欲对报表对象中的某一控件设置属性值,应该首先选中这个控件,然后在相应的属性选项卡上选择对应的属性项目进行设定属性值的操作 8.3.2 Access报表对象基本属性图8-3-2 报表的格式属性与数据属性 请对照下面关于各属性取值的说明,分析“教材预订数据报  表”各属性设定值的作用 8.4 Access报表基本控件§Access报表是一个容器对象,其间可以包含其他对象例如,报表的数据源就是报表中包含的数据表或查选对象又如,报表中的子报表就是报表中包含的报表对象报表中包含的对象也称为报表控件§设计报表就必须很好地掌握报表控件的设计方法,而报表控件设计主要包括报表控件属性的设置及其应用方法的选择与编程§各个控件都有一个相同的属性:“名称”,它是VBA程序中指定该控件的标识符§本节主要介绍各个报表控件除“名称”属性以外的各个属性值的含义、取值规则及其属性值的设置方法 8.4.1 报表标签(Label)§1.报表标签控件的应用§当需要在报表上显示一些说明性文字信息时,就应该使用“标签”控件。

      §2.报表标签控件的属性§没有数据属性也不存在事件属性格式属性比较复杂,主要包括: (1)标题 (2)背景颜色、前景颜色 (3)特殊效果 (4)字体名称、字体大小、字体粗细、斜体 8.4.2 报表文本框(Text)§1.报表文本框控件的应用§报表文本框控件用于显示或打印指定数据文本框控件的数据来源可以是“结合”、“非结合”或“计算型”共三种结合型”文本框控件与基表或查询中的字段相连,可用于显示数据源字段中的数据计算型”文本框控件则以表达式作为数据来源,这个表达式可以使用窗体或报表的数据源表或数据源查询字段中的数据,或者窗体或报表上其他控件中的数据非结合”型文本框控件则没有数据来源使用“非结合”型文本框控件的目的是用于显示信息、线条、矩形及图像,相当于报表标签控件的作用 8.4.2 报表文本框(Text)§2.报表文本框控件的属性§报表文本框的格式属性与报表标签控件的格式属性基本相同,包括标题、文字形式、控件色彩以及控件显示打印效果等内容另外,由于文本框控件是被用于显示或打印数据的,因此一般须设置数据输出格式 §报表文本框控件的数据属性一般是必须设置的通过设置报表文本框控件数据属性卡上的控件来源属性,可以指定报表文本框控件的类型,设置其数据来源。

      8.4.3 报表图像(Image)§在报表上设置图像控件,一般是为了美化报表可以在报表上需要放置图片的位置,放置图像控件,在随即弹出的向导对话框中选定图形或图像文件,即完成了在报表上设置图片的操作 8.5 Access报表设计视图应用§使用Access报表向导,可以很方便地完成报表的创建但是,使用向导创建的报表对象,一般都还不能完全满足实际应用的需要从以上示例可以看到,使用向导创建的报表还不能满足我们对报表格式及其功能的所有要求,这就还需要对其报表格式及其功能作进一步地设计修改另外,报表上图片与背景的设置、一些计算型文本框及其计算表达式的设计,都还没有完成而所有这些设计操作都必须在报表设计视图中进行 8.5.1 “教材预订数据报表”设计§在数据库设计视图中的报表对象卡上,选中“教材预订数据报表”对象,单击“设计”按钮“   ”,即进入“教材预订数据报表”设计视图根据“教材征订管理信息系统”数据库应用系统的需要,应该进行如下设计操作§1.修改报表格式布局 (1)设定报表页眉格式(2)调整报表“页面页眉”和“主体”中各个数据字段的格式§2.绘制表格线段§至此,“教材预订数据报表”设计应该全部完成了,其设计视图形式如图8-1-2所示。

      8.5.2 “教材预订数据标签”报表设计§在8.2.2节即描述了“教材预订数据标签”报表的用途,并给出了“教材预订数据标签”报表对象的运行视图,如图8-2-9所示而使用向导创建的“教材预订数据标签”报表对象(如图8-2-16所示)显然在格式上有些欠缺,这就需要在报表设计视图中进行设计修改 8.6 Access报表打印及预览§8.6.1 Access报表打印预览的驱动方式§作为一个完整的Access数据库应用系统,不应该允许应用系统的操作员直接进入数据库设计视图进行操作,这样做不利于应用系统的数据安全为此,应该考虑在某一个窗体对象中设置相应的命令按钮控件来驱动Access报表对象的打印及预览§对于“教材征订管理信息系统”数据库中的“教材预订数据报表”对象和“教材预订数据标签”报表对象,都可以将驱动其打印预览的命令按钮设置在“教材预订信息编辑”窗体上也就是说,当需要打印预览这两个报表对象时,必须先运行“教材预订信息编辑”窗体对象,然后通过单击“教材预订信息编辑”窗体上设置的相应命令按钮来实现“教材预订数据报表”对象和“教材预订数据标签”报表对象的打印预览 8.6.2 Access报表对象的打印预览驱动程序§为了驱动“教材预订数据报表”对象的预览,需要在“教材预订信息编辑”窗体上设置命令按钮“     ”,并为其设计“单击”事件处理程序如下:        Private Sub Command40_Click()        On Error GoTo Err_Command40_Click           Dim stDocName As String          stDocName = "教材预订数据报表"          DoCmd.OpenReport stDocName, acPreview        Exit_Command40_Click:           Exit Sub        Err_Command40_Click:           MsgBox Err.Description           Resume Exit_Command40_Click        End Sub 8.6.2 Access报表对象的打印预览驱动程序§这个程序的第五行语句即为驱动“教材预订数据报表”对象进入预览状态的命令。

      这条语句尾部系统常量“acPreview”的作用即为设定报表预览状态如果将这个系统常量修改为“acViewNormal”,则可使得报表进入打印状态§而“教材预订数据标签”报表对象的预览驱动,也需要在“教材预订信息编辑”窗体上设置命令按钮“      ”,并为其设计“单击”事件处理程序: 8.6.2 Access报表对象的打印预览驱动程序      Private Sub Command41_Click()      On Error GoTo Err_Command41_Click         Dim stDocName As String        stDocName = "教材预订数据标签"        DoCmd.OpenReport stDocName, acPreview      Exit_Command41_Click:         Exit Sub      Err_Command41_Click:         MsgBox Err.Description         Resume Exit_Command41_Click      End Sub§这个程序的第五行语句即为驱动“教材预订数据标签”报表对象进入预览状态的命令。

      8.7 习题1.应该如何应用Access报表对象的五个节?一个实际报表的“标题”、“表头”、“表体”、“表尾”和“表脚标”均应分别设置于报表对象的哪一个节中?2.应该如何为报表对象指定数据源?3.置于报表对象中的文本框控件能够响应发生在其上的事件吗? 4.请说明在报表对象上设定“图片”属性的意义何在5.如何在报表对象中设置计算控件?6.请说明不能用窗体对象完全取代报表对象的原因。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.