




已阅读5页,还剩37页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
创建输出报表 介绍创建报表的3种方法:(1)使用“报表向导”制 作报表;(2)使用“快速报表”制作单表报表;(3) 使用“报表设计器”制作和修改报表。 12.1 报表概述 12.2 使用“报表向导”制作报表 12.3 使用“快速报表”制作单表报表 12.4 使用“报表设计器”制作和修改报表 12.4.1 报表带区 12.4.2 报表的数据环境 12.4.3 报表控件 12.4.4 报表布局 12.4.5 分组报表 12.5 在项目中添加报表 教学内容 1报表组成 报表由两部分组成:数据源和报表布局。数据源是报表的 数据来源,报表的数据源通常是数据库中的表文件,也可以 是视图、查询或临时表。报表布局定义了报表的打印格式。 用户设计 好报表布局后,Visual Foxpro将该报表布局的 详细信息存放在以frx为扩展名的文件中,称为报表布局文 件。该文件指定要用的数据字段、要打印的文本以及报表的 布局格式。每次运行报表,报表中的数据字段的域控件从数 据源中取出数据。 12.1 报 表 概 述 2. 报表布局 表 12.1 报表常规布局类型 布局类型 说 明 示 例 列报表 每行一条记录,每个记录的字段 分组/总计报表、财务报 在页面上按水平方向依次放置 表、存货清单、销售结 行报表 一列一个记录,记录字段数决定 收银台单据 占用行数,一般各字段左边缘对 齐放置 一对多报表 父表中每选出一条记录,对应从 发票、货运清单 子表中选出多条记录生成打印文档 多栏报表 每条记录的字段沿分栏的左边 电话号码薄、名片 缘竖直放置。 Visual Foxpro 6.0为用户提供了3种创建报表布局 的方法: (1)用“报表向导”或“一对多报表向导”创建单 表或多表报表。 (2)用“快速报表”创建单表报表。 (3)用“报表设计器”创建或修改单表或多表报表 。 12.2 使用“报表向导”制作报表 1. 启动“报表向导” (1)选择系统的“文件”菜单下的“新建”菜单项,在 弹出的“新建”对话框中选中“报表”单选按钮,然后单 击“向导”按钮,出现“向导选取”对话框。 (2)在系统菜单中选中“工具”菜单下的“向导”子菜 单,在下一级菜单中再选择“报表”菜单项,进入“向导 选取”对话框。 (3) 单击系统工具栏上的“报表”图标按钮。 报表向导启动时,首先弹出“向导选取”对话框 2.“报表向导”的6个步骤 (1)字段选取 (2)记录分组 (3)选择报表样式 (4)定义报表布局 (5)记录排序 (6)完成 12.3 使用“快速报表”制作单表报表 通过学生表(学生表.dbf)创建快速报表的的操作步骤 : 1. 选择系统菜单的“文件”菜单下的“新建”子菜 单项,在弹出的“新建”对话框中选中“报表”单选钮 ,然后单击“新建文件”按钮,进入 “报表设计器”, 出现一个空白报表。 2. 选择系统菜单“报表”菜单下的“快速报表”子菜 单项,弹出“打开”对话框,选择相应路径下的学生表 .dbf 。 3. 系统弹出“快速报表”对话框, 对话框中主要按钮和选项的含义如下: (1)字段布局:两个较大的图形按钮用于设计报表的字段 布局,单击左侧按钮产生列报表,单击右侧的按钮则产生行 报表,其字段在报表中竖向排列。 (2)“标题”复选框:选中该项,表示在报表里为要输 出的字段添加一个标题。一般都需要加字段标题来区分不同 的字段。系统默认各字段的标题与其字段名相同。 (3)“添加别名”复选框:选中该项,表示在输出的字 段变量前加上所要报表的别名。 (4)“将表添加到数据环境中”复选框:选中该项,表 示把打开的数据表添加到数据环境中作为报表的数据源。 (5)“字段”按钮: 点击将打开“字段选择器”对话 框,可以从中选择所要输出的表字段。缺省情况下,快速报 表选择表文件中除通用型字段以外的所有字段。 4. 在“快速报表”对话框中单击“确定”按钮,快速 报表便出现在“报表设计器”中 5. 单击工具栏“打印预览”按钮,或从系统“显示 ”菜单下选择“预览”菜单项,打开快速报表的预览窗 口 。 6. 单击“保存”按钮,保存报表为“学生报表.frx” 文件。 下面任一种方法均可打开报表设计器: 在“项目管理器”中:点击“文档”选项卡,在列表框 里出现的选项中选择“报表”,点击“新建”按钮,弹出的 “新建报表”对话框,在其中选择“新建报表”命令按钮。 菜单方式:选中“文件”菜单下的“新建”菜单项,在 弹出的“新建”对话框中选择“报表”单选钮,然后点击“ 新建文件”命令按钮。 使用命令:CREATE REPORT 。 打开已有的报表文件,即可打开报表设计器。 12.4 使用“报表设计器”制作和修改报表 报表设计器 带区的作用主要是控制数据在页面上的打印位置,带区名 标识在带区下的标识栏上。在每个报表中都可以添加或删除 若干个带区,由用户自己设置。打印或预览报表时,系统会 以不同的方式处理各个带区的数据。 表 12.2 报表常用带区及打印频率(下页) 12.4.1 报表带区 带 区打 印 频 率 表 示 内 容 标题每张报表开头打印一次标题、日期或公司徽标 页标头每页打印一次页标题 细节每条记录打印一次各记录的字段值 页注脚每个页面下面打印一次页码和日期、每页总计 总结 每张报表最后一页打印一次 或单独占用一页 报表总结 组标头每个数据分组打印一次分组字段和分隔线 组注脚每个数据分组打印一次分组总结 列标头在分栏报表中每列打印一次列标题 列注脚在分栏报表中每列打印一次总结或总计 设计的报表使用相同的数据源,则可以将该数据源添加到 报表的数据环境中。数据环境通过下列方式管理报表的数据 源:打开或运行报表时打开表或视图;基于相关表或视图收 集报表所需数据集合;关闭或释放报表时关闭表。 如果报表不是固定使用同一个数据源,在使用报表时由用 户先做出选择,如设计一个包含若干个按钮的对话框,在每 一个按钮的 Click 事件过程中设置打开表(视图)的命令 或SELECT-SQL 语句等。 12.4.2 报表的数据环境 例 12.1为空白报表添加学生表和成绩表的数据源。 步骤如下: 1. 打开“报表设计器”生成一个空白报表。然后用以下任 一种方法打开数据环境设计器。 (1) 在“报表设计器”工具栏上单击“数据环境”按 钮。 (2) 在“显示”菜单下选择“数据环境”菜单项。 (3)在“报表设计器”窗口的任何位置右击鼠标,从 快捷菜单中选择“数据环境”菜单项。 2.在系统的“数据环境”菜单中单击“添加”菜单项; 或者在“数据环境设计器”窗口中右击鼠标,从快捷菜单 中选择“添加”命令。弹出“添加表或视图”对话框。 3. 选择作为数据源的表或视图,点击“添加”按钮。本例 打开“学籍管理系统”数据库,选择成绩表.dbf 和学生表 .dbf ,如图12.13所示。 4. 单击“关闭”按钮 “报表控件”工具栏各按钮功能: “选定对象”按钮:移动或更改控件的大小。 “标签”按钮:在报表上创建一个标签控件。 “域控件”按钮:用于在报表上显示表字段、内存变量或其 他表达式的内容。 “线条”(“矩形”、“圆角矩形”)按钮:分别用于在鼠 标点击的位置放置一个大小可调的相应图形。 “图片/Active 绑定控件” 按钮:显示图片或通用型字段 的内容。 “按钮锁定”按钮:允许添加多个相同类型的某控件而不需 要多次重复选中该控件按钮。 12.4.3 报表控件 “域控件” 的使用方法 域控件用于显示表或视图中的字段、变量和表达式的计算 结果。域控件一般放在细节带区里。 (1)添 加域控件 “报表表 达式”对 话框 (2)定义域控件的格式 双击报表中的域控件,打开“报表表达式”对话框, 单击“格式”文本框右侧对话 框按钮,弹出“格式” 对话框。 格式决定了打印报表时域控件如何显示。更改域控 件的数据类型并不改变字段在表中的数据类型。 选择域控件数据类型:字符型、数值型或日期型, 选择不同类型时,“编辑选项 ”区域的内容将有所变 化。 选择“编辑选项 ”区域中的一些选项确定格式以 后,其结果将在“报表表达式”对话框中“格式”文本 框中显示。 (3)设置域控件打印条件,点击“报表表达式”对话框中 的“打印条件”按钮,弹出“打印条件”对话框。 打印重复值:表中有多条记录在某一个字段取值相同, 选择“否”,报表只打印一次相同值。 有条件打印 “在新页/列的第一个完整信息带内打印” “当此组改变时打印” 。 “当细节数据溢出到新页/列时打印” 仅当下列表达式为真时打印: Visual Foxpro允许建立 一个打印表达式,只有表达式的结果为“真”,才打印该字 段。 “计算”按钮,为报表的数据创建一个结果字段。单 击“报表表达式”对话框中的“计算”按钮,打开“计 算字段”对话框。 “重置”下拉列框:把表达式计算的结果重置为初始 值,系统默认值是“报表尾”选项,表示到报表尾才重置 此计算字段为初始值。当然也可以选择“页尾”或“列尾 ”选项。 “计算”区域: 有8个单选项,指定在报表表达式中执行 的计算。 1. 2. 图片/ActiveX绑定控件 OLE为对象链接与嵌入技术。一个 OLE 对象可以是 图片、声音、文档等,Visual Foxpro的表可以包含这些 OLE 对象,报表也能处理 OLE 对象。 在“报表设计器”窗口中,单击“报表控件”工具栏 “图片/ActiveX 绑定控件”按钮,在带区内拖动鼠标拉 出图文框,弹出“报表图片”对话框。 图片来源有两个选项: (1)“文件”: 如果希望要加入的图片不随记录的打印而 改变,则选择“文件”单选钮。 (2)“字段”: 如果要加入的图片要随记录的不同而改变 ,如存储学生照片的通用型字段,则选择“字段”单选钮。 在“字段”单选钮的文本框内键入通用型字段名,或选择“ 字段”单选钮后边的对话按钮,在弹出的“选择字段/变量” 对话框中选择一个通用字段。 默认情况下,报表并不包含所有的带区,如标题和总结 带区等。我们根据实际情况需要对报表的布局进行调整。 1. 设置其他带区 12.4.4 报表布局 (1) 设置“标题”或“总结”带区 从“报表”菜单中选择“标题/总结”命令,弹出 “标 题/总结”对话框。 选择“标题带区”复选框,在报表中添加一个“标题” 带区。 系统会自动把“标题”带区放在报表的顶部,若希望把标 题内容单独打印一页,应选择“新页”复选框。 “总结”带区设置与此类似。 (2) 设置“列标头”和“列注脚”带区 当报表中的字段很少,而所需打印的纸张空间余量较多时, 可以设置报表的多列布局。 从系统的“文件”菜单中选择“页面设置”菜单项,弹出 “页面设置”对话框。把“列数”微调器的值调整为大于1 ,报表将添加一个“列标头”带区和一个“列注脚”带区。 (3) 设置“组标头”或“组注脚”带区 要以组为单位对报表的数据进行处理。如以籍贯为组对学生 的基本情况进行报表输出。注意,只有对表的索引字段设置 分组才能够得到预想的分组效果。 从系统的“报表”菜单中选择“数据分组”菜单项,或 者单击“报表设计器”工具栏上的“数据分组”按钮,弹出 “数据分组”对话框。单击 “分组表达式”右侧的对话按钮 ,弹出“表达式生成器”对话框。从中选择分组表达式,本 例选择“学生表.是否党员”,可以看到在报表设计器中自动 添加了一个“组标头”和“组注脚”带区。 2、调整带区高度 在“报表设计器”中调整带区的高度以放置需要的控 件。不能使带区高度小于布局中控件的高度,可以把控件移 进带区内,然后减少其高度。 调整带区高度的方法有下面2种: (1) 用鼠标选中某一带区标识栏,待鼠标变为箭头后 上下拖曳该带区,直至得到满意高度为止。 (2)双击需要调整高度的带区的标识栏,系统将显示 “页标头”对话框。在“高度”选项的编辑框里指定想要的 尺寸即可。 1 . 单级分组报表 (1) 打开数据分组对话框使用以下方法之一: 选择系统的“报表”菜单下的“数据分组”菜单项; 点击“报表设计器”工具栏里的“数据分组”按钮; 右击报表设计器,选择“数据分组”快捷菜单项“; (2)在 “数据分组”对话框输入分组表达式 在“分组表达式”的第一个编辑框内直接输入表达式;或者 选择“分组表达式”右侧的对话按钮,在“表达式生成器” 对话框中创建表达式。 12.4.5 分组报表 (3) 在“数据分组”对话框的“组属性”区域选定属性 “每组从新的一列上开始”:从新的一列开始打印。 “每组从新的一页上开始”:当组的内容改变时,另起 一页来打印组的内容。 “每组的页号重新从1开始”:当遇到不同的组时,页 号重置为1。 “每页都打印组标头”:每一页都打印组标头。 “小于右值时组从新的一页开始”:打印组标头时,组 标头距页底的距离如小于这个距离,就在新的一页上打印 。 2. 多级分组报表 多级分组基于多重索引,设计多级分组报表的操作方法基 本与设计单级 分组报表相同,只是在打开“数据分组”对话 框时,需要生成多个“分组表达式”。 例12.4 根据“学生表.dbf”的数据设计一个按“性别 ”和“是否党员” 二级分组的报表。步骤如下: 注意:事先要对“学生表.dbf”建立索引表达式为“性别+是 否党员”的索引,索引名称为“党员-性别”。(在此假设两 字段均为字符型,否则可能会报类型不匹配的错误) (1)通过报表向导创建一个报表文件:学生表.frx , 并打开它; (2)添加数据分组 单击“报表设计器”工具栏的“数据分组”按钮,弹出 “数据分组”对话框,单击第一个“分组表达式”框右 侧的对话按钮,在“表达式生成器”对话框中选择“性 别”,同样的操作方法在第二个“分组表达式”框中输 入“是否党员”,然后按“确定”; (3)修改和添加控件 添加标题“学生情况表”,设置其字体和位置。 把“性别”字段标签控件和“性别”
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论