《VisualFoxPro程序设计》第九章报表设计.ppt_第1页
《VisualFoxPro程序设计》第九章报表设计.ppt_第2页
《VisualFoxPro程序设计》第九章报表设计.ppt_第3页
《VisualFoxPro程序设计》第九章报表设计.ppt_第4页
《VisualFoxPro程序设计》第九章报表设计.ppt_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VisualFoxPro6 0程序设计 课件 1 第9章报表设计 9 1报表概述9 2报表的创建9 3报表的分组和分栏设计9 4报表输出 提示 单击各个标题前的动画符号 链接到相应的章节 VisualFoxPro6 0程序设计 课件 2 9 1报表概述 9 1 1报表的组成9 1 2报表布局的类型9 1 3 报表设计步骤9 1 4报表文件 VisualFoxPro6 0程序设计 课件 3 9 1报表概述 报表是数据库管理系统中各种统计信息最常用的输出形式 是进行数据库管理的重要方法 它可以直接和数据库相连 利用已经定义好的格式 布局和数据源 生成用户需要的各种打印样式后输出 报表用于数据和数据统计汇总的打印输出 报表是VisualFoxPro6 0数据库应用系统必不可少的主要组成成分 VisualFoxPro6 0程序设计 课件 4 9 1 1报表的组成 报表是显示和输出数据的界面 报表的内容主要由数据和布局格式组成 下面以一个学生点名用的缺勤统计表 如图9 1所示 为例 介绍报表的组成 该报表显示的数据是学生的缺勤统计 包括学号 姓名 性别 旷课 迟到和早退的信息 整个页面的总体布局是纵向排列的 其中 报表的第一栏为报表标题栏 用于显示报表的标题和制作日期 第二栏为字段标题 用于显示各字段的标题 中间区域为数据区 用于逐行显示每个学生的记录 报表底部是显示页码的页码区 报表的数据的来源可以是数据库中的表或自由表 也可以是视图 查询或临时表 而报表的布局格式决定了如何显示和排列这些数据 VisualFoxPro6 0程序设计 课件 5 VisualFoxPro6 0程序设计 课件 6 9 1 2报表布局的类型 在开始计划提取数据和动手建立报表之前 一定要对所设计的报表有一个整体的规划 即对报表进行布局 报表的布局就是报表输出打印的格式 设计报表就是根据应用需要和数据源来设计报表的布局 根据VisualFoxPro6 0提供的布局 报表可以分为列报表 行报表 一对多报表等几种类型 VisualFoxPro6 0程序设计 课件 7 在列报表的布局中 每行一条记录 每个字段一列 字段与其数据在同一列 如图 通常 分类表 汇总报表 财政报表 存货清单 销售总结等报表采用列报表布局 1 列报表 VisualFoxPro6 0程序设计 课件 8 2 行报表 在行报表的布局中 每个字段一行 字段名在数据左侧 字段与数据在同一行 如图所示 通常 列表 通信地址等报表采用行报表布局 VisualFoxPro6 0程序设计 课件 9 3 一对多报表 在一对多报表的布局中 一条记录 一对多关系 包括父表记录及其子表的记录 如图所示 通常 会计报表 发票等报表采用一对多报表布局 VisualFoxPro6 0程序设计 课件 10 4 多列报表 多栏报表 在列报表的布局中 每行一条记录 每个字段一列 字段与其数据在同一列 如图9 5所示 通常 电话号码簿 名片等的报表采用多列报表 VisualFoxPro6 0程序设计 课件 11 9 1 3 报表设计步骤 报表设计主要包括两个基本组成部分 数据源和布局 数据源一般是数据库中的表或自由表 但也可以是视图 查询或临时表 在定义了一个表 视图或查询以后 就可以设计报表了 设计报表的一般步骤如下 1 选中报表的数据源 2 根据实际要求来决定具体使用哪一种布局样式的报表 3 创建报表 4 对报表进行修改和完善 5 打印或预览报表 VisualFoxPro6 0程序设计 课件 12 9 1 4报表文件 报表文件只存储一个特定报表的位置和格式信息 并不存储字段值 报表文件的扩展名是 frx 报表保存后自动生成的报表备注文件的扩展名是 frt 在报表设计完成后 单击 文件 保存 命令或单击常用工具栏的 保存 按钮 在弹出的对话框中输入一个具体的文件名 就将设计的报表保存到报表文件中了 VisualFoxPro6 0程序设计 课件 13 9 2报表的创建 9 2 1使用报表向导创建9 2 2使用报表设计器创建9 2 3使用快速报表创建 VisualFoxPro6 0程序设计 课件 14 9 2 1使用报表向导创建 1 打开 向导选取 对话框在打开报表前 要先打开 向导选取 对话框 选择要打开的报表向导类型 以便创建相应类型的报表 可以通过以下3种方法打开 向导选取 对话框 单击 工具 向导 报表 命令 这种方法最简便 单击 文件 新建 命令 在 新建 对话框中选中 报表 单选按钮 然后单击 向导 按钮 如图9 6所示 图9 6 新建 对话框 VisualFoxPro6 0程序设计 课件 15 在 项目管理器 窗口中选择 文档 选项卡的 报表 选项 再单击 新建 按钮 如图9 7所示 在弹出的 新建表单 对话框中单击 报表向导 按钮 如图9 8所示 图9 7 项目管理器 窗口 图9 8 新建报表 对话框 VisualFoxPro6 0程序设计 课件 16 通过上述3种方法都可以打开 向导选取 对话框 如图 2 选取要使用的向导在 向导选取 对话框中 选取要使用的向导 如果报表只涉及单个数据表 选择 报表向导 选项 如果报表涉及多个数据表 则选择 一对多报表向导 选项 单击 确定 按钮 打开相应的报表向导 VisualFoxPro6 0程序设计 课件 17 3 按向导的操作步骤设置报表下面介绍如何在不同报表向导中创建报表 1 设置单个数据表的 报表向导 打开 报表向导 对话框 其创建报表的过程分为6个步骤 在 报表向导 对话框中 可以单击 下一步 按钮进行逐步设置 也可以从 步骤 下拉列表框中选择某一步骤单独设置 字段选取 确定报表中的数据库和表 并从中选中字段 在 报表向导 对话框的 数据库和表 选项区中单击按钮 在弹出的 打开 对话框中选择作为数据源的自由表 然后将 可用字段 列表框中的字段添加到 选定字段 列表框中 单击按钮可以逐个加入 单击按钮表示全部加入 这里我们设置数据来源为 教师对学生评定表 选定字段 为 学号 姓名 公民道德 等 如图9 10所示 单击 下一步 按钮 进入步骤2 分组记录 VisualFoxPro6 0程序设计 课件 18 图9 10 报表向导 对话框 VisualFoxPro6 0程序设计 课件 19 分组记录 确定记录的分组方式 最多可以选择3组分组层次 也可以使用默认的不分组 如图9 11所示 单击 下一步 按钮 进入步骤3 选择报表样式 图9 11步骤2 分组记录 VisualFoxPro6 0程序设计 课件 20 步骤3 选取报表样式 可以选择一种报表样式 如图9 12所示 单击 下一步 按钮 进入步骤4 定义报表布局 图9 12步骤3 选择报表样式 VisualFoxPro6 0程序设计 课件 21 步骤4 定义报表布局 设置报表的列数 分栏数 字段布局和版面的打印方向 如图9 13所示 单击 下一步 按钮 进入步骤5 图9 13步骤4 定义报表布局 VisualFoxPro6 0程序设计 课件 22 步骤5 排序记录 设置报表的排序字段和排序顺序 如图9 14所示 单击 下一步 按钮 进入步骤6 图9 14步骤5 排序记录 VisualFoxPro6 0程序设计 课件 23 步骤6 完成 在 报表标题 文本框中输入报表的标题 如图9 15所示 这时单击 预览 按钮 可以预览报表的打印效果 如图9 16所示 如果不满意设计效果 可以单击 上一步 按钮返回到上一步设置 或从 步骤 下拉列表框中选择某一步骤单独设置 最后单击 完成 按钮 结束报表的设置 生成所设置的报表 图9 15步骤6 完成 VisualFoxPro6 0程序设计 课件 24 图9 16 预览 页面 VisualFoxPro6 0程序设计 课件 25 2 设置 一对多报表向导 打开 一对多报表向导 对话框 使用该向导创建一对多报表的过程也分为6个步骤 从父表选择字段 设置一对多关系中的父表和父表中的字段 如图9 17所示 单击 下一步 按钮 进入步骤2 从子表选择字段 图9 17步骤1 从父表选择字段 VisualFoxPro6 0程序设计 课件 26 步骤2 从子表选择字段 设置一对多关系中的子表 选择子表中的字段 如图9 18所示 单击 下一步 按钮 进入步骤3 为表建立关系 图9 18步骤2 从子表选择字段 VisualFoxPro6 0程序设计 课件 27 步骤3 为表建立关系 可以选择两表中的匹配的字段 建立两表的关系 如图9 19所示 单击 下一步 按钮 进入步骤4 排序记录 图9 19步骤3 为表建立关系 VisualFoxPro6 0程序设计 课件 28 步骤4 排序记录 可以确定报表的排序方式 只能在父表中选择字段 最多可选3个字段 如图9 20所示 单击 下一步 按钮 进入步骤5 图9 20步骤4 排序记录 VisualFoxPro6 0程序设计 课件 29 步骤5 选择报表样式 设置报表的样式和打印方向 如图9 21所示 单击 下一步 按钮 进入步骤6 图9 21步骤5 选择报表样式 VisualFoxPro6 0程序设计 课件 30 步骤6 完成 在 报表标题 文本框中输入报表的标题 如图9 22所示 图9 22步骤6 完成 VisualFoxPro6 0程序设计 课件 31 这时如果单击 预览 按钮 可以预览报表的打印效果 如图所示 如果不满意设计效果 可以单击 上一步 按钮返回到上一步设置 或从 步骤 下拉列表框中选择某一步骤单独设置 最后单击 完成 按钮 结束报表的设置 生成所设置的报表 VisualFoxPro6 0程序设计 课件 32 9 2 2使用报表设计器创建 1 报表设计器的组成及相关工具报表设计器 如图9 24所示 为用户创建和修改报表提供了强大的设计功能 报表设计器有自己的数据环境 并可以配合报表控件工具栏 布局工具栏和调色板一起设计报表 下面逐一详细介绍 VisualFoxPro6 0程序设计 课件 33 分隔条 报表的数据环境 页面 带区 标尺 控件 图9 24报表设计器 VisualFoxPro6 0程序设计 课件 34 1 报表设计器的组成 报表设计器设计的区域称为页面 报表打印输出时 如果一个页面显示不下的话 会分成多页打印 页面从上到下划分成多个带状区域 称为带区 带区用于显示不同类型的数据信息 报表设计器中默认的带区有3个 分别为 页标头 细节和页注脚 各带区底部都显示有一个灰色的分离条 分离条左侧文字提示了该分离条上部的带区名称 新建报表时 报表设计器只有这三个带区 但如果需要可以添加其它带区 报表设计器中可以出现的带区见表9 1 VisualFoxPro6 0程序设计 课件 35 表9 1报表带区 VisualFoxPro6 0程序设计 课件 36 2 报表控件 工具栏 报表控件 工具栏 如图9 25所示 提供了多种报表控件 是设计报表的重要工具 其中各控件按钮的功能如下 选定对象 控件 用于选定报表中的对象 标签 控件 用于建立标签控件来放置文本 字段域 控件 用于建立字段容器控件以显示表字段内容 内存变量或表达式 线条 控件 功能是设计时在报表上画各种线 矩形 控件 用于在报表上绘制矩形 圆角矩形 控件 用于在报表上画圆角矩形 图片 ActiveX绑定 控件 用于显示图片或通用数据字段内容 按钮锁定 控件 功能是不用每次单击控件按钮就可以增加多个同类型的控件 图9 25报表控件工具栏 VisualFoxPro6 0程序设计 课件 37 3 布局 工具 布局工具栏如图9 26所示 其中按钮从左到右依次是 左边对齐 右边对齐 顶边对齐 底边对齐 垂直中间对齐 水平中间对齐 相同宽度 相同高度 相同大小 水平居中 垂直居中 置前 置后 利用 布局 工具按钮 可以根据需要很方便地实现对象的布局 图9 26布局工具栏 VisualFoxPro6 0程序设计 课件 38 4 调色板 图9 27调色板 VisualFoxPro6 0程序设计 课件 39 5 数据环境设计器在设计报表时 如果该报表总是使用相同的数据源 就可以把数据源添加到报表的数据环境中 数据环境设计器用来设置报表的数据源 定义了报表的数据环境后 当打开或运行该报表时 会自动打开相关的表或视图 关闭报表文件时 会自动关闭相关的表或视图 数据环境设计器可以通过选择 显示 数据环境 命令来打开 6 标尺标尺可以用于定位对象 标尺有水平和垂直两类 分别位于报表设计器的顶部和左侧 VisualFoxPro6 0程序设计 课件 40 2 利用报表设计器创建报表 使用报表设计器来设计报表主要是设计报表布局和设置数据源 利用报表设计器创建报表的过程如下 1 调出报表设计器调出报表设计器的方法有以下几种 单击 文件 新建 命令 在 新建 对话框中选中 报表 单选按钮 然后单击 新建文件 按钮 在常用工具栏里单击 新建 工具按钮 在 新建 对话框中选中 报表 单选按钮 然后单击 新建文件 按钮 在命令窗中输入命令 CREATEREPORT VisualFoxPro6 0程序设计 课件 41 2 在 数据环境 中添加数据源 单击 显示 数据环境 命令 或者鼠标右键单击报表 从弹出快捷菜单中选择 数据环境 命令 就会打开数据环境设计器 单击 数据环境 添加 命令 或在数据环境设计器的任何一个位置单击鼠标右键 从快捷菜单中选择 添加 命令 弹出如图9 28所示的 添加表或视图 对话框 在该对话框的 数据库 下拉列表框中选择作为数据源的数据库 在 数据库中的表 列表框中选择该数据库中的表或视图 单击 添加 按钮 完成数据源的添加 图9 28 添加表或视图 对话框 VisualFoxPro6 0程序设计 课件 42 3 添加标签单击 报表控件 工具栏中的标签控件 移动鼠标指针到报表设计器中 光标将变成插入符号 再次即可输入所需文字 如图9 29所示 选中已加入的标签 单击 格式 字体 命令 就可以对其进行字体 文本颜色和背景色的设置 图9 29添加标签 VisualFoxPro6 0程序设计 课件 43 4 添加字段域控件向报表中添加字段域控件的方法有两种 具体如下 第一种方法是利用数据环境中表的字段来添加字段域控件 方法为 打开报表的数据环境设计器 在数据环境设计器中选择表或视图 再把表中所需的字段拖到报表设计器中 如图9 30所示 图9 30从数据环境设计器向报表拖放字段 VisualFoxPro6 0程序设计 课件 44 第二种方法是利用 报表控件 工具栏中的字段域控件控件向报表中添加字段域控件 方法为 单击按钮 再到要插入该控件的报表的位置上单击 打开 报表表达式 对话框 如图9 31所示 单击 报表表达式 对话框中 表达式 文本框右侧的按钮 打开 表达式生成器 图9 31 报表表达式 对话框 VisualFoxPro6 0程序设计 课件 45 在 表达式生成器 对话框的 字段 列表框中双击所需的字段 该字段就会出现在 报表字段的表达式 列表框中 如图9 32所示 单击 确定 按钮 返回到 报表表达式 对话框 再单击 确定 按钮 则报表字段域控件就获得了新生成的报表表达式 图9 32 表达式生成器 对话框 VisualFoxPro6 0程序设计 课件 46 5 添加线条 矩形和圆角矩形 利用报表控件工具栏中的 控件 可以分别在报表中添加线条 矩形和圆角矩形 先在工具栏中的单击控件按钮 然后在表单适当位置单击鼠标即可在表单的相应位置添加出该控件 也可以在表单上拖动鼠标画出控件 6 添加制作日期 制作日期一般可添加在报表的页注脚 页标头和标题带区中 添加字段域控件 然后用 报表表达式 对话框生成表达式 DATE 即可在报表打印中显示出制作日期 7 添加页码 页码一般添加在页注脚带区 在页注脚带区添加字段域控件 然后用 报表表达式 对话框生成表达式 pageno 即可在报表打印中显示出页码 8 添加标题和总结 标题和总结要分别添加在标题带区和总结带区 标题可用标签控件在带区显示 总结可用标签控件显示文字 也可用字段域控件显示数学计算相关的表达式 VisualFoxPro6 0程序设计 课件 47 9 设置报表列数设置报表列数的方法为 单击 文件 页面设置 命令 弹出 页面设置 对话框 在 列数 设置框输入具体的数值 如图9 33所示 图9 33 页面设置 对话框 VisualFoxPro6 0程序设计 课件 48 9 2 3使用快速报表创建 使用快速报表创建报表是最简单的方法 步骤 1 单击 文件 新建 命令 在 新建 对话框中选择 报表 选项 再单击 新建文件 按钮 建立一个空白报表 或者直接在命令窗口输入命令 CREATREPORT 2 单击 报表 快速报表 命令 如图9 34所示 打开 打开 对话框 图9 34 报表 菜单 VisualFoxPro6 0程序设计 课件 49 3 在 打开 对话框中选择所需的表 如图9 35所示 单击 确定 按钮 弹出 快速报表 对话框 如图9 36所示 图9 35 打开 对话框 图9 36 快速报表 对话框 VisualFoxPro6 0程序设计 课件 50 4 选择报表的布局 并添加字段和标题 选中 快速报表 对话框的 字段列布局 或 字段行布局 单选按钮来确定字段的布局方式 单击 快速报表 对话框的 字段 按钮 在弹出的 字段选择器 对话框中对数据源的字段进行设置 如图9 37所示 单击 确定 按钮后返回 快速报表 对话框 选中 快速报表 对话框的 标题 复选框 则会在报表上显示数据来源的字段名 图9 37 字段选择器 对话框 VisualFoxPro6 0程序设计 课件 51 5 在 快速报表 对话框中单击 确定 按钮 将得到如图9 38所示的报表 图9 38快速报表 VisualFoxPro6 0程序设计 课件 52 6 单击工具栏的 打印预览 按钮 就可以显示报表打印的实际效果 如图9 39所示 图9 39快速报表预览的效果 VisualFoxPro6 0程序设计 课件 53 9 3报表的分组和分栏设计 9 3 1设计分组报表9 3 2设计分栏报表 VisualFoxPro6 0程序设计 课件 54 9 3报表的分组和分栏设计 报表在创建完成后 可能会发现设计有不满意的地方 如功能或界面与实际需要有偏差 这时可以利用报表设计器对报表进行修改或完善 一方面 我们可以通过添加控件来丰富报表界面 另一方面 我们可以通过增加报表的分组或分栏来修改和完善合理的报表 对于界面的美化 我们不再详述 下面对报表的分组或分栏设计进行介绍 修改报表的一般步骤如下 1 利用报表设计器打开已经创建过的报表文件 2 在报表设计器中根据需要修改报表 例如分组和分栏 3 预览修改后的报表 在满足要求后保存报表 VisualFoxPro6 0程序设计 课件 55 9 3 1设计分组报表 通常 在打印分类表 汇总表等报表时 需要在报表设计中进行数据分组 分组前 应该先把数据源中的数据排好序 1 设计单级分组报表单级分组就是将数据按照分组表达式进行一级分组 如果要按某个字段分组 就必须将数据源按该字段进行索引或者排序 单级分组的操作步骤如下 1 单击 报表 数据分组 命令 或者单击 报表设计器 工具栏中的 数据分组 按钮 打开 数据分组 对话框 如图9 40所示 VisualFoxPro6 0程序设计 课件 56 图9 40 数据分组 对话框 VisualFoxPro6 0程序设计 课件 57 2 在 数据分组 对话框中进行分组设置 在 分组表达式 列表框中 既可以直接输入表达式 也可以单击按钮弹出的 表达式生成器 中创建表达式 组属性 选项区中的4个复选框用于报表的分页设置 选中 每组从新的一列开始 复选框 当组的内容改变时 打印到下一列 选中 每组从新的一页开始 复选框 每组从新的页开始打印 选中 每组的页号重新从1开始 复选框 每组从新的页开始打印 且把页号置为1 选中 每页都打印组标头 复选框 当组的内容分布在多页上时 每一页都打印组标头 VisualFoxPro6 0程序设计 课件 58 分组之后 报表中就会自动产生组标头和组脚注带区 如图9 41所示 该报表是按学号分组的 在其组标头带区中有一系列标签和字段域控件用于显示和说明本组信息 分组报表的打印预览效果如图9 42所示 图9 41分组的报表 图9 42分组报表的打印预览 VisualFoxPro6 0程序设计 课件 59 2 设计多级分组报表 VisualFoxPro6 0的报表最多可以设置20级的数据分组 这样的报表具有层次性 设计多级分组报表的关键就是建立多重索引 设计多级分组的操作步骤与设计单级分组基本类似 只是在 数据分组 对话框中 需要加入两个或两个以上的分组表达式 数据分组 对话框的 删除 插入 按钮分别执行删除和添加一行分组表达式的作用 VisualFoxPro6 0程序设计 课件 60 9 3 2设计分栏报表 分栏报表是将打印的内容分成多栏 所以又称为多栏报表 通过报表的分栏 可以充分利用打印区域 分栏报表的设计比较简单 操作步骤如下 1 单击 文件 页面设置 命令 打开 页面设置 对话框 如图 VisualFoxPro6 0程序设计 课件 61 2 在 列 选项区中设置列的列数 宽度和间隔 对于多栏报表 列数至少为2 设置完成后 单击 确定 按钮即可 例如 对于如图9 44所示的单列报表 将其分栏的列设置为2后 将会显示出如图9 45所示的2栏 2列 报表 图9 44单列报表图9 45分栏报表 VisualFoxPro6 0程序设计 课件 62 9 4报表输出 9 4 1报表的页面设置9 4 2报表的预览9 4 3报表的打印 VisualFoxPro6 0程序设计 课件 63 9 4报表输出 报表设计好后 一般要进行打印输出 以便更好的查看和分析数据 报表在打印前 应该进行页面设置 设置好打印页面格式后 可以预览报表的打印效果 报表在完成所有的设计要求后 就可以正式用于打印输出 9 4 1报表的页面设置页面设置包括设置页面布局 打印区域 打印顺序 多列分栏 打印方向等内容 单击 文件 页面设置 命令 打开如图9 37所示的 页面设置 对话框 根据具体的情况 对打印区域 打印顺序 左页边距 打印方向进行设置 VisualFoxPro6 0程序设计 课件 64 9 4 2报表的预览 不管是利用报表向导 还是利用报表设计器设计的报表 都不能直接看出设计的实际效果 这样设计的报表是否满足要求 我们并不知道 如果盲目输出 会造成不必要的浪费 因此我们在打印之前先要采取一定的方式看看设计的实际效果 在设计时可以随时预览报表的打印效果 预览报表有如下几种 在报表设计器打开时 单击 文件 打印预览 命令 在报表设计器打开时 单击常用工具栏中的 打印预览 按钮 在命令窗口中输入以下命令 REPORTFORMPREVIEW其中 关键字PREVIEW表示预览 VisualFoxPro6 0程序设计 课件 65 9 4 3报表的打印 在报表预览效

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论