使用伪代码开发数据表维护屏幕

文章作者 100test 发表时间 2007:10:15 11:55:38
来源 100Test.Com百考试题网


  回想我们过去开发过的VisualFoxpro应用程序,尽管会发现各种不同的应用规模有大小、要求有高低、开发难点也各有不同,但这些不同的应用都有一个共同的特点:即据表维护屏幕(包括数据录入)的开发都是一个不可缺少的部分,而且占据了相当大的比重,花去了我们不少的开发时间与精力。因此对数据表维护屏幕(包括数据录入)的开发进行总结与研究是很有必要的。

  为了使数据表中所存储数据的准确与及时,并提供正确与及时的查询,必须对数据表进行人工维护(包括数据录入),因此必须为之开发数据表维护屏幕作为人机对话的界面。总结各种数据表维护屏幕,我们会发现它们都是大同小异的,既不会十分复杂但也不可能非常简单。一般的数据表维护屏幕都要求有新增(增加新记录)、编辑(记录修改)、删除(记录删除)以及漫游(指记录指针上移、下移、到顶、到底和各种查找记录定位)功能。另外数据表维护屏幕还必须对用户输入的数据进行合法性检查,特别是对输入关键字的合法性检查,我们一定要保持主关键字的完整性与外关键字的参考完整性不然将会对整个数据系统造成极大的混乱。请注意,尽管VisualFoxpro对主关键字的完整性与外关键字的参考完整性提供系统维护,但这只是对数据系统的安全性增加了最后一道防线,并不能替代在开发数据表维护屏幕中对输入关键字的合法性检查,要不然面对 着陌生的VisualFoxpro系统错误对话框,用户会不知所措的。

  由于对输入关键字的合法性检查是开发数据表维护屏幕中不可缺少的一部分增加了开发数据表维护屏幕的复杂性,因此有关数据表维护屏幕的代码不可能很简单,一个代码非常"简洁"的数据表维护屏幕其功能总是不健全的,在使用中总是要出问题的。那么如何才能减少开发数据表维护屏幕的时间与精力呢?本人的办法是使用伪代码。因为数据表维护屏幕的代码虽然比较复杂,但是它们都有很强的共性,我们可以预先编写一套可被各种不同的数据表维护屏幕套用的伪代码,以后编写数据表维护屏幕代码时就不再从零开始,而是从伪代码开始。伪代码虽然不能被直接编译运行,但面对着具体的数据表结构和应用要求,大部分开发人员都能轻松地把伪代码改写成正式代码。

  以下笔者向大家介绍本人编写的数据表维护屏幕伪代码,它由一个Custum类和一些Procdure构成。为了方便套用伪代码,笔者尽可能地把Form中的嵌入代码外移,在嵌入代码中使用do...。以下伪代码绝大部分无需修 梢阅美词褂茫栊薷牡慕鍪且恍〔糠郑庖恍〔糠钟炙坪跏羌虻サ摹?

  下面是使用伪代码设计数据表维护屏幕的具体步骤:

  1.先建立如下一个工作面表格
编 号工 作 面 名 称主 索 引 名 称注 释
1
2
3
4
...
16


  这个表格是对整个应用程序的,这里所说的工作面与我们平时所说的有些不一样,它把处于同一工作面但不同主索引的情况也作为不同的工作面,使 用不同的编号。

  2.根据工作面表格改写以下伪代码,使之成为可以编译与运行的正式代码。



{ 伪代码开始}
public theWorkStat
theWorkStat=CreateObject("WorkStat")

**== 以下工作状态类==**
define class WorkStat as custom
curWS=1
declare Ai[16],Or[16]

** 以下工作状态定义
**1
{
Ai[1]="A1" &.&. 工作面
Or[1]="O1" &.&.ORDER 序
Ai[2]="A2" &.&. 工作面
Or[2]="" &.&. 自然序,无主索引
...
**16
Ai[16]="A16"
Or[16]="O16"
}

func Get

retu curWS

endfunc

proc Set
para p
sele (Ai[p])
set order to (Or[p])
curWS=p
endproc


相关文章


关于VFP5中显示JPG图像
VFP6.0中实现记录删除后自动调整编号
VFP中对WIN32API函数的调用格式
Foxpro中DDE类函数的应用
使用伪代码开发数据表维护屏幕
如何在应用程序中修改FOXPRO数据表
在VFP的应用程序中实现超级链接
树形目录在 中的实现与应用
用VFP编制多媒体歌曲的点播器
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