第四节 计划、创建报表布局
报表包括两个基本组成部分:数据源和布局。数据源通常是数据库中的表,也可以是视图、查询或临时表。视图和查询筛选、排序、分组数据库中的数据,而报表布局则定义了报表的打印格式。在定义了一个表、一个视图或查询后,便可以创建报表(或标签)。
4.1 计划报表布局
通过设计报表,可以用各种方式在打印页面上显示数据。使用“报表设计器”可以设计复杂的列表、总结摘要或数据的特定子集,比如发票。设计报表有四个主要步骤:
1.决定要创建的报表类型。
2.创建报表布局文件。
3.修改和定制布局文件。
4.预览和打印报表。
4.1.1 报表的创建过程
报表的创建过程可以图示如下:

4.1.2 决定报表的常规布局
创建报表之前,应该确定所需报表的常规格式。报表可能同基于单表的电话号码列表一样简单,也可能复杂得象基于多表的发票那样。另外您还可以创建特殊种类的报表。例如,邮件标签便是一种特殊的报表,其布局必须满足专用纸张的要求。
常规报表布局有如下几种:

为帮助选择布局,这里给出常规布局的一些说明,以及它们的一般用途举例。
|
布局类型 |
说 明 | 用途举例 |
|
列 |
每行一条记录,每条记录的字段在页面上按水平方向放置。 | 分组/总计报表 财政报表 存货清单 销售总结 |
| 行 | 一列的记录,每条记录的字段在一侧竖直放置 | 列表 |
| 一对多 | 一条记录或一对多关系 | 发票 会计报表 |
| 多列 | 多列的记录,每条记录的字段沿左边缘竖直放置 | 电话号码薄 名片 |
| 标签 | 多列记录,每条记录的字段沿左边缘竖直放置,打印在特殊纸上 | 邮件标签 名字标签 |
选定满足需求的常规报表布局后,便可以用“报表设计器”创建报表布局文件。
4.1.3 深入了解报表布局文件
报表布局文件具有 .frx 文件扩展名,它存储报表的详细说明。每个报表文件还有带 .frt 文件扩展名的相关文件。
报表文件指定了所用到的域控件、要打印的文本以及信息在页面上的位置。报表文件不存储每个数据字段的值,只存储一个特定报表的位置和格式信息,即每次运行报表时都根据报表文件指定的数据源中读取数据。因此,报表的值取决于报表文件所用数据源的字段内容。如果经常更改数据源内容,每次运行报表,值都可能不同。
4.2 设置报表数据环境
在 Visual FoxPro 中,有三种创建报表布局的方法:
用“报表向导”创建简单的单表或多表报表。
用“快速报表”从单表中创建一个简单报表。
用“报表设计器”修改已有的报表或创建自己的报表。
以上每种方法创建的报表布局文件都可以用“报表设计器”进行修改。“报表向导”是创建报表的最简单途径,它自动提供很多“报表设计器”的定制功能。“快速报表”是创建简单布局的最迅速途径。如果直接在“报表设计器”内创建报表,“报表设计器”将提供一个空白布局。 [NextPage]
4.2.1 规划数据的位置
使用“报表设计器”内的带区,可以控制数据在页面上的打印位置。报表布局可以有几个带区。规划好报表中可能包含的一些带区以及每个带区的内容。注意每个带区下的栏标识了该带区。
4.2.2 设置报表数据环境
数据环境定义了报表(或表单)使用的数据源,它包括了表、视图和关系,可以用它们来填充报表中的控件。数据环境与报表或表单一起保存,可以用“报表设计器”或“表单设计器”进行修改。
定义报表或表单的数据环境之后,当打开或运行该文件时,Visual FoxPro 自动打开表或视图,并在关闭或释放该文件时关闭表或视图。
设置报表的数据源是在数据环境设计器中进行的。
向数据环境中添加表或视图的方法:
1.在“报表设计器”中空白带区里单击鼠标右键,在弹出的“快捷菜单”中选择“数据环境”,(或者从“显示”菜单中,选择“数据环境”)。
2.从快捷菜单或从“数据环境”菜单中,选择“添加”。
3.在“添加表或视图”对话框中,从“数据库”框中选择一数据库。
4.在“选定”区域中选取“表”或“视图”。
5.在“数据库中的表/视图”框中,选取一个表或视图。
6.选择“添加”按钮。
这样,选择的数据源就添加到“数据环境设计器”中。

设计数据源的还可以对报表进行排序输出。如果报表的数据源是一个表,则报表中输出的记录一般是按照表中记录的顺序进行排序的。如果是数据源是视图,则可利用视图的记录顺序来排序。
使用视图作为数据源可以图示如下:

当然,还可通过设置索引来决定出现在报表中的记录顺序,方法如下:
从快捷菜单或从“显示”菜单中,选择“数据环境”。
从快捷菜单中,选择“属性”。出现“属性”对话框,如下:

在“属性”窗口中,选择对象框中的“Cursor1”。
选择“数据”选项卡,然后,选定“Order”属性。
输入索引名 (或者从可用索引列表中选定一个索引,比如图中选择了“技术职务”作为索引)。
如果我们添加了不需要的表或视图,就需要移去它们,方法是:鼠标指向要移去的表,单击右键,在快捷菜单中选择“移去”。
| 广告合作:400-664-0084 全国热线:400-664-0084 Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号 珠峰网 版权所有 All Rights Reserved
|