一Field Field name Type Width dec
1 銀行名稱 字符型 20 0 (索引)
2 地址 字符型 40 0
3 電話 數(shù)值型 8 0
4 郵編 數(shù)值型 6 0
5 注冊日期 日期時間型 8 0
6
4 姓名 字符型 10 0
5 身份證號 字符型 20 0
6 開戶日期 日期時間型 8 0
7 余額 數(shù)值型 10 2
8 開戶銀行 字符型 20 0
9 操作員代號 字符型 8 0
3、操作員信息表
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 余額 數(shù)值型 15 2
3 摘要 字符型 4 0
4 借方 數(shù)值型 10 2
5 貸方 數(shù)值型 10 2
6 日期 日期時間型 8 0
7 操作員代號 字符型 8 0
三、系統(tǒng)功能模塊設(shè)計
以下是對整個銀行系統(tǒng)的功能模塊圖
銀行管理系統(tǒng) 普通操作員 高級管理員 存取款 開戶銷戶 用戶修改密碼 卡號掛失 當(dāng)天數(shù)據(jù)備份 銀行注冊 查詢歷史存取信息 瀏覽及打印數(shù)據(jù)庫 操作員刷新
四:應(yīng)用程序的設(shè)計
根據(jù)以上所建立的模塊,實(shí)現(xiàn)其具體的功能,并且應(yīng)該給用戶提供一個選擇的界面,在每個界面內(nèi)還應(yīng)該有用戶需要的操作功能,這就是以下要進(jìn)行的表單設(shè)計和添加代碼。
(一)表單設(shè)計
在本系統(tǒng)中主要只設(shè)計了到三個表單,即:主表單,高級管理員表單,普通操作員表單。其他的具體操作都采用的分頁框設(shè)計,這樣能使結(jié)構(gòu)清晰,便于添加代碼,這樣避免了處理大量表單所帶來的繁雜混亂的情況。
1、主表單:(mainform.scx)
為用戶提供四個控件,即:普通操作員、高級管理員、幫助、退出,分別實(shí)現(xiàn)不同的功能。這個過程及調(diào)用表單的過程。例如:do from advancedfomr.scx
2、高級管理員表單:(advancedform.scx)
這個功能表單便是為高級管理員提供的一些操作,如:銀行注冊,操作人員刷新等。這一系列的操作都采用了分頁框管理,將各功能模塊組合在一起。要實(shí)現(xiàn)模塊內(nèi)的具體功能,調(diào)用改變此表單中分頁框內(nèi)的各具體功能屬性即可。例如:在第二頁(操作員刷新)中的修改功能的部分相關(guān)代碼如下:
if thisform.pageframe1.page2.修改.caption=‘修改‘
poss=.f. &&識別是添加還是修改,修改為.f.
thisform.pageframe1.page2.n.value=recno()
*將文本框變?yōu)榭捎脿顟B(tài),以便于修改
略
*改變按鈕狀態(tài),避免誤操作
thisform.pageframe1.page2.修改.caption=‘保存‘
thisform.pageframe1.page2.添加.caption=‘還原‘
thisform.pageframe1. refresh &&表單刷新
else &&執(zhí)行保存操作
tableupdate(.t.) &&表單修改確認(rèn)
*將文本框變?yōu)椴豢捎脿顟B(tài)
略
*恢復(fù)按鈕
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)
在這個表單中的操作相對來說比較多,采用分頁框更是必要的了。編程思想中還考慮到針對不同的普通操作人員的操作,所以在操作人員進(jìn)入具體的存、取款等操作時,應(yīng)該輸入自己的操作員代號和密碼,不同的操作員應(yīng)該對應(yīng)自己所作過的操作。這便于高級管理員對銀行人員和銀行數(shù)據(jù)的管理。
(1)在存、取款操作中的基本思想為:先將卡號信息庫中保存的余額提取出來,進(jìn)行相應(yīng)的存(加)、?。p)操作,再將結(jié)果替換回以前的余額,這樣就達(dá)到存、取的實(shí)現(xiàn)。與此同時,還要對用戶存取信息數(shù)據(jù)庫進(jìn)行追加一條新記錄,保存當(dāng)前所作的存、取操作。以下是存款操作的部分核心代碼為:




