|
一Field Field name Type Width dec 1 银行名称 字符型 20 0 (索引) 2 地址 字符型 40 0 3 电话 数值型 8 0 4 邮编 数值型 6 0 5 注册日期 日期时间型 8 0 6 4 姓名 字符型 10 0 5 身份证号 字符型 20 0 6 开户日期 日期时间型 8 0 7 余额 数值型 10 2 8 开户银行 字符型 20 0 9 操作员代号 字符型 8 0 3、操作员信息表XML:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> Field Field name Type Width dec 1 姓名 字符型 10 0 2 操作员代号 字符型 8 0(索引) 3 密码 字符型 10 0 4、用户存取信息表 Field Field name Type Width dec 1 卡号 字符型 20 0(索引) 2 余额 数值型 15 2 3 摘要 字符型 4 0 4 借方 数值型 10 2 5 贷方 数值型 10 2 6 日期 日期时间型 8 0 7 操作员代号 字符型 8 0 三、系统功能模块设计 以下是对整个银行系统的功能模块图
四:应用程序的设计 根据以上所建立的模块,实现其具体的功能,并且应该给用户提供一个选择的界面,在每个界面内还应该有用户需要的操作功能,这就是以下要进行的表单设计和添加代码。 (一)表单设计 在本系统中主要只设计了到三个表单,即:主表单,高级管理员表单,普通操作员表单。其他的具体操作都采用的分页框设计,这样能使结构清晰,便于添加代码,这样避免了处理大量表单所带来的繁杂混乱的情况。 1、主表单:(mainform.scx) 为用户提供四个控件,即:普通操作员、高级管理员、帮助、退出,分别实现不同的功能。这个过程及调用表单的过程。例如:do from advancedfomr.scx 2、高级管理员表单:(advancedform.scx) 这个功能表单便是为高级管理员提供的一些操作,如:银行注册,操作人员刷新等。这一系列的操作都采用了分页框管理,将各功能模块组合在一起。要实现模块内的具体功能,调用改变此表单中分页框内的各具体功能属性即可。例如:在第二页(操作员刷新)中的修改功能的部分相关代码如下: if thisform.pageframe1.page2.修改.caption='修改' poss=.f. &&识别是添加还是修改,修改为.f. thisform.pageframe1.page2.n.value=recno() *将文本框变为可用状态,以便于修改 略 *改变按钮状态,避免误操作 thisform.pageframe1.page2.修改.caption='保存' thisform.pageframe1.page2.添加.caption='还原' thisform.pageframe1. refresh &&表单刷新 else &&执行保存操作 tableupdate(.t.) &&表单修改确认 *将文本框变为不可用状态 略 *恢复按钮 thisform.pageframe1.page2.修改.caption='修改' thisform.pageframe1.page2.添加.caption='添加' thisform.pageframe1.page2.text2.setfocus() *记录指针重新定位 n=recno() go n do case case recno()=1 thisform.pageframe1.page2.上页.enabled=.f. thisform.pageframe1.page2.下页.enabled=.t. case recno()=reccount() thisform.pageframe1.page2.上页.enabled=.t. thisform.pageframe1.page2.下页.enabled=.f. otherwise thisform.pageframe1.page2.上页.enabled=.t. thisform.pageframe1.page2.下页.enabled=.t. endcase messagebox('记录保存成功',0,'提示信息') endif thisform.refresh 3、普通操作员表单:(commonform.scx) 在这个表单中的操作相对来说比较多,采用分页框更是必要的了。编程思想中还考虑到针对不同的普通操作人员的操作,所以在操作人员进入具体的存、取款等操作时,应该输入自己的操作员代号和密码,不同的操作员应该对应自己所作过的操作。这便于高级管理员对银行人员和银行数据的管理。 (1)在存、取款操作中的基本思想为:先将卡号信息库中保存的余额提取出来,进行相应的存(加)、取(减)操作,再将结果替换回以前的余额,这样就达到存、取的实现。与此同时,还要对用户存取信息数据库进行追加一条新记录,保存当前所作的存、取操作。以下是存款操作的部分核心代码为:
|