450 likes | 620 Views
第 10 章 报表设计. 本章要点. 创建报表 , 设计报表布局、使用报表向导创建报表、使用报表设计器创建报表、创建快速报表、报表工具栏 设计报表,设置报表数据源、设置报表布局、在报表中使用控件、 设计分组报表、设计单级分组报表、设计多栏报表. 10.1 创建报表. 创建报表方法: 使用报表向导创建单表或多表报表 使用报表设计器创建自定义的报表 使用快速报表创建简单规范的报表. 10.1.1 设计报表布局. 1 .设计报表 定义: 设计报表就是根据报表的数据源和应用需要来设计报表的布局。 步骤: 确定要创建的报表类型。 创建报表布局文件。
E N D
本章要点 • 创建报表,设计报表布局、使用报表向导创建报表、使用报表设计器创建报表、创建快速报表、报表工具栏 • 设计报表,设置报表数据源、设置报表布局、在报表中使用控件、 • 设计分组报表、设计单级分组报表、设计多栏报表
创建报表方法: • 使用报表向导创建单表或多表报表 • 使用报表设计器创建自定义的报表 • 使用快速报表创建简单规范的报表
10.1.1 设计报表布局 • 1.设计报表 • 定义: • 设计报表就是根据报表的数据源和应用需要来设计报表的布局。 • 步骤: • 确定要创建的报表类型。 • 创建报表布局文件。 • 修改和定制布局文件。 • 预览和打印报表。
2.报表布局 • 常规类型: • 列报表 • 每行一条记录,每个字段一列,字段名在页面上方,字段与其数据在同一列。 • 行报表 • 每个字段一行,字段名在数据左侧,字段与其数据在同一行。 • 一对多报表 • 一条记录或一对多关系,其内容包括父表的记录和相关子表的记录。 • 多栏报表 • 也称多列报表,指报表中每行可打印多条记录的数据。
3.使用报表向导创建报表 • 步骤: • 打开报表向导 • 字段选取 • 分组记录 • 选择报表样式 • 定义报表布局 • 排序记录 • 完成 • 单击“显示”菜单下的“预览”按钮,查看报表的生成情况 • 单击报表向导上的“完成”按钮,出现“另存为”对话框,用户指定报表文件的保存位置和名称,并以报表文件扩展名.frx保存
例如,对自由表员工.dbf创建报表,报表名为yg.frx。例如,对自由表员工.dbf创建报表,报表名为yg.frx。 • 步骤如下: • (1)打开员工.dbf表,把员工.dbf表作为报表的数据源。 • (2)选择“工具”菜单栏下的“向导”子菜单,单击“报表”选项,出现“向导选取”对话框。 • (3)报表向导有以下6个步骤: • 选取报表中出现的字段 。 • 确定数据分组方式,本例现在没有指定分组选项。 • 选择报表样式,本例选择“经营式” 。 • 定义报表布局,本例选择1列、纵向 。 • 排序记录,确定记录在报表中出现的顺序,要排序的字段必须已经建立好索引,本例按“部门号”排序 。 • 完成报表向导,选择“保存报表以备将来使用”、“保存报表并在报表设计器中修改报表”和“保存并打印报表”中任意一项。
(3)要查看生成的报表,可以单击“预览”按钮,本例的预览效果,如图10.8所示。在预览窗口中出现打印预览工具栏,单击相应的图标按钮可以改变显示报表的百分比,退出预览或直接打印报表。预览效果如下图所示。(3)要查看生成的报表,可以单击“预览”按钮,本例的预览效果,如图10.8所示。在预览窗口中出现打印预览工具栏,单击相应的图标按钮可以改变显示报表的百分比,退出预览或直接打印报表。预览效果如下图所示。
4.使用报表设计器创建报表 • 步骤: • 打开报表设计器。 • 在“报表设计器”窗口,打开“显示菜单”,选择“数据环境”选项,弹出“数据环境设计器”窗口。 • 在“数据环境设计器”窗口,右击“数据环境设计器”选项,选择“添加”,添加可以作为报表数据源的表。 • 单击“文件”菜单下的“保存”按钮,弹出“另存为”对话框。在该对话框中输入要保存的报表名称,单击“保存”按钮即可。
5.使用命令创建报表 • 格式: • CREATE REPORT[〈报表文件名〉] • 6.创建快速报表 • 步骤: • 在报表设计器下,选择“报表”菜单的“快速报表”命令,弹出“打开”对话框。 • 选择数据源,调出“快速报表”对话框。 • 选定行布局、全部字段,单击“确定”按钮后,VFP自动把数据表的字段添加到报表中。 • 在“文件”菜单中选择保存命令后,调出“另存为”对话框,输入报表名称,单击“保存”按钮。
例如,对自由表员工.dbf创建一个快速报表,报表名为ygksbb.frx。例如,对自由表员工.dbf创建一个快速报表,报表名为ygksbb.frx。 • 步骤如下: • (1)单击工具栏上的“新建”按钮,选择文件类型中的“报表”,单击“新建文件”,打开“报表设计器”,出现一个空白报表。 • (2)选择“报表”菜单栏下的“快速报表”选项,用鼠标右击单击“报表设计器”的空白区域,打开“数据环境设计器”窗口。 • (3)用鼠标右击单击“数据环境设计器”,从弹出的快捷菜单中选择“添加”,然后选择所要添加的“员工.dbf”。 • (4)选择数据源后,系统弹出“快速报表”对话框,在该对话框中选中“标题”和“将表添加到数据环境中”。本例没选“添加别名”,因为数据源是单独的一个表,别名没有意义。
(5)单击“字段”按钮,打开“字段选择器”窗口为报表选择可用的字段,在缺省的情况下,选择表文件中除通用型字段以外的所有字段,然后单击“确定”按钮返回到“快速报表”对话框。(5)单击“字段”按钮,打开“字段选择器”窗口为报表选择可用的字段,在缺省的情况下,选择表文件中除通用型字段以外的所有字段,然后单击“确定”按钮返回到“快速报表”对话框。 • (6)在“快速报表”对话框中,单击“确定”按钮,快速报表便出现在“报表设计器”窗口中。 • (7)单击工具栏上的“打印预览”,或者选择“显示”菜单下的“预览”,打开快速报表的预览窗口。 • (8)单击工具栏上的“保存”按钮,将报表保存为ygksbb.frx。预览报表如下图所示。
10.1.2 报表工具栏 • 1.“报表设计器”工具栏 • 包含的按钮以及功能: • “数据分组”按钮 • 显示报表的“数据分组”对话框,从中可以创建数据组并指定其属性。 • “数据环境”按钮 • 显示报表的“数据环境设计器”窗口。 • “报表控件工具栏”按钮 • 显示或隐藏“报表控件”工具栏。 • “调色板工具栏”按钮 • 显示或隐藏“调色板”工具栏。
“布局工具栏”按钮 • 显示或隐藏“布局”工具栏。 • 2.“报表控件”工具栏 • 包含的按钮以及功能: • “选定对象”按钮 • 移动或更改控件的大小。 • “标签”按钮 • 在报表上创建一个标签控件,用来保存不希望用户改动的文本。
“域控件”按钮 • 在报表上创建一个字段控件,用来显示表字段、内存变量或其他表达式的内容。 • “线条”按钮、“矩形”按钮、“圆角矩形”按钮 • 分别用来在表单上绘制线条图形、矩形图形和圆角矩形。 • “图片/ActiveX绑定控件”按钮 • 在表单上用来显示图片或通用型字段的内容。 • 按钮锁定”按钮 • 允许添加多个相同类型的控件而不需要多次按该控件按钮。
10.2.1 报表的数据源和布局 • 1.设置报表数据源 • 步骤: • 打开一个已经创建的报表或用报表设计器创建一个新的报表。 • 在菜单上选择“显示”下的“数据环境”命令。 • 在“数据环境设计器”窗口中,单击鼠标右键,在弹出的快捷菜单中选择“添加表和视图”命令。 • 在“添加表和视图”对话框中选择需要添加的表或视图,单击“添加”按钮。
2.设置报表布局 • 报表的常用带区及其作用: • 标题 • 每张报表开头打印一次或单独一页。 • 页标头 • 每个页面打印一次。 • 细节 • 每条记录打印一次。 • 页注脚 • 每个页面下面打印一次。 • 总结 • 每张报表最后一页打印一次或单独占用一页。
组标头 • 数据分组时每组打印一次。 • 组注脚 • 数据分组时每组打印一次。 • 列标头 • 在分栏报表中每列打印一次。 • 列注脚 • 在分栏报表中每列打印一次。 • 3.调整带区高度 • 方法1: • 用鼠标选中某一带区标识栏,然后上下拖动该带区。
方法2: • 双击要调整高度的带区的标识栏,系统将显示一个对话框,在该对话框中,直接输入所需高度的数值,或者调整“高度”微调器中的数值。 • 选中微调器下面的“带区高度保持不变”复选框可以防止报表带区因容纳过长的数据或从中移去数据而改变报表带区的高度。
10.2.2 在报表中使用控件 • 1.标签控件 • 插入标签控件 • 单击“报表控件”工具栏中的“标签”按钮,在需要插入标签的位置单击、输入标签内容,在其他区域单击结束该控件的标签输入。 • 更改字体 • 选定要更改字体的控件,然后选择“格式”菜单中的“字体”,显示“字体”对话框。选定适当的字体单击“确定”按钮。
2.线条、矩形和圆角矩形 • 添加控件 • 单击“报表控件”工具栏上的“线条”、“矩形”或“圆角矩形”按钮,在报表中通过鼠标的拖放操作调整大小合适的相应控件。 • 更改样式 • 首先选定希望更改的图形,然后选择“格式”菜单下的“绘图笔”,再从“绘图笔”的子菜单中选择适当的大小或样式。
调整控件 • 选定控件,拖动控件四周的任意一个控点可以改变控件的宽度和高度。 • 选择多个控件 • 一是选定一个控件后,按住Shift键的同时再选定其他控件。 • 二是圈选,也就是在控件周围拖动以画出选择框,该方法便于选定相邻的控件。 • 设置控件布局 • 单击报表设计器工具栏上的“布局”工具栏按钮,或选择“显示”菜单中的“布局工具栏”命令打开或关闭“布局”工具栏。
3.添加域控件 • 方法: • 从“数据环境设计器”中添加域控件 • 当要添加的同控件的数据源为表或视图时,直接将相应字段从数据环境中拖到报表中。 • 使用“报表控件”工具栏中的“域控件” • 在“报表控件”工具栏上单击“字段”控件按钮,在需要插入控件的位置通过鼠标拖动来指定控件的位置和大小。 • 如果“表达式生成器”对话框中的“字段”框为空,说明没有设置数据源,应该向数据环境中添加表或视图。在 “报表表达式”对话框中设置该控件。
4.定义域控件的格式 • 方法: • 单击“格式”文本框后面的按钮,系统弹出“格式”对话框。 • 在“格式”对话框中,选择域控件的类型。 • 选定不同的类型,“编辑选项”区域的内容也会有所不同。 • 对域控件进行格式化可以选择“编辑选项”区域中的一些选项,如下表所示。
5.设置打印条件 • “打印条件”对话框可以设置表达式,根据表达式的值对一个对象进行条件打印,并且控制如何打印各信息带中的对象。 • 打印条件中的复选框 • 打印重复值该选项用于字段对象。 “是”表示打印重复值,“否”表示不打印重复值。 • 有条件打印包括三个复选框,如果在“打印重复值”区域中选择“否”,则第一个复选框“在新页/列的第一个完整信息带内打印”可用;如果在“打印重复值”区域中选择“是”,则该项自动选定。
如果不打印重复值,并且报表已进行数据分组,第二个复选框“当此组改变时打印”可用。当选定的组改变时,打印此字段。如果不打印重复值,并且报表已进行数据分组,第二个复选框“当此组改变时打印”可用。当选定的组改变时,打印此字段。 • 当细节带区的数据溢出到新页或新列时,应选择“当细节区数据溢出到新页/列时打印”复选框。 • 如果没有对象在打印,同时也没有其他对象位于同一水平位置上,请选择“若是空白行则删除”复选框。 • 可以输入表达式,或显示“表达式生成器”对话框,定义在打印字段之前要计算的表达式,请选择“仅当下列表达式为真时打印”。如果输入了表达式,除“若是空白行则删除”外,其他选项都不可用。
6.OLE对象 • 添加图片 • 单击“报表控件”工具栏中的“图片/ActiveX绑定控件”按钮,在报表的一个带区内单击并拖动鼠标拉出图文框,弹出“报表图片”对话框。 • 调整图片 • 添加到报表中的图片尺寸可能不适合报表设定的图文框。当图片与图文框的大小不一致时,就需要调整图片。主要有:裁剪图片、缩放图片,保留形状、缩放图片,填充图文框、图片居中。
对象位置 • 如果选择“浮动”,表示图片相对于周围控件的大小浮动。 • 如果选择“相对于带区顶端固定”,则可使图片保持在报表中指定的位置上,并保持其相对于带区顶端的距离。 • 如果选择“相对于带区底端固定”,则可以使图片保持在报表中指定的位置上,并保持其相对于带区底端的距离。
例如:在报表设计器中修改yg.frx文件。 • 操作步骤如下: • 单击工具栏上的“打开”,在“打开”窗口中的“文件类型”下选择报表,然后双击yg.frx,在报表设计器中打开。该报表是前面已经创建好的快速报表,包括“页标头”、“细节”和“页注脚”三个基本带区。 • 选择“报表”菜单中的“标题/总结”,在弹出的“标题/总结”对话框中选择“标题带区”和“总结带区”复选框,再按“确定”按钮。“标题”带区便出现在报表的顶部,“总结”带区出现在报表的尾部。 • 用鼠标选中“标题”带区标识栏(标识栏变黑),向下拖动扩展“标题”带区的空间。按同样的方法调整其他带区的空间,改变快速报表数据过密的格局。
单击“报表控件”工具栏上的“标签”按钮,在报表的“标题”带区上单击鼠标,此时出现一个闪动的文本插入点,输入“员工管理表”作为标题。单击“报表控件”工具栏上的“标签”按钮,在报表的“标题”带区上单击鼠标,此时出现一个闪动的文本插入点,输入“员工管理表”作为标题。 • 单击“报表控件”工具栏上的“选定对象”按钮,选定标题“标签”控件。在主菜单栏上单击“格式”菜单,选择“字体”。从字体对话框中选择一号粗体华文行楷。 • 单击报表设计器工具栏上的“布局工具栏”按钮,打开“布局”工具栏。选定标题“标签”,然后单击“布局”工具栏上的“水平居中”和“垂直居中”按钮,使其位于“标题”带区的中央位置。
在“页标头”带区中选定最左侧的“标签”控件“部门号”,按住Shift键的同时选定同一带区的其他几个“标签”控件,使它们同时被选中,将字体设置为五号宋体,同时向左拖到适当位置,扩大页边距。用同样的方法拖“细节”带区中的所有“域控件”并修改字体。在“页标头”带区中选定最左侧的“标签”控件“部门号”,按住Shift键的同时选定同一带区的其他几个“标签”控件,使它们同时被选中,将字体设置为五号宋体,同时向左拖到适当位置,扩大页边距。用同样的方法拖“细节”带区中的所有“域控件”并修改字体。 • 单击“报表控件”工具栏上的“线条”按钮,在“标题”带区下沿画两条水平线。在“标题头”带区的字段名标签控件下画一条水平线。 • 同时选定三条线,单击“布局”工具栏上的“相同宽度”按钮,使它们一般齐。然后选定第二条线,选择“格式”菜单下的“绘图笔”,在子菜单中选择“4磅”。
在“报表控件”工具栏中单击“图片/ActiveX绑定控件”按钮,在报表的标题带区左端单击并拖动鼠标拉出图文框。在“报表图片”对话框的“图片来源”区域选择“文件”,单击对话按钮选定一个图片文件water lilies.jpeg。选择“缩放图片,保留形状”保持图片完整并不变形,对象位置选择“相对于带区底端固定”。单击“确定”按钮,关闭“报表图片”对话框。 • 单击“常用”工具栏上的“打印预览”按钮,预览效果如图10.2所示。 • 单击“文件”菜单下的“另存为”,将yg.frx文件另存为ygksbb.frx。
10.3.1 设计分组报表 • 1.设置报表的记录顺序 • 数据环境设置索引 • 方法: • 选择“显示”菜单中的“数据环境”,或者单击“报表设计器”工具栏上的“数据环境”按钮,另外,也可以用鼠标右键单击报表设计器,从弹出的快捷菜单上选择“数据环境”。 • 数据环境设计器中用鼠标右键单击,从弹出的快捷菜单中选择“属性”,打开“属性”窗口。 • 在“属性”窗口中选择对象框中的“Cursorl”。 • 选择“数据”选项卡,选中“Order”属性,输入索引名,或者在索引列表中选定一个索引。
2.设计单级分组报表 • 操作方法: • 选择“报表”菜单中的“数据分组”,或者单击“报表设计器”工具栏上的“数据分组”按钮,另外,也可以右击报表设计器,从弹出的快捷菜单上选择“数据分组”。 • 在第一个“分组表达式”框内输入分组表达式,或者选择对话按钮,在“表达式生成器”对话框中创建表达式。 • 在“组属性”区域选定想要的属性。 • 选择“确定”按钮。
10.3.2设计多栏报表 • 1.设置“列标头”和“列注脚”带区 • 方法: • 选择“文件”菜单中的“页面设置”,弹出“页面设置”对话框。在“列”区域,把“列数”微调器的值调整为栏目数,将整个页面平均分成几部分。 • 2.添加控件 • 向列表添加控件,不要超过报表设计器中带区的宽度,否则可能使打印的内容相互重叠。
3.设置页面 • 在打印报表时,对“细节”带区中的内容系统默认为“自上向下”的打印顺序。这适合于大多数报表(除多栏报表)。 • 多栏报表采用“自上向下”的打印顺序,只能靠左边距打印一个栏目,页面上其它栏目空白。所以需要把打印顺序设置为“自左向右”打印。 • 单击“页面设置”对话框中的“自左向右”打印顺序按钮。
10.3.3报表输出 • 1.设置报表的页面 • 设置左边距 • 选择“文件”菜单中的“页面设置”,打开“页面设置”对话框,在“左页边距”框中输入边距数值。页面布局将按新的页边距显示。 • 选择纸张大小和方向 • 单击“页面设置”对话框中的“打印设置”按钮,打开“打印设置”对话框。可以从“大小”列表中选定纸张的大小。默认的打印方向为纵向,如果要改变纸张方向,可从“方向”区选择横向,单击“确定”按钮。
2.预览报表 • 为了确保报表正确输出,可以使用“预览”功能在屏幕上看最终的页面设计是否符合设计要求。 • 方法: • 选择“显示”菜单中的“预览”命令,或在“报表设计器”中单击鼠标右键并从弹出的快捷菜单中选择“预览”命令。 • 直接单击“常用”工具栏中的“打印预览”按钮。
3.打印输出报表 • 方法: • 单击“常用”工具栏上的“运行”按钮,或者选择“文件”菜单中的“打印”命令,或在“报表设计器”中单击鼠标右键并从弹出的快捷菜单中选择“打印”,系统将弹出“打印”对话框。 • 在命令窗口或程序中使用REPORT FORM〈报表文件名〉[PREVIEW]命令也可以打印或预览指定的报表。
再 见! 谢 谢!!