FOXPRO在三峡工程信息管理中的应用
borwse titile nodelete noappend nomodity
(注:这条命令只能显示表的内容,不容许对表进行修改)
有时,表的字段名是西文字段名,或虽是中文字段,但表达的意思不易理解时,在浏览时需要给出易于识别的表头,这时就需要使用“:H=”的字段名修饰如下所示:
browse field name:h=“姓名”
(注:这里name是西文字段名,在显示时用“姓名”替换)
在BROWSE命令中加入NOMODIFY将锁定所有的字段,不容许修改。但通常的情况只要求锁定关键字段、关联字段,这时就不能用NOMODIFY,而要用“:W=.F.”字段名修饰功能。如下所示:
browse field name:h=“姓名”:w=.f.,
basic:h=“BASIC成绩”
(注:name字段不让修改
BROWSE的功能非常强大,读者可参看BROWSE的帮助提示。灵活应用BROWSE的子句以及一些修饰功能,可以实现极其强大的数据库的录入、编辑、修改功能。
4 应用程序的检索的实现
(1)按例关系查询
在开发环境或命令环境中,进行查询采用功能强大的RQBE是最优的选择,用他建立单表或多表查询均比较简单,介绍这方面内容的资料较多,在此,限于篇幅,不再赘述。由于在运行库中未集成RQBE特性,在开发应用时,请不要包含该特性。但用RQBE功能生成的SQL语句可用于应用系统中,减少编制查询模块占用的时间。将SQL语句中的字句的内容设置成变量,用“宏替换”功能可以构成某种程度上的通用查询模块。
(2)表达式生成器
在运行时能用表达式生成器(调用方法是GETEXPR TO)生成过滤条件,将查询的记录过滤出来,在浏览窗口或报表中显示输出。
(3)定制查询屏幕
按例关系查询以及表达式生成器均需要用户有一定的FOXPRO运用基础。对于普通用户,需要构造出傻瓜是样的查询屏幕,用户填几个字符串或数值等,就可以找出相应的记录。
5 应用程序的结果输出
(1)BROWSE
BROWSE功能强大,即既可用于信息的录入,又可作为信息输出的载体。
(2)报表
FOXPRO的报表与FOXBASE中的报表相比增加了表格线的功能,更符合中文报表的习惯,制作报表较方便。但报表中的对象的定位稍显麻烦,编制—个报表所花的时间较多,并且,所定制的报表是相刘于某种大小的纸张的,纸张大小改变后不能自适应。
在FOXBASE以及在DOS下的FOXPRO中,要打印报表,通常是用“@.……SAY.……”语句编制程序实现,所生成的报表为文字型的报表。这种报表可以直接送往打印机输出,也可以存入一文本文件中,经其他字处理程序处理后输出。在早期,编制程序生成报表是非常麻烦的,系统开发中,大量的时间是用来编制报表程序。为了加快报表程序的编制,我们在实践中用DELPHI编制了自动生字符报表程序的工具。这些工具中,既有简单报表的快速生成接口,也有生成复杂纵横表头报表程序的工具。
由于CCED2000使得在WINDOWS图形用户界面输出字符型的报表非常方便,并且用我们自己的工具生成文字制表符型的报表的速度要比FOXPRO生成的图形报表的速度快得多,所以即便是现在,我们大量的报表仍采用的是字符型的报表。若文字报表已存入文件AUTOPRN.PRN中,用CCED2000打开文字报表的方法如下所示:
filename=sys(5)+sys(2003)+“autoprn.prn”
run c:cced2000cced2000 & filename
(3)图表
在FOXPROW中,可以直接从数据库中提取数据生成柱状图、饼图等图表。方法是用COPY命令将图表中要用到的字段复制到一个临时数据库中,然后调用 FOXGRAPH向导即可。例如数据库ABC.DBF中含有“月份”、“产值”等10个字段,要求用“月份”、“产值”字段的值生成一柱状图。完成要求所需的代码如下所示:
use abc
copy to temp.dbf field 月份,产值
use temp
do(-foxgraph)
(4)用EXCEL生成报表
EXCEL可以直接打开FOXPROW2.5B的数据库进行后处理。要在FOXPRO中能调用EXCEL,要求在DOS的PATH路径中有EXCEL的搜索路径。例如用EXCEL打开数据库ABC.DBF(要求在FOXPRO中,先关闭该数据库)的代码如下:
filename=sys(5)+sys(2003)+“abc.dbf”
run excel & filename
6 结语
为了加快应用系统的开发,我们自编了几个自动生成工具,使得开发一个应用的时间从原来的几个月的时间缩短半个月~1个月,开发效率成倍提高。桌面数据库仍有着广泛的市场,FOXPRO的应用系统开发前景广阔。
- 上一篇:嵌入式系统数字图像采集接口电路设计
- 下一篇:论信息技术在外语教学中的应用