銀行賬戶管理系統(tǒng)_第1頁
銀行賬戶管理系統(tǒng)_第2頁
銀行賬戶管理系統(tǒng)_第3頁
銀行賬戶管理系統(tǒng)_第4頁
銀行賬戶管理系統(tǒng)_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

第一章引言1.1設計思想本系統(tǒng)選題為銀行賬戶管理系統(tǒng),是模擬銀行賬戶的管理開發(fā)的。設計的指導思想是一切為使用者著想,界面要美觀大方,操作盡量簡單明了,而且作為一個實用的管理系統(tǒng)要有良好的容錯性,在出現(xiàn)誤操作時能盡量及時地給出警告,以便用戶及時地改正。計算機的資源是受到限制的,因此要充分利用VisualFoxPro的功能,設計出功能強大的軟件,同時要盡可能地減少對系統(tǒng)資源的占用。鑒于本系統(tǒng)的特殊性,還需要本程序有良好的保密性。具體表現(xiàn)為:系統(tǒng)應符合銀行賬戶管理的規(guī)定,滿足銀行相關人員日常使用的需要,并達到操作過程中的直觀、方便、實用安全等要求;系統(tǒng)采用模塊化程序設計方法,即便于系統(tǒng)功能的各種組合和修改,又便于未參與開發(fā)的技術維護人員補充、維護;系統(tǒng)應具備數(shù)據(jù)庫維護功能,及時根據(jù)用戶需求進行數(shù)據(jù)的添加、刪除、備份等操作;盡量采用現(xiàn)有軟硬軟硬件環(huán)境及先進的管理系統(tǒng)開發(fā)方案,從而達到充分利用現(xiàn)在有資源,提高系統(tǒng)開發(fā)水平和應用效果的目的。1.2本課題的研究意義:通過該銀行賬戶管理系統(tǒng)使銀行的賬戶管理工作系統(tǒng)化、規(guī)范化、自動化,從而達到提高賬戶管理效率的目的,使辦公人員可以輕松快捷地完成對賬戶管理的任務。1.3系統(tǒng)設計目的:系統(tǒng)設計是整個計算機信息管理系統(tǒng)開發(fā)過程中最重要的技術環(huán)節(jié),我們要在充分理解用戶需求的基礎上,用計算機來實現(xiàn)新系統(tǒng)的信息處理邏輯模型中規(guī)定的輸入、輸出及內(nèi)部處理等多項功能,由不同模塊來完成數(shù)據(jù)流程圖中的各個加工,組織各種數(shù)據(jù)文件的存儲,達到用戶需求所規(guī)定的各項性能指標,并提出經(jīng)濟合理結(jié)構(gòu)良好和高質(zhì)量的解決新的計算機信息管理系統(tǒng)中各個需要處理的問題的解決方法的系統(tǒng)目標模型。為有利于及時掌握和監(jiān)控銀行賬戶的開立和使用情況,建立和完善賬戶管理系統(tǒng),利用信息技術手段,提高管理成效,必須建立全國統(tǒng)一的銀行賬戶管理系統(tǒng)。中國人民銀行將統(tǒng)一開發(fā)和建立全國統(tǒng)一銀行賬戶管理系統(tǒng),系統(tǒng)將按照集中統(tǒng)一、分級管理的原則實施管理,其主要功能包括:信息審核、信息儲存、信息查詢、信息統(tǒng)計、信息監(jiān)測、開戶登記管理等及其他擴展或附加的功能。1.4開發(fā)和運行環(huán)境選擇開發(fā)工具:VisualFoxPro6.0運行環(huán)境:Windows9X、WindowsNT或Windows20001.5計算機軟件開發(fā)概述銀行賬戶管理系統(tǒng)的建立是一個復雜的計算機軟件工程的實施過程。計算機軟件開發(fā)又是一項專業(yè)性和技術性都很強的工作,它有一套自己的開發(fā)原則和開發(fā)方法。遵循這些原則和方法,開發(fā)出來的計算機軟件就可以做到功能針對性強、系統(tǒng)運行穩(wěn)定可靠、操作簡便、容易維護和擴充;否則,就可能事倍功半,甚至導致計算機軟件開發(fā)的半途而廢。第二章VisualFoxPro平臺簡介VisualFoxPro的產(chǎn)生和發(fā)展VisualFoxPro6.0(VFP6.0)中文版是Microsoft公司推出的VisualFoxPro地最新版本。VFP6.0是一個復雜地開發(fā)工具,其復雜性首先就表現(xiàn)在它的集成環(huán)境上。網(wǎng)絡環(huán)境下的VFP保持了所需的特定的函數(shù)和命令。單用戶的程序只要稍作修改就可在網(wǎng)絡上運行。MicrosoftVisualFoxPro也是為高效地開發(fā)跨平臺的應用程序而設計的。在同類XBASE產(chǎn)品中,VisualFoxPro使用方便的特點使其能被稱為是可視化的,而其功能強大的特點使其不失FoxPro的真諦,在數(shù)據(jù)庫應用開發(fā)人員間享有盛譽。VisualFoxPro6.0特點與其他數(shù)據(jù)庫管理系統(tǒng)相比,VisualFoxPro6.0有用戶的普通性、功能的完整性、工具的易用性和規(guī)模的可伸縮性等特點。用戶的普通性勿庸置疑,VisualFoxPro6.0作為數(shù)據(jù)庫工具擁有眾多的開發(fā)者。由于它與傳統(tǒng)的XBASE數(shù)據(jù)庫兼容,因此了解和使用它的傳統(tǒng)用戶數(shù)量龐大。它安裝容易,運行環(huán)境要求不高,入門和學習方便,最易于用戶接受。功能的完整性經(jīng)過幾個版本的升級,VisualFoxPro6.0比傳統(tǒng)的XBASE數(shù)據(jù)庫有了質(zhì)的飛躍。在數(shù)據(jù)管理方面,它基本具備了大型SQL數(shù)據(jù)庫的特征(如視圖、關鍵字、關系、觸發(fā)器、存儲過程等);在數(shù)據(jù)庫設計方面,它提供了各種數(shù)據(jù)庫組件的設計向?qū)Ш蛨D形化、智能化的設計過程。其獨特的優(yōu)點是提供了各種數(shù)據(jù)庫用戶界面的可視化設計工具,提供了自含的編程語言和調(diào)試工具,提供了查詢數(shù)據(jù)庫的默認表格工具等??偠灾琕isualFoxPro6.0盡量使得用戶不依靠任何其他軟件工具就能完成一個較復雜數(shù)據(jù)庫應用系統(tǒng)的全部開發(fā)工作。工具的易用性VisualFoxPro6.0的各種工具之所有容易使用,是因為它以方便和規(guī)范開發(fā)者的工作為目標,充分考慮了數(shù)據(jù)庫應用軟件的特點。窗口化、圖形化、智能化、模板化、向?qū)Щ?、參?shù)化和通用化是VisualFoxPro6.0工具的共同特征。VisualFoxPro的功能VisualFoxPro是為數(shù)據(jù)庫結(jié)構(gòu)和應用程序開發(fā)而設計的功能強大的面向?qū)ο蟮沫h(huán)境。無論是組織信息、運行查詢、創(chuàng)建集成的關系型數(shù)據(jù)庫系統(tǒng),還有為最終用戶編寫功能全面的數(shù)據(jù)管理應用程序。VisualFoxPro都可以提供管理數(shù)據(jù)所需的工具,可以在應用程序或數(shù)據(jù)庫開發(fā)的任何一個領域中提供幫助。VisualFoxPro所具有的速度、能力和靈活性,是普通數(shù)據(jù)庫管理系統(tǒng)無法比擬的,它把我們帶入了一個XBASE新時代。一、 增強的項目及數(shù)據(jù)庫管理二、 更簡便、快速、靈活的應用程序開發(fā)三、 提供真正的面向?qū)ο蟪绦蛟O計VisualFoxPro仍然支持標準的面向過程的程序設計方式,但更重要的是它現(xiàn)在提供真正的面向?qū)ο蟪绦蛟O計的能力。借助 VisualFoxPro的對象模型,可以充分使用面向?qū)ο蟪绦蛟O計的所有功能,包括繼承性、封裝性、多態(tài)性和子類。四、 可以與多個開發(fā)者一齊工作如果有VisualFoxPro先前版本的文件,只要打開他們,就會出現(xiàn)VisualFoxPro轉(zhuǎn)換對話框??梢园阉臄?shù)據(jù)源移到VisualFoxPro的表中,如果有電子表格或文本文件中的數(shù)據(jù),比如MicrosoftExcel及Word,使用VisualFoxPro,可以方便地實現(xiàn)數(shù)據(jù)共享。五、 可以開發(fā)客戶/服務器解決方案,增強客戶/服務器性能六、 多語言編程由于VisualFoxPro支持英語、冰島語、日語、朝鮮語、繁體漢語多種語言的字符集,因此,能在幾個領域提供對國際應用程序開發(fā)的支持。第三章銀行賬戶管理系統(tǒng)需求分析需求分析是數(shù)據(jù)結(jié)構(gòu)設計的第一個階段,也是非常重要的一個環(huán)節(jié)。在這個階段主要是收集基本數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)以及數(shù)據(jù)處理的流程,組成一份詳盡的數(shù)據(jù)字典,為以后進一步設計打下基礎。3.1銀行賬戶信息化發(fā)展國內(nèi)外現(xiàn)狀需求國外把銀行賬戶管理作為一項基礎性工作,有其自身的特點,沒有制定專門的關于銀行賬戶管理的法律、法規(guī),但涉及到銀行賬戶管理方面的規(guī)定,散見于國家的有關法律之中。相對我國而言,長期以來習慣應用專門業(yè)務管理辦法來規(guī)范銀行賬戶的開立、使用,其他法律很少涉及銀行賬戶的管理內(nèi)容。為加強對銀行賬戶的管理;借鑒國外銀行賬戶管理方面有益的做法和國際的通行做法,及時制定新的銀行賬戶管理系統(tǒng),以適應我國經(jīng)濟、金融發(fā)展的現(xiàn)實需要。我國目前實行銀行賬戶分類管理,將銀行賬戶分為單位存款賬戶和個人存款賬戶兩大類,對不同賬戶實行不同的管理辦法。單位存款賬戶分為基本存款賬戶、一般存款賬戶、專用存款賬戶、臨時存款賬戶四類。為方便客戶,允許單位和個人異地開立賬戶。同時,我國對銀行賬戶實行嚴格的開戶許可制度,對各類賬戶都規(guī)定了詳細的開戶條件。實施賬戶集中管理,目的是要把好銀行賬戶關口。同時還頒布了現(xiàn)金管理條例,對提取大額現(xiàn)金做出了嚴格限制;發(fā)布了支付管理辦法,對異常的大額獎金劃轉(zhuǎn)實行報告制度。盡管銀行賬戶管理有比較全面的規(guī)定,但目前實施情況還并不令人滿意。金融機構(gòu)違規(guī)開戶、違規(guī)為客戶提取現(xiàn)金等現(xiàn)象還仍大量存在,個人存款實名制度的執(zhí)行也很不徹底。出現(xiàn)這些問題的原因是多方面的。主要是因為,金融法律法規(guī)不健全,金融管理機制不完善,金融機構(gòu)缺乏依法經(jīng)營的自我約束,金融監(jiān)管還不到位,社會法制和信用觀念淡薄等。比如,現(xiàn)行銀行賬戶管理,仍分散在各地人民銀行和單位金融機構(gòu)中,沒有形成聯(lián)動效應。再比如,一些金融機構(gòu)為拉存款和擴展業(yè)務,不惜犧牲制度的要求,放松賬戶管理,對不具備條件的開戶和提取現(xiàn)金,視而不見,大開綠燈。為此,我國目前正在構(gòu)建全新的銀行賬戶管理系統(tǒng),加大賬戶管理力度。新系統(tǒng)的顯著標志是,充分利用現(xiàn)代化網(wǎng)絡技術,將各金融機構(gòu)的賬戶信息聯(lián)系起來,形成全國統(tǒng)一信息,并與同城清算系統(tǒng)連接。按照集中統(tǒng)一、分級管理的原則,全國統(tǒng)一的銀行賬戶管理系統(tǒng)分為兩個級次。一是總行級次。設立賬戶數(shù)據(jù)管理終端。中國人民銀行總行根據(jù)需要,調(diào)用可疑賬戶。二是分支級次。各分支行建立賬戶管理數(shù)據(jù)庫,集中存儲所轄地區(qū)真實完整的銀行賬戶信息,對基本賬戶或臨時賬戶的開立、使用和變更等實施監(jiān)控,并按規(guī)定查詢跨地區(qū)信息,提供異地開戶服務。對銀行賬戶不實行網(wǎng)上審批方式的人民銀行縣支行,可通過計算機終端與中心支行數(shù)據(jù)庫聯(lián)接,實施賬戶管理。各地商業(yè)銀行負責審查客戶開戶資料的真實、完整性,負責銀行賬戶的申報和部分賬戶的審批并備案。有條件與該系統(tǒng)聯(lián)接的商業(yè)銀行,可通過終端辦理銀行賬戶的開立、撤銷及變更處理(基本賬戶、臨時賬戶的開立、變更必須經(jīng)過授權(quán)),并可根據(jù)其管理權(quán)限,對其本級或下級行的各類賬戶信息進行查詢、下載、統(tǒng)計和分析。全國銀行賬戶管理系統(tǒng)的框架圖(3—1)3.2現(xiàn)行研究存在問題及解決方法隨著社會經(jīng)濟形勢的迅速發(fā)展變化,原有銀行賬戶管理系統(tǒng)已不能完全適應當前的要求,賬戶管理工作的問題也日漸暴露出來。目前賬戶管理存在的問題主要集中于幾個方面:一是專有存款賬戶濫用情況比較嚴重,一般存款賬戶變相取現(xiàn)仍然存在。二是賬戶管理缺乏統(tǒng)一性、指導性。三是賬戶管理缺乏約束力、缺乏力度。因此,新的銀行賬戶管理系統(tǒng)還應當借鑒國際上的通行做法,以適應我國經(jīng)濟、金融發(fā)展的現(xiàn)實需要。具體解決方法有:第一, 抓源頭,把握好賬戶開立的準入關。第二, 嚴格對開立銀行賬戶存款人的身份確認。第三, 銀行賬戶管理應從“嚴進寬管”轉(zhuǎn)變?yōu)椤皩掃M嚴控”。第四, 確立銀行與存款人的平等自愿選擇原則。第五, 充分體現(xiàn)銀行與存款人開立、使用銀行賬戶的權(quán)利與義務對等原則。第六, 必須將個人存款賬戶納入銀行賬戶管理范圍。第七, 強化賬戶監(jiān)管理念,完善賬戶管理手續(xù),實施多方位的管理系統(tǒng)。3.3功能需求經(jīng)過本系統(tǒng)的設計,最終達到廣大用戶的需要,實現(xiàn)有效的系統(tǒng)管理,能方便的提供用戶信息修改、開戶、銷戶、辦卡、掛失卡、換卡、存款、取款以及管理員、取款機信息管理,并能即時打印所需的報表及輸出,對系統(tǒng)提供的維護和幫助也是簡捷、有效的。3.4外接口需求一、用戶界面采用Windows的通用圖形界面,對用戶友好,且必須對鼠標和鍵盤提供支持界面的設計應遵循如下規(guī)則:界面要具有一致性,界面規(guī)范應遵循MSWindows軟件界面的規(guī)范;提供簡單的錯誤處理;提供信息反饋,用多種信息提示用戶當前軟件運行狀態(tài)、軟件界面元件的功能;操作可逆,其運作可以是單個的操作,或是一個相對獨立的操作序列;設計良好的聯(lián)機幫助;顯示啟動畫面,畫面簡潔明快,富有現(xiàn)代氣息,不能太過花硝;應遵循國家關于計算機詞匯的特點,用詞應當精練準確,沒有歧義,圖形的意義明朗。二、 硬件接口支持一般的PentiumH或更高檔微機、筆記本電腦。三、 軟件接口運行Windows9x/me/2000/NT,且具有WIN32API的操作系統(tǒng)之上。四、 故障處理正常使用時不應出錯,若運行時遇到不可恢復的系統(tǒng)錯誤,也必須保證數(shù)據(jù)庫完好無損。3.5性能需求一、 數(shù)據(jù)精確度二、 時間特性三、 適應性3.6軟件屬性需求一、 正確性、可靠性、完整性二、 效率、易使用性三、 可維護性、可測試性、復用性四、 可理解性、可移植性、互聯(lián)性第四章銀行賬戶管理系統(tǒng)功能設計4.1基本功能及目標銀行賬戶管理系統(tǒng)的基本功能:一是審核和管理功能。系統(tǒng)按規(guī)定對基本存款賬戶、臨時存款賬戶和特定專用存款賬戶的開立及其他進行審核,確保賬戶信息的真實和完整,特別是確定基本存款賬戶的惟一性。對開戶許可證的核發(fā)、使用、掛失和補發(fā),實行統(tǒng)一管理,并將存款人的所有開戶信息記載在開戶許可證上,以便存款人、銀行及有關部門及時全面了解有關情況。二是信息存儲、查詢和統(tǒng)計功能。系統(tǒng)通過網(wǎng)絡申報的一般存款賬戶、專用存款賬戶的信息,已核準的基本存款賬戶、臨時存款賬戶和特定專用存款賬戶的信息,以及錄入的賬戶開立、撤銷主變更信息,集中存儲和統(tǒng)一管理。根據(jù)需要和授權(quán),系統(tǒng)提供賬戶信息查詢服務。按不同的口徑,統(tǒng)計各類賬戶數(shù)量、賬戶明細情況,以及賬戶流量與流向等信息。三是信息監(jiān)測功能。系統(tǒng)可與票據(jù)交換系統(tǒng)、現(xiàn)代化支付系統(tǒng)聯(lián)接,實現(xiàn)賬戶數(shù)據(jù)的合規(guī)性對比,用于監(jiān)測未審核批準或未申報的賬戶,實現(xiàn)對所有銀行賬戶的全面監(jiān)測和管理。四是其他附帶功能。為支付信用信息查詢系統(tǒng)、異常支付監(jiān)測系統(tǒng)等其他系統(tǒng)提供數(shù)據(jù)接口,擴展系統(tǒng)功能??傊?,建立全國統(tǒng)一的銀行賬戶系統(tǒng),將實現(xiàn)對全國所有單位和個人賬戶信息的共享,將賬戶的管理、使用、監(jiān)控和服務功能有機地結(jié)合起來,這對規(guī)范金融秩序,強化社會信用,提高金融管理水平將起到重要作用。4.2系統(tǒng)主要功能根據(jù)系統(tǒng)需求分析,銀行賬戶管理系統(tǒng)需要完成的功能主要有:?管理員信息管理;?用戶信息修改、開戶、銷戶;?辦卡、掛失卡、換卡;?存款、取款;?取款機信息管理;?報表輸出、報表打印。4.3主要功能模塊的規(guī)則根據(jù)需求,本系統(tǒng)將設計以下幾個主要功能模塊:主程序設計;數(shù)據(jù)庫的設計:數(shù)據(jù)庫概念結(jié)構(gòu)設計;數(shù)據(jù)庫邏輯結(jié)構(gòu)設計;用戶信息查詢窗口;1.系統(tǒng)菜單。4.4靈活應用VisualFoxPro數(shù)據(jù)庫管理系統(tǒng)VisualFoxPro6.0數(shù)據(jù)庫管理系統(tǒng)是一個關系數(shù)據(jù)庫管理系統(tǒng)的系統(tǒng)軟件,是XBASE系列軟件中的佼佼者,它在流行的XBASE系列軟件的基礎上提供了諸多新功能,技術有所超越,大大改善了計算機用戶環(huán)境,對數(shù)據(jù)的組織,數(shù)據(jù)庫的建立及應用系統(tǒng)的開發(fā)更為方便,受到眾多用戶的青睞。一、 VisualFoxPro6.0系統(tǒng)提供了一個由菜單驅(qū)動、輔以命令對話框的簡潔友好、功能全面的界面。二、 VisualFoxPro6.0系統(tǒng)提供了豐富多樣的可視化工具,使得剪切、刪除、拷貝、粘貼、字符串、查找和替換、取消、恢復等編輯操作方便快捷,為程序或文本的編輯提供了方便靈活的操作手段。三、 VisualFoxPro6.0系統(tǒng)可以方便地存儲、檢查和處理服務器平臺上的關鍵信息。也可對FoxPro生成的應用程序向下兼容。等等。(在此不一一列舉)

