程序员人生 网站导航

VFP基础教程 8.1 报表

栏目:FoxPro时间:2013-11-27 22:32:09

    一。报表:

    报表是vfp中的一种数据组织形式,我们通常利用报表,把从数据库表中提取出的数据打印出来。

    报表是由两个基本部分组成:数据源和数据布局。数据源指定了报表中的数据来源,可以是表,视图,查询或临时表;数据布局指定了报表中各个输出内容的位置和格式。报表从数据源中提取数据,并按照布局定义的位置和格式输出数据。

    报表中并不存储数据源中实际的数据的值,而只存储数据的位置和格式,这一点,和视图的特性有些相似。所以,每次打印时,打印出来的报表的内容不是固定不变的,会随数据库的内容的改变而改变。

    二。使用报表向导创建报表:

    创建报表就是定义报表的数据源和数据布局。"报表向导"是创建报表的最简单的途径。可通过回答一系列的问题来进行报表的设计,使报表的设计工作变得省时有趣。使用报表向导创建完成报表后,还可使用"报表设计器"打开该报表,对其进行修改和完善。

    1.打开"报表向导":在"项目管理器"的"全部"或"文档"选项卡中,选择"报表",单击"新建按钮",弹出"新建报表"对话框。在该对话框中,单击"报表向导"按钮,弹出"向导选取"对话框。

    在vfp中,提供两种不同的报表向导:一是"报表向导",针对单一的表或视图进行操作;二是"一对多报表向导",针对多表或视图进行操作。我们根据具体情况,选择相应的向导。这里假设我们操作的是单一的表,所以选择"报表向导",系统会按步骤弹出一系列对话框。

    2.步骤一:字段选取。在这个对话框中,选择要在报表中输出的字段。首先,单周"数据库和表"列表框右侧的按钮选择报表的数据源,然后选择所需的字段。如图71

Visual FoxPro基础教程完整版 


    3.步骤二:分组记录,如图72所示。

    在此对话框中,如果需要,可设置分组控制,最多设置三级分组。

    在选定一个字段后,单击"分组选项"按钮,打开"分组间隔"对话框,设置分组是根据整个字段还是字段的前几个字符,例如,"职工档案"表中,"编号"的前两位代表职工所在的部门,可设置按职工编号的前两位进行分组,如图73

    4.步骤三:选择报表样式,在此对话框中,可以设置报表的样式,有经营式,账务式,简报式,带区式和随意式5种,如图74


    5.步骤四:定义报表布局,在此对话框中,可以通过对"列数",字段布局,"方向"的设置来定义报表的布局。其中,"列数"定义报表的分栏数;"字段布局"定义报表是列报表还是行报表;"方向"定义报表在打印纸上的打印方向是横向还是纵向,如图75所示。

    如果在向导的步骤二设置了记录分组,则此处的"列数"和"字段布局"是不可用的。

    6.步骤五:排序记录,在此对话框中,可设置排序的字段,最多设置3个。
    7.步骤六:完成,这一步可设置报表的标题,可在离开报表向导前预览报表,可以选择退出报表向导的方式。

    三。报表的打印和预览:

    完成了报表的设计工作后,就可以准备进行报表的打印输出。在打印报表前,可先单击常用工具栏上的的"打印预览"按钮查看一下效果,如果有不符合要求的地方,可返回进行修改,直到满意为止。

    为了得到一份满意的报表打印文档,设计完报表后,常常需要设置报表的页面,例如,报表文档的页边距,纸张类型和布局等。

    1.设置报表页面:打开"报表设计器",单击"文件"→"页面设置",弹出"页面设置"对话框,可在此设置打印的列数,打印的区域,打印的顺序及左右页边距等。在该对话框中,单击"页面设置"按钮,会弹出"打印设置"对话框,可设置纸张的大小及打印的方向。在"打印设置"对话框中,单击"属性"按钮,弹出"属性"对话框,可进行高级页面设置和纸张大小的设置。

    2.打印报表:在"报表设计器"打开的情况下,报表的打印可通过选择"文件"→"打印"命令,"报表"菜单下的"运行报表"命令或者单击鼠标右键,在快捷菜单中选择"打印"命令来实现,也可以用快捷键ctrl+p实现。此时,屏幕上出现"打印"对话框,在该对话框中设置打印区域及打印份数等选项。

    四。在程序中或在命令窗口中调用报表:

    格式:
    report form 报表文件名 [范围][for 条件][heading 表头文本][preview][to printer][to file 文本文件]

    说明:

    1.打印的报表文件如果不在默认目录中,必须在报表文件名中指定路径。
    2.[范围]:指定要包含在报表中的记录范围,缺省的范围是"全部(all)"
    3.[for 条件]:如果包含此选项,只有for后面的条件为真时,才会打印报表中的记录。利用for可有条件地打印记录中的内容,而过滤掉不需要的记录。
    4.[heading 表头文本]:使用heading指定一个附加在每页报表上的页眉。
    5.[preview]:表示是用页面预览的方式在屏幕上显示报表,而不是通过打印机打印出来。
    6.[to printer]:把报表输出到打印机,打印到纸张上去。
    7.[to file 文本文件名]:将报表输出到指定的文本文件中,文本文件的默认扩展名为.txt。

Visual FoxPro基础教程完整版
------分隔线----------------------------
------分隔线----------------------------

最新技术推荐