第五章銀行賬戶管理系統(tǒng)模塊設計通過對用戶需求分析、系統(tǒng)功能設計,我們可以分析出該銀行賬戶管理系統(tǒng)的功能模塊圖(如圖5—1)。圖5—1銀行賬戶管理系統(tǒng)功能模塊圖5.1主程序設計本系統(tǒng)根據(jù)系統(tǒng)功能設計,主要包括了知識庫、數(shù)據(jù)庫、模型庫、方法庫,對銀行賬戶管理、用戶信息查詢、取款機管理等進行了合理、有序的考慮。本系統(tǒng)主程序設計簡單,就上述這幾點進行簡單的編譯,分別實現(xiàn)了各自的子功能。5.2數(shù)據(jù)庫的設計在VisualFoxPro6.0中,數(shù)據(jù)庫指的是可以存儲一個或多個表(.DBF文件)及視圖的關系數(shù)據(jù)庫,所謂的關系數(shù)據(jù)庫就是多個表的集合,每個表通過形成一定關系的公共字段與另外的表相聯(lián)系。一般來說數(shù)據(jù)庫可按下列步驟進行設計:(1) 確定需要的表。著手把信息分成各個獨立的主題,每個主題對應一個表。(2) 確定所需字段。確定每個表中要保存哪些信息,一個信息為一個字段。(3) 確定表之間的聯(lián)系。值得注意的是在創(chuàng)建表時,必須確保一個表中的每個字段都要直接描述該表的主題,每張表應盡可能收集所需的全部信息,如果存在多張表保存同類信息的情況,應該將所有和同一主題相關的信息合并到一個表中。數(shù)據(jù)庫系統(tǒng)設計時應在全面考慮的前提下,尤其應該仔細考慮用戶的各種需求,避免浪費人力和物力。數(shù)據(jù)庫需求分析是數(shù)據(jù)庫結(jié)構(gòu)設計的第一階段。這個階段主要是收集數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)以及數(shù)據(jù)處理的流程,組成一份詳盡的數(shù)據(jù)字典,為以后進一步設計打下基礎。在仔細調(diào)查銀行賬戶管理過程的基礎上,我們得到本系統(tǒng)所處理的數(shù)據(jù)流程如圖5-2所示。圖5-2數(shù)據(jù)流程圖針對本實例,通過對銀行賬戶管理的內(nèi)容和數(shù)據(jù)流程分析,我們設計的數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)如下:?用戶普通信息表。包含所有用戶的信息,數(shù)據(jù)項有:賬號、用

戶姓名、密碼、身份證、總金額、狀態(tài)、住址、開戶時間。?用戶卡信息表。包含的數(shù)據(jù)項有:賬號、卡號、卡密碼金額、狀態(tài)。?取款機信息表。包含的數(shù)據(jù)項有:取款機ID號、安裝地點、安裝時間以及拆除時間。?取款機存取款信息表。包含的數(shù)據(jù)項有:取款機ID號、用戶賬號、用戶卡號、存取款時間、存取款金額、存取款摘要、總金額。?用戶銀行存取款信息表。包含的數(shù)據(jù)項有:操作員(管理員)號碼、用戶賬號、用戶卡號、存取款時間、存取款金額、存取款摘要、總金額。?用戶存取款信息總表。包含的數(shù)據(jù)項有:用戶賬號、存取款時間、存取款地點、存取款金額、存取款摘要、總金額。?管理員信息表。包含的數(shù)據(jù)項有:用戶、口令。有了上面的數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)項和數(shù)據(jù)流程,我們就能進行下面的數(shù)據(jù)庫設計。5.2.1數(shù)據(jù)庫概念結(jié)構(gòu)設計這一設計階段是在需求分析的基礎上,設計出能夠滿足用戶需求的各種實體,以及它們之間的關系,為后面的邏輯結(jié)構(gòu)設計打下基礎。根據(jù)上面的設計規(guī)劃本實例中的實體有:管理員實體、賬戶實體、賬戶普通信息實體、賬戶卡信息實體、取款機實體。實體和實體之間的關系E-R圖如圖5-3所示。圖5-3實體之間關系E-R圖5.2.2數(shù)據(jù)庫邏輯結(jié)構(gòu)設計我們需要將上面的數(shù)據(jù)庫概念結(jié)構(gòu)轉(zhuǎn)化為VisualFoxPro數(shù)據(jù)庫系統(tǒng)所支持的實際數(shù)據(jù)模型,也就是數(shù)據(jù)庫的邏輯結(jié)構(gòu)。在上面的實體以及實體之間的基礎上,形成數(shù)據(jù)庫中的表格以及各個表格之間的關系。注意,本系統(tǒng)中的賬戶相關信息以“某某銀行”為例。如銀行賬戶使用19位數(shù)字,卡號使用19位數(shù)字。銀行賬戶管理系統(tǒng)數(shù)據(jù)庫中各個表格的設計結(jié)果如下面的幾個表格所示。每個表格表示在數(shù)據(jù)庫中的一個表。表5-1為用戶基本信息表。表5-1 USER用戶基本信息表列名數(shù)據(jù)類型可否為空說明用戶賬號CHARACTER(19)NOTNULL賬號(索引)用戶姓名CHARACTER(8)NULL用戶姓名用戶密碼CHARACTER(6)NULL用戶密碼用戶身份證CHARACTER(18)NULL用戶身份證總金額NUMERIC(10,2)NULL總金額現(xiàn)在狀態(tài)CHARACTER(4)NULL現(xiàn)在狀態(tài)用戶住址CHARACTER(20)NULL用戶住址開戶時間DATENULL開戶時間(在此所有的表不一一列出)5.3用戶查詢表單的設計用戶可以通過本模塊查詢自己的存款記錄,并給出各次操作后的存款余額,以便用戶對照。在實際生活中表現(xiàn)為用戶的存折記錄。視圖的創(chuàng)建在項目管理器中選擇“數(shù)據(jù)庫”faccountfLocalViews(本地視圖),點擊“New(新建)”-“NewView(新建視圖)”后彈出視圖設計器并為視圖添加要用的表。如為本設計中的視圖添加表userall。選擇視圖設計器下方的“字段”選項卡,為視圖設置可以顯示的字段,如本設計中將表中的字段全部選中?!奥?lián)接”選項卡是在視圖含有多個表時設置表之間的聯(lián)系用的,本視圖只有一個表,故不需要設置。接下來設置“篩選”選項卡,視圖可以設置篩選條件,達到根據(jù)不同條件顯示不同數(shù)據(jù)的功能。本設計中要求視圖獲得不同的參數(shù)后顯示不同的數(shù)據(jù),即當?shù)玫侥迟~號參數(shù)時,顯示該賬號的存取款記錄。這里設置本視圖的參數(shù)為par,在填寫篩選條件時要在參數(shù)前加問號(?)。在這里設好了參數(shù),但實際上它并沒有聲明。要聲明視圖參數(shù),請選擇VisualFoxPro的主菜單中“查詢一視圖參數(shù)”命令,此時彈出聲明參數(shù)的對話框,填入par,選擇字符型,這樣視圖參數(shù)的設置就完成了。選擇“更新條件”選項卡,選擇將字段全部更新。設計完成后將視圖存儲為“grcx”。這里需要注意,視圖是包含在數(shù)據(jù)庫中的,不能獨立存在。到此為止,視圖設計就完成了。查詢模塊的設計首先為表單設計數(shù)據(jù)環(huán)境,并設置聯(lián)系關系。如圖5—7所示。

視圖)的表名、字段組、字段名、字段的功能。這樣添加的控件不用設計數(shù)據(jù)源,它將直接與數(shù)據(jù)環(huán)境中的表(視圖)或字段相連。5.4主菜單的設計當系統(tǒng)的各種工作窗口設計完成后,就要設計系統(tǒng)主菜單。一、 菜單功能:本系統(tǒng)的主菜單為菜單l.mpr,其功能如表5-2所示:菜單名子菜單菜單項功能賬戶管理doformcheckerl用戶查詢doformchecker2ATM取款機模擬doformatm系統(tǒng)幫助版本信息doformabout退出系統(tǒng)表5-2主菜單菜單1功能其中,“退出系統(tǒng)”菜單選項的程序代碼如下:*ct.prgnYesNo二MessageBox(“確定要退出嗎?”4+48+256,“提示”)ifnYesNo=6onshutdowncleareventcleartableallclosedatabasequitelsenodefaultendif二、調(diào)用菜單調(diào)用菜單使用如下命令:do菜單1.Mpr5.5主要功能模塊的組裝完成系統(tǒng)各功能部件的設計后,便可以使用項目管理器組裝系統(tǒng)的各功能部件。本系統(tǒng)項目組裝操作,有以下一些內(nèi)容:一、 建立項目文件建立項目文件“銀行賬戶管理系統(tǒng).pjx”。二、 添加數(shù)據(jù)打開項目管理器,選擇“數(shù)據(jù)”選項卡,按“添加”按鈕,將設計好的所有表及數(shù)據(jù)庫添加到“銀行賬戶管理系統(tǒng).pjx”項目文件中。如圖:5-2所示:三、 添加表單文檔(步驟同上)四、 添加類庫五、 添加應用程序六、 設置項目信息內(nèi)容打開“項目管理器”,打開“項目”菜單,選擇“項目信息”設置系統(tǒng)開發(fā)的信息。七、 設置系統(tǒng)菜單及相關位圖文件八、 連編可獨立執(zhí)行文件打開項目管理器,按“連編”按鈕,再選擇“連編可執(zhí)行文件”單選按鈕,再輸入可執(zhí)行文件名“銀行賬戶管理系統(tǒng)”,即可編譯成一個可獨立運行的銀行賬戶管理系統(tǒng).exe文件。第六章銀行賬戶管理系統(tǒng)程序設計程序設計是將由算法流程圖或形成化語言表示的系統(tǒng)功能模塊圖中的每個模塊的詳細設計方案,翻譯成用某種計算機程序設計語言表示的可由計算機執(zhí)行的源程序代碼。在進行本系統(tǒng)的開發(fā)設計中,就個人的想法,開發(fā)了以下幾個典型的程序,無論是從設計思想還是從實現(xiàn)屬性等各方面講,我個人認為都是比較新穎的。同時,也從中悟出了一些道理。6.1賬戶管理模塊創(chuàng)建本模塊的功能在于管理員通過簡單的操作,可以實現(xiàn)銀行賬戶管理的一般功能。如存款、取款、開戶、銷戶、修改信息、辦卡、掛失卡等等,內(nèi)容豐富,較繁瑣。因此,是本系統(tǒng)設計的重點。表單首先創(chuàng)建新的表單“賬戶管理.scx”。鑒于本表單內(nèi)容多,這里用頁框來實現(xiàn)一個表單多頁面的顯示。首先向表單中添加控件PageFrame(頁框),設置頁框的PageCount屬性為7,即頁框中包含7個子頁面。在頁框上單擊鼠標右鍵,選擇“編輯”進入頁框的編輯。為表單設置Init事件代碼:publiclastuser,lastcard*聲明全局變量lastuser,lastcardseleblanklastuser=alltrim(bank.最后一個賬號)lastcard=alltrim(bank.最后一個卡號)*將表bank中的值賦給相應變量存款存款功能是賬戶管理中必不可少的一項功能,其模擬過程與現(xiàn)實生活一樣,由管理員輸入賬戶的賬號或卡號、存款金額。此子頁面的界面如圖6-1所示。

-IL.幡尸管理-IL., , J/,—/——J,,—存葺I職款I開戶?I銷戶'I修改信息'I辦卡?I掛失卡:諭入,帳號和存款金額總存款i:諭入,帳號和存款金額總存款i圖6-1存款子頁面各主要控件的具體代碼在此不詳細列出,但其功能是對賬號和卡號?《?.進行存款操作。其間,管理員有時要求一次性清除所有輸入的信息,因而設詈一個..:..-“清空”按鈕,將各個文本框中的內(nèi)容全部清空。其Click事件代碼為:this.parent.text1.value=this.parent.text2.value=this.parent.text3.value=this.parent.text4.value=*清空各文本框內(nèi)容this.parent.textl.setfocus*將光標焦點設置到文本框1中取款取款過程與存款類似,因取款的重要性而導致該代碼段必須包含大量的糾錯功能,同時它也實現(xiàn)了從賬號或卡號中提款的功能,在該賬號的存取款記錄中也留下了相關的記錄。開戶在創(chuàng)建數(shù)據(jù)庫時,創(chuàng)建了Bank.dbf表,它的內(nèi)容即為銀行的最后一個賬號和最后一個卡號,用于賬號的生成及卡號的生成。在開戶之前,先獲得最后一個賬號到全局變量lastuser中,將賬號加1后成為新用戶的賬號,同時要更新Bank.dbf中的數(shù)據(jù)。銷戶有開戶當然就有銷戶,它提供的功能是取消用戶的賬號。本段設計為管理員操作,因此輸入的項很簡單。只需要管理員輸入賬號,系統(tǒng)即自動顯示該賬號的姓名及存款余額,管理員核對后可進行注銷操作。如果該賬號還有余額,系統(tǒng)要提示管理員進行相應操作,防止錯誤操作。注銷完成后不但該賬號被刪除,賬號對應的卡號也被刪除。修改信息當用戶希望修改賬號密碼時,我們用此頁面的功能來實現(xiàn)。這里設計賬號只能修改密碼,其他項不能修改。其界面如圖6-2所示。圖6-2修改信息子頁面辦卡在現(xiàn)在的銀行中,均有辦卡的服務,它的過程與開戶類似,只是不需要輸入那么多信息,只要有賬號就可以辦卡。此子頁面的界面如圖6-3所示。圖6-3辦卡子頁面本界面模擬生活中的實際操作,由管理員輸入賬號,用戶輸入賬戶密碼。確認后辦理新卡即生成新的卡號,用戶為卡設置卡密碼。最后確認后辦卡完成。掛失卡當用戶的卡丟失后,可以向銀行提出掛失。本頁面便是提供了此項功能。掛失后該卡不能在銀行或者是任何的取款機中使用。而當用戶找到卡后,可向銀行申請該卡恢復使用。此子頁面的界面如圖6-4所示。圖6-4掛失卡子頁面為表單添加一個EidtBox(編輯框)控件,設置其Value屬性為要提示管理員的句子。如本代碼段中為“請檢查用戶的身份證,賬戶必須輸入卡號并攜帶身份證來掛失!”最后在表單中添加一個“退出”按鈕,該按鈕的Click事件代碼為:thisform.release整個賬戶管理模塊的設計到此就全部完成了。6.2取款機模擬設計各個銀行均在特殊地點設置了取款機方便用戶,本模塊的功能是模擬ATM取款機的取款過程設計的。其基本過程是,用戶輸入取款機號、卡號、密碼,通過驗證后進入交易,用戶可以查看余額,取出現(xiàn)金。系統(tǒng)自動更新用戶賬戶及卡中的存款余額,并在用戶存取款信息中作記錄,在ATM機的存取款信息中作記錄。首先為表單設置數(shù)據(jù)環(huán)境,并將各表的相關字段連接起來,以便引用。接著向表單中添加控件,如圖6-5所示:localcardid,pswd,atmidatmid二alltrim(bol.value)cardid二alltrim(this.parent.textl.value)pswd二alltrim(this.parent.text2.value)ifempty(atmid)orempty(cardid)orempty(pswd)*判斷輸入信息是否完整message(“對不起,信息不完整,無法進行交易!”,48)elseselectcardlocalforalltrim(card.用戶卡號)=cardidifeof()message(“對不起,沒有這個卡號!”)elseifcard.卡密碼〈〉pswdmessage(“密碼不正確,請重試!”,48)*密碼驗證falg=flag+1ifflag>=3*輸入密碼錯誤3次后釋放本表單,生活中的取款機操作為直接吞卡thisform.releaseelsethisform.text2.value=""endifelseifcard.現(xiàn)在狀態(tài)=“停用”*當卡號被掛失時不能取款messagebox(“對不起,本卡已被掛失,如有疑問,請向銀行詢問!”,48)elsethis.paren.text3.value二card.總金額*顯示用戶存款余額this.parent.text4.enabled二.t.endifendifendifendif本段代碼的功能是判斷用戶的卡號和密碼,當與銀行數(shù)據(jù)庫符合且該卡未被掛失時進入取款機操作。其中包含當卡被盜時必要的防范手段?!叭】睢卑粹o的click代碼就不詳細列出,其功能是根據(jù)用戶輸入的款數(shù)進行取款操作,其中包含必要的取款數(shù)與存款數(shù)大小的比較判斷。6.3系統(tǒng)維護模塊創(chuàng)建6.3.1表單圓形效果異形窗口在VisualBasic、Delphi程序中經(jīng)??梢砸姷?,其實在VFP程序中同樣可以做到,本表單程序運行后,在屏幕上顯示圓形窗口,運行界面如圖6-6所示:熟懸本余娩應注意以下幾點:L?遂行肘請不要同時打升過多的窗小2、:?請ii意多個按件的配合使用1.3^措ii慈用戶身份的驗證密碼是否.使用正確— 圖6-6圓形表單一、 實現(xiàn)程序說明通過API函數(shù)SetWindowRen[實現(xiàn)異型表單功能,SetWindowRgn函數(shù)能夠?qū)⒋翱谠O置成任意形狀。該函數(shù)調(diào)用格式如下:IntSetWindowRgn(HWNDhWnd,HRGNhRgn,BOOLbRedraw)其中各參數(shù)的含義如下:hWnd:欲改變窗口的句柄。hRgn:窗口的顯示區(qū)域。bRedraw:指明窗口在被改變顯示區(qū)域之后是否需要重繪,通常情況下該值為真。通過上面對SetWindowRgn函數(shù)的介紹,在VFP中要想直接得到有關窗口的情況是很困難的,必須利用API例程庫。VFP有自帶的API例程庫“Foxtool.fll”提供了對窗口操作的相關函數(shù)。本表單中能夠用到的例程有_WOnTop()和—WhToHWnd()兩種,其中_WOnTop()用來獲得頂層窗口的句柄,_WhToHWnd()返回指定窗口的句柄。二、實現(xiàn)運行表單的源代碼與注釋:設置表單和控件事件代碼,其中表單Form1的Load事件代碼為:*注冊API函數(shù)declareintegerSetWindowRgninwin32api,integer,integer,integerdeclareintegerCreatRoundRectRgninwin32api,integer,integer,integer,integer,integer,integer*注冊VFP的API力、例程庫SETLIBRARYTO“Foxtools.fll”*設置表單的大小thisform.top=50thisform.left=30thisform.height=500thisform.width=500表單Form1的Activate事件代碼為:thisform.label1.top=thisform.top+thisform.height/2-thisform.labell.heightthisform.labell.left二mand1.top=thisform.height-3*mandl.left二thisform.left+(mand.width)/2*上述代碼主要是用來在圓形窗口中準確定位各控件的位置topWindow=_WOntop()*獲得頂層窗口hWnd=_whToHwnd(topwindow)*獲得頂層窗口的句柄CRN=CreateRoundRectRgn(0,0,500,500,500,500)*建立圓形窗口,如果要做其他形狀窗口,只需調(diào)用不同的建立區(qū)域的函數(shù)。SetWindowRgn(hWnd,CRN,.T.)command1控件的click事件代碼為:thisform.release6.3.2文字推拉顯隱的動畫效果一、實現(xiàn)程序說明本程序主要利用VisualFoxPro中的定時器控件和RGB()函數(shù)實現(xiàn)文字的顏色大小變化,從而實現(xiàn)了類擬于推拉鏡頭、淡入淡出的動畫效果。函數(shù)RGB()的聲明如下:RGB(nRedValue,nGreenValue,nBlueValue)其中nRedValue,nGreenValue,nBlueValue分別代表紅色、綠色、藍色成份的值,它們的大小變化范圍都是0s256,該函數(shù)返回一個單一的色彩值,該返回值可作為其他控件的前景色(即Forecolor屬性)或背景色(即Backcolor屬性)的值。二、實現(xiàn)代碼與注釋在表單Forml的Init事件中寫入以下代碼:publicred,green,bluered=192green=192blue=192在表單Form1的click過程中寫入以下代碼:thisform.beginTimer.enable二.f.thisform.stopTimer.enable二.t.在“l(fā)ink1”的click過程中寫入以下代碼:thisform.beginTimer.enable二.f.thisform.stopTimer.enable二.t.在“l(fā)ink2”的click過程中寫入以下代碼:thisform.beginTimer.enable二.t.thisform.stopTimer.enable二.f.在label1的click過程中寫入以下代碼:thisform.click&&在標簽區(qū)域中按下鼠標右鍵也執(zhí)行窗體的click過程在定時器控件beginTimer的timer過程中加入以下代碼:ifred>0red=red-1endififblue>0blue=blue-1endififgreen<225green=green+1elsethisform.beginTimer.enable二.f.&&顏色達到要求后關閉beginTimerthisform.label1.forecolor=rgb(red,green,blue)ifthisform.label1.fontsize<70&&字體逐漸變大,直到70為止thisform.label1.fontsize二th

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論