家庭理財管理系統(tǒng)-VB畢業(yè)設計_第1頁
家庭理財管理系統(tǒng)-VB畢業(yè)設計_第2頁
家庭理財管理系統(tǒng)-VB畢業(yè)設計_第3頁
家庭理財管理系統(tǒng)-VB畢業(yè)設計_第4頁
家庭理財管理系統(tǒng)-VB畢業(yè)設計_第5頁
免費預覽已結(jié)束,剩余45頁可下載查看

下載本文檔

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

文檔簡介

1、目 錄第一章 緒論.21.1 選題的 背景.21.2系統(tǒng)概述.2第二章 管理信息系統(tǒng)概述32.1管理信息系統(tǒng)現(xiàn)狀.32.2管理信息系統(tǒng)開發(fā)方法介紹.4第三章 系統(tǒng)調(diào)研及可行性分析.63.1系統(tǒng)調(diào)研.63.2可靠性分析概述.6 3.3技術(shù)可行性分析7第四章 系統(tǒng)分析與總體設計84.1系統(tǒng)需求分析84.2系統(tǒng)體系結(jié)構(gòu)設計.84.3開發(fā)工具的 選擇.10第五章 數(shù)據(jù)庫設計11第六章 系統(tǒng)詳細設計146.1登錄窗體和系統(tǒng)主界面設計146.2基本信息管理模塊設計176.3理財信息管理模塊設計.246.4數(shù)據(jù)統(tǒng)計管理模塊設計.276.5用戶管理模塊設計29第七章 論文總結(jié)30致 謝31參考文獻32附錄32

2、家庭理財管理系統(tǒng)【摘要】家庭理財系統(tǒng)可以有效地記錄和管理家庭的 收支情況,合理規(guī)劃和支配家庭資金,是家庭理財?shù)?好幫手.后臺數(shù)據(jù)庫使用Access,前臺開發(fā)工具使用Visual Basic.本系統(tǒng)采用目前比較流行的 ADO數(shù)據(jù)訪問技術(shù),并將每個數(shù)據(jù)庫表的 字段和操作封裝到類中,從而成功地將面向?qū)ο蟮?程序設計思想應用到數(shù)據(jù)庫應用程序設計中.這也是本系統(tǒng)的 特色和優(yōu)勢.【關鍵詞】家庭理財管理系統(tǒng),Access數(shù)據(jù)庫,Visual Basic,管理信息系統(tǒng) 第一章 緒 論1.1 選題的 背景學習計算機知識的 目的 在于更加準確、快捷的 解決現(xiàn)實生活中的 各種問題.我們只有不斷的 更新和完善自己的

3、知識、在實踐中積累經(jīng)驗,才能做出好的 軟件為社會服務,為使用者提供便利.在當今的 社會,可以說是信息技術(shù)的 發(fā)展時代,在社會的 方方面面無不涉及到各種信息的 處理.信息是人們對客觀世界的 具體描述,是人們進行交流與聯(lián)系的 重要途徑.人類社會就處在一個對信息進行有效合理的 加工中.它將促進整個社會的 發(fā)展.隨著社會信息技術(shù)的 提高,計算機已被廣泛應用于當今社會的 各個領域,成為推動社會發(fā)展的 首要技術(shù)動力.在軟件技術(shù)的 應用中,軟件的 開發(fā)技術(shù),尤其是應用型軟件產(chǎn)品的 開發(fā)技術(shù)成了 重中之重.不斷開發(fā)適應用戶需求、市場需要的 新型軟件產(chǎn)品,參與市場競爭,獲取最大利潤是全球信息企業(yè)追求的 目標.家

4、庭理財管理系統(tǒng)正是一個非常實用的 應用型軟件產(chǎn)品,我們不談它的 經(jīng)濟利益,單說它的 應用范圍就是十分廣泛的 ,每個家庭都需要理財,盡可能的 提高家庭收入的 利用率.我想計算機的 作用就是輔助人們完成那些煩瑣的 體力勞動和腦力勞動,使人們從勞動中解脫出來,今天我所設計的 家庭理財管理系統(tǒng)就是可以有效地管理家庭的 收入和開支.1.2系統(tǒng)概述1.2.1、本課題的 研究意義目前市面上流行的 家庭理財管理系統(tǒng)很少,因此對于每個家庭來說,具有其特殊性,因此需要設計一個操作方便,功能實用,操作方便,簡單明了 的 家庭理財管理系統(tǒng).1.2.2、本論文的 內(nèi)容及作者主要任務(1)內(nèi)容:本系統(tǒng)具體包括以下基本功能

5、:基本信息的 添加、修改、刪除和查詢.基本信息包括銀行信息管理、收入分類管理和支出分類管理等.此功能為理財管理和數(shù)據(jù)統(tǒng)計模塊提供依據(jù).理財信息的 添加、修改、刪除和查詢.理財信息包括日常收支信息、銀行往來信息和銀行賬戶信息.數(shù)據(jù)統(tǒng)計模塊包括日常收支統(tǒng)計、銀行交易統(tǒng)計和家庭資產(chǎn)統(tǒng)計等功能. (2)作者的 主要任務本人獨立完成了 此課題的 研究與開發(fā),包括調(diào)研、分析、設計、編碼、測試、文檔編寫等內(nèi)容.第二章 管理信息系統(tǒng)概述2.1管理信息系統(tǒng)現(xiàn)狀管理信息系統(tǒng)(米IS)是一門邊緣學科,集管理科學、信息科學、系統(tǒng)科學、現(xiàn)代通信技術(shù)和電子計算機技術(shù)于一體.1985年,管理信息系統(tǒng)創(chuàng)始人,明尼蘇達大學卡爾

6、森管理學院的 著名教授戴維斯(Gordon.B.Davis)給出了 一個具有代表性的 定義:“管理信息系統(tǒng)是一個利用計算機硬件和軟件,手工作業(yè)、分析、計劃、控制和決策模型以及數(shù)據(jù)庫的 用戶機器系統(tǒng).它能提供信息支持企業(yè)或組織的 運行、管理和決策功能.”隨著網(wǎng)絡技術(shù)的 出現(xiàn),管理信息系統(tǒng)又有了 新的 必恭必敬,基于網(wǎng)絡的 管理信息系統(tǒng)不斷出現(xiàn),管理信息系統(tǒng)的 概念模型也發(fā)生了 相應的 變化,許多學者對管理信息系統(tǒng)給出了 新的 定義.例如勞頓認為:“管理信息系統(tǒng)是一個基于計算機的 信息系統(tǒng),它通過收集、處理、存儲和擴散信息,來支持組織的 管理、決策、合作、控制、分析活動,并使之可視化.”因此,我們

7、可以看出,管理系統(tǒng)系統(tǒng)具有幾個基本含義:(1)管理信息系統(tǒng)不是一個單純的 軟件系統(tǒng),而是一個人機系統(tǒng),由人和機器協(xié)同工作.管理信息系統(tǒng)在支持企業(yè)或組織的 各項管理活動中,管理人員負責將基礎數(shù)據(jù)及時地輸入到計算機中,計算機則根據(jù)企業(yè)或組織中的 各層管理人員的 要求對基礎數(shù)據(jù)進行加工處理,并將所得到的 信息輸出.計算機不斷地與最終用戶進行著信息的 交換,但在對數(shù)據(jù)的 加工處理過程中又需要人的 適當干預.(2)管理信息系統(tǒng)的 管理過程就是對數(shù)據(jù)進行懼、存儲、加工處理、傳遞,并產(chǎn)生信息的 過程,因此數(shù)據(jù)是管理信息系統(tǒng)的 靈魂.管理信息系統(tǒng)運用了 數(shù)據(jù)庫的 技術(shù),對基礎數(shù)據(jù)進行統(tǒng)一規(guī)劃、存儲,供各層管理

8、人員使用,從而實現(xiàn)了 數(shù)據(jù)的 一致和共享.(3)管理信息系統(tǒng)可以解決企業(yè)或組織所面臨的 問題.例如,管理信息系統(tǒng)可以處理企業(yè)產(chǎn)生經(jīng)營活動的 全過程,可以解決組織中數(shù)據(jù)處理效率問題,也可以解決財務管理決策過程等.管理信息系統(tǒng)應具有如下幾個功能.(1)數(shù)據(jù)處理功能:數(shù)據(jù)處理是管理信息系統(tǒng)最基本的 功能,它包括對各種類型數(shù)據(jù)的 收集、加工處理、傳遞、存儲等工作.(2)實測功能:通過對數(shù)據(jù)的 加工處理,可以隨時了 解各部門的 實際運行情況,如各生產(chǎn)車間今天生產(chǎn)的 產(chǎn)品數(shù)量、銷售部接受的 訂單等.(3)預測功能:通過運用一定的 數(shù)學方法和預測模型,對過去的 數(shù)據(jù)進行分析,就可能對未來可能發(fā)生的 情況進行

9、預測,為高級管理人員進行管理決策提供依據(jù).(4)控制功能:通過信息的 反饋可以對整個企業(yè)生產(chǎn)經(jīng)營的 各個部門、各個環(huán)節(jié)的 運行情況進行監(jiān)測、協(xié)調(diào)、控制,保證系統(tǒng)的 正常運行.(5)輔助決策功能:通過對數(shù)據(jù)的 加工處理,可以快速地獲取對決策有影響的 信息,從而為合理的 配置企業(yè)的 各項資源,做出最佳的 決策提供科學的 依據(jù).目前,管理信息系統(tǒng)的 應用已經(jīng)非常廣泛,隨著計算機技術(shù)、網(wǎng)絡技術(shù)和通信技術(shù)的 發(fā)展,管理信息系統(tǒng)的 功能也日趨完善,并朝著智能化、網(wǎng)絡化、集成化等方向發(fā)展.如辦公自動化(OA)、電子商務(EC)、專家系統(tǒng)(ES)、計算機集成制造系統(tǒng)(CI米S).2.2、管理信息系統(tǒng)開發(fā)方法介

10、紹目前,常用的 管理信息系統(tǒng)的 開發(fā)方法有生命周期法、原型法和面對對象的 開發(fā)方法.下面僅對原型法和面對對象的 開發(fā)方法進行簡單的 描述.(1)原型法:原型法(Prototyping 米ethod)是20世紀80年代發(fā)展起來的 ,旨在改變生命周期法的 缺點的 一種系統(tǒng)開發(fā)方法.原型法的 基本思想首選根據(jù)用戶的 要求,由用戶和開發(fā)者共同確定系統(tǒng)的 基本要求和主要功能,利用系統(tǒng)快速生成工具,建立一個系統(tǒng)模型.再在此基礎上與用戶交流,將模型不斷補充,修改完善,如此反復,最終直至用戶和開發(fā)者都比較滿意為止,就形成了 一個相對穩(wěn)定、較為理想的 管理信息系統(tǒng).原型法的 開發(fā)過程采用原型法開發(fā)管理信息系統(tǒng)可

11、以分為如下幾個階段:A、確定用戶的 基本需求.由用戶提出對新系統(tǒng)的 基本要求,如功能、基本界面形式、所需的 數(shù)據(jù)、應用范圍、運行環(huán)境等,開發(fā)者根據(jù)這些信息估算出開發(fā)該系統(tǒng)所需的 費用,并建立簡明的 系統(tǒng)模型.B、開發(fā)初步的 原型系統(tǒng).系統(tǒng)開發(fā)人員根據(jù)用戶的 要求建立原型系統(tǒng),但該系統(tǒng)只是一個初步的 、不成熟的 系統(tǒng),從系統(tǒng)的 工作效率上看也是不完善的 .其主要目的 是為了 描述開發(fā)者所理解的 用戶的 基本需求.C、修改、評價原型系統(tǒng).將建造好的 原型系統(tǒng)交給用戶,并投入試運行,用戶將使用過程中發(fā)現(xiàn)的 問題一一記錄下來,并與開發(fā)人員進行交流.開發(fā)人員針對這些問題不斷地對系統(tǒng)進行修改、擴充與完善,

12、直至用戶滿意為止.D、形成最終的 管理信息.對用戶滿意的 原型系統(tǒng)進行進一步的 開發(fā),不斷補充、完善,最終形成一個適用的 管理信息系統(tǒng).原型法的 優(yōu)缺點原型法的 優(yōu)點是開發(fā)周期短,費用較少,同時可以較有效地避免因開發(fā)者和用戶的 認識隔閡所產(chǎn)生的 失敗,其缺點是系統(tǒng)的 開發(fā)缺乏統(tǒng)一的 規(guī)劃和開發(fā)標準,難以對系統(tǒng)的 開發(fā)過程加以控制.原型法一般適用于開發(fā)規(guī)模不大、不太復雜或需求經(jīng)常發(fā)生變化的 系統(tǒng).(2)面向?qū)ο蟮?開發(fā)方法面向?qū)ο?Object Oriented)的 技術(shù)于20世紀80年興起,隨后廣泛地應用于計算機技術(shù)的 幾乎所有領域.面向?qū)ο蟮?技術(shù)中最重要的 概念是對象.面向?qū)ο笫腔趩栴}對

13、象的 自底向上的 一種系統(tǒng)開發(fā)方法.在開發(fā)過程中,分析和設計階段獨立于程序設計語言,信息系統(tǒng)模型設計好后,最終用具體的 程序設計語言、數(shù)據(jù)庫或硬件來實現(xiàn).面向?qū)ο蠓ㄗ钪饕?特點是對對象為基礎,對象是分析問題和解決問題的 核心.面對對象法的 開發(fā)過程面對對象法的 開發(fā)過程一般分為四個階段:A、認識客觀世界(如一個企業(yè))中的 對象以及行為,分別獨立設計各個對象的 實體.B、分析對象之間的 聯(lián)系和相互之間所傳遞的 信息,由此構(gòu)造客觀世界(企業(yè))所對應的 信息管理系統(tǒng)的 模型.C、由信息系統(tǒng)的 模型轉(zhuǎn)換成計算機軟件系統(tǒng)的 模型.D、由計算機軟件系統(tǒng)的 模型再轉(zhuǎn)化成一個現(xiàn)實系統(tǒng).面向?qū)ο蠓ǖ?優(yōu)缺點:

14、面向?qū)ο蠓ǖ?優(yōu)點是便于幫助分析者、設計者和用戶清楚地表達抽象概念,互相進行交流;交流特定的 軟件工具模塊,直接地完成了 從對象的 描述到軟件體系結(jié)構(gòu)之間的 轉(zhuǎn)換,避免了 其它的 方法在開發(fā)過程的 客觀世界描述和軟件結(jié)構(gòu)不一致性和復雜性問題,便利系統(tǒng)開發(fā)簡單、統(tǒng)一,開發(fā)周期短,費用低.面向?qū)ο蠓ǖ?主要缺點與原型法一樣,因此這種方法也不適用于開發(fā)大的 、復雜的 系統(tǒng).本系統(tǒng)在開發(fā)過程中具體是采用了 原型法和面向?qū)ο髢煞N方法相結(jié)合的 開發(fā)思路,力求在開發(fā)過程中盡量吸收這兩種方法的 長處,而克服它們的 短處.第三章 系統(tǒng)調(diào)研及可行性分析3.1、系統(tǒng)調(diào)研正式開發(fā)管理信息系統(tǒng)之前進行調(diào)研是非常必要的

15、,其必要性主要表現(xiàn)在以下幾個方面.(1)明確用戶的 要求,以根據(jù)調(diào)查結(jié)果進行可行性分析,確認系統(tǒng)的 開發(fā)是否可行.(2)提出新系統(tǒng)的 人員并不都是系統(tǒng)研究人員,有些人對于的 功能和處理數(shù)據(jù)的 方法沒有明確的 認識.它們只是根據(jù)自己業(yè)務工作的 需要提出了 要求,系統(tǒng)開發(fā)人員要對此進行詳細的 調(diào)查和分析,確認用戶的 要求可以通過現(xiàn)有的 計算機技術(shù)實現(xiàn),保證開發(fā)的 管理信息系統(tǒng)的 功能與用戶提出的 要求相吻合.(3)企業(yè)的 現(xiàn)行系統(tǒng)可能是手工系統(tǒng),也可能是使用和計算機的 系統(tǒng),無論是何種情況,都要詳細地調(diào)查現(xiàn)行系統(tǒng)中信息處理的 具體情況,系統(tǒng)內(nèi)部功能結(jié)構(gòu),以便設計出一個合理的 、好的 新系統(tǒng)邏輯模型

16、,為新系統(tǒng)的 設計工作打好基礎,保證整個系統(tǒng)開發(fā)的 質(zhì)量.總之,必要對現(xiàn)行系統(tǒng)進行詳細的 調(diào)查,明確用戶需求,保證開發(fā)的 新系統(tǒng)的 功能與用戶的 要求相吻合,避免耗費大量的 人力、物力、財力,新系統(tǒng)的 開發(fā)卻失敗的 悲劇發(fā)生.3.2、可靠性分析概述可靠性分析是在用戶的 要求和系統(tǒng)調(diào)研的 基礎上進行的 ,對新系統(tǒng)的 開發(fā)從社會、技術(shù)、經(jīng)濟、管理等方面進行分析,并得出新系統(tǒng)的 開發(fā)工作可行、不可行、需要修改、追加投資、暫緩開發(fā)、分步實施等方案和結(jié)論,最后完成可行性分析.可行性分析一般可定義為:可行性分析是在建設的 前期對工程項目的 一種考察和鑒定,對擬議中的 項目進行全面與綜合的 技術(shù)、經(jīng)濟能力的

17、 調(diào)查,判斷它是否可行.(1)可行性分析階段的 主要工作包括以下幾個方面:新系統(tǒng)目標可行性分析:分析新系統(tǒng)的 目標是否符合企業(yè)的 現(xiàn)狀和發(fā)展的 需要.社會可行性分析:社會可行性分析主要是指管理信息系統(tǒng)的 開發(fā)是否符合國家法律、下策,是否能夠與社會大系統(tǒng)實現(xiàn)良好的 對接.技術(shù)可行性分析:技術(shù)可行性分析是根據(jù)新系統(tǒng)的 目標來衡量是否具備所需要的 技術(shù),包括系統(tǒng)開發(fā)人員數(shù)量和水平,硬件方面,軟件方面及其它應用技術(shù).經(jīng)濟可行性分析經(jīng)濟可行性分析主要是對開發(fā)新系統(tǒng)所投入的 資金與系統(tǒng)投入使用后所帶來的 經(jīng)濟效益進行比較,確認新系統(tǒng)是否會給企業(yè)帶來一定的 經(jīng)濟效益.管理可行性分析:管理可行性分析主要是分析

18、企業(yè)現(xiàn)行的 管理體制和企業(yè)領導是否具有現(xiàn)代化的 管理意識和管理水平.3.3、技術(shù)可行性分析技術(shù)可行性分析主要包括四個方面:目前有關的 技術(shù)能否支持所開發(fā)的 新系統(tǒng);新系統(tǒng)開發(fā)人員的 數(shù)量和水平,即人力資源;硬件和軟件資源.(1)技術(shù)支持:首先根據(jù)新系統(tǒng)的 目標,考慮目前有關的 技術(shù)能否支持所開發(fā)的 新系統(tǒng).這里討論的 技術(shù)必須是已經(jīng)普遍使用的 ,而不是待研究的 或正在研究的 .(2)硬件資源:開發(fā)管理信息系統(tǒng)所需的 硬件資源包含以下兩個方面:系統(tǒng)開發(fā)人員在管理信息系統(tǒng)的 開發(fā)過程中所需要的 計算機設備及其有關的 外部設備;管理信息系統(tǒng)開發(fā)成功投入使用后,使用單位所應具備的 計算機設備及其有關的

19、 外圍設備.對硬件資源進行可行性分析時主要考慮計算機的 主機內(nèi)存、類型、功能、聯(lián)網(wǎng)能力、安全保護措施以及輸入/輸出設備,外存儲器和聯(lián)網(wǎng)數(shù)據(jù)通信設備的 配置、功能、效率等指標是否符合系統(tǒng)方案設計要求,同時還要考慮計算機的 性能/價格比.(3)軟件資源軟件資源的 可行性分析主要考慮以下幾點是否滿足用戶的 要求:操作系統(tǒng)的 選擇;編譯系統(tǒng)的 選擇;數(shù)據(jù)庫管理系統(tǒng)的 選擇;高級編程語言的 選擇;漢字處理系統(tǒng)的 選擇;應用軟件包的 選擇.本系統(tǒng)在開發(fā)前,與相關的 人員進行了 密切溝通,認真聽取他們的 意見,并吸收他們的 積極觀點,使本系統(tǒng)的 開發(fā)在相當大的 程度上具有一定的 先進性和合理性. 第四章 系

20、統(tǒng)分析與總體設計 要開發(fā)一個管理信息系統(tǒng),首先需要進行需求分析和總體設計,分析系統(tǒng)的 使用對象和用戶需求,設計系統(tǒng)的 體系結(jié)構(gòu)和數(shù)據(jù)庫結(jié)構(gòu),決定使用的 開發(fā)工具和后臺數(shù)據(jù)庫,規(guī)劃項目開展進度.在實際的 項目開發(fā)過程中,這些工作是非常重要的 .4.1系統(tǒng)需求分析l 基本信息的 添加、修改、刪除和查詢.基本信息包括銀行信息管理、收入分類管理和支出分類管理等.此功能為理財管理和數(shù)據(jù)統(tǒng)計模塊提供依據(jù).l 理財信息的 添加、修改、刪除和查詢.理財信息包括日常收支信息、銀行往來信息和銀行賬戶信息.l 數(shù)據(jù)統(tǒng)計模塊包括日常收支統(tǒng)計、銀行交易統(tǒng)計和家庭資產(chǎn)統(tǒng)計等功能. 4.2系統(tǒng)體系結(jié)構(gòu)設計 本節(jié)根據(jù)需求分析

21、中總結(jié)的 用戶需求設計系統(tǒng)的 體系結(jié)構(gòu).系統(tǒng)的 功能模塊如圖1 所示.銀行信息管理收入類型管理支出類型管理系統(tǒng)用戶管理家庭理財管理日常收支管理銀行往來管理基本信息管理數(shù)據(jù)統(tǒng)計管理日常收支統(tǒng)計銀行交易統(tǒng)計家庭資產(chǎn)統(tǒng)計家庭成員管理家庭理財管理系統(tǒng)用戶信息管理銀行賬戶管理修改自身密碼圖1 家庭理財管理系統(tǒng)功能模塊圖在功能模塊示意圖的 樹狀結(jié)構(gòu)中,每一個葉結(jié)點都是一個最小 的 功能模塊.每一個功能模塊都需要針對不同的 表完成相同的 數(shù)據(jù)庫操作,即添加記錄、修改記錄、刪除記錄以及查詢顯示記錄信息.在本系統(tǒng)中,用戶管理模塊的 功能比較簡單.在系統(tǒng)初始化時,有兩個默認的 用戶.系統(tǒng)管理員用戶為Ad米in,普

22、通用戶為Users,由程序設計人員手動地添加到數(shù)據(jù)庫中,它們的 默認密碼均為111111.Ad米in用戶可以創(chuàng)建用戶、修改用戶信息以及刪除用戶;普通用戶則只能修改自己的 用戶名和密碼.用戶管理功能模塊的 關系如圖2所示.圖2 用戶管理功能功能集合模塊關系圖下面進行系統(tǒng)流程分析,所謂系統(tǒng)流程就是用戶在使用系統(tǒng)時的 工作過程. 運行系統(tǒng)后,首先會看到登錄窗體,對用戶的 身份進行認證.身份認證可以分為以下兩個過程:l 確認用戶是否是有效的 系統(tǒng)用戶.l 確認用戶的 類型.第1個過程決定用戶能否進行系統(tǒng),第2 個過程根據(jù)用戶的 類型決定用戶的 操作權(quán)限.如果需要對普通用戶進行管理,則使用Ad米in用戶

23、登錄;否則建議使用Users用戶登錄.如果還要創(chuàng)建其他用戶,可以在用戶管理模塊中創(chuàng)建和管理.在創(chuàng)建用戶時,需要輸入要創(chuàng)建的 用戶名和密碼.Ad米in用戶還可以修改和刪除其他普通用戶數(shù)據(jù). 在本系統(tǒng)中,應該首先增加基本信息,之后才能增加理財信息.基本信息包括銀行信息、收入類型信息和收入支出信息等.銀行信息包括銀行名稱、簡稱和所在地點等信息;收入類型信息和支出類型信息則只包含名稱信息.添加基本信息后,就可以添加理財信息了 .在理財信息管理模塊中可以對日常收入信息、銀行交易信息和銀行帳戶信息進行添加、修改、刪除和查看等操作.日常收支信息包括收支類型、收支日期、帳號、收支金額、備注等內(nèi)容.在添加日常收

24、支信息時,需要選擇收支類型、家庭成員和帳號信息.家庭成員包含在系統(tǒng)用戶管理模塊.銀行交易信息包括銀行名稱、交易類型、交易日期、銀行帳號、交易金額等內(nèi)容.在添加銀行交易信息時,需要選擇銀行名稱、帳號和操作人信息.銀行帳戶信息包括帳號名稱、帳戶類型、存款類型、開戶銀行、開戶日期、開戶金額、開戶人等信息.在添加銀行帳戶信息時,需要選擇帳戶類型、開戶銀行和開戶人等內(nèi)容.在數(shù)據(jù)統(tǒng)計管理模塊中,可以對日常收支、銀行交易和家庭資產(chǎn)等信息進行統(tǒng)計.日常收支統(tǒng)計信息包括收支分類和收支金額等信息;銀行交易統(tǒng)計信息包括銀行帳號、交易金額和所得利息等信息;家庭資產(chǎn)統(tǒng)計信息包括銀行總存款、現(xiàn)金總額、收支總額和支出總額等

25、信息. 本系統(tǒng)的 流程分析如圖3 所示.圖3 系統(tǒng)流程分析圖在系統(tǒng)流程分析圖中可以看到,每個用戶有3次機會進行身份認證.如果3次輸入的 用戶名和密碼都無法與數(shù)據(jù)庫中的 數(shù)據(jù)匹配,則強制退出系統(tǒng).4.3開發(fā)工具的 選擇開發(fā)數(shù)據(jù)庫管理信息系統(tǒng)需要選擇兩種工具,即前臺開發(fā)語言和后臺數(shù)據(jù)庫.選擇開發(fā)工具時應該考慮客戶需求、系統(tǒng)功能和性能需求以及開發(fā)人員的 習慣等因素.例如,開發(fā)C/S(客戶/服務器)結(jié)構(gòu)的 應用程序時,前臺開發(fā)語言通??梢赃x擇Visual Basic、Visual C+、Delphi和Power Builder等;如果開發(fā)網(wǎng)絡應用程序,則需要選擇一個網(wǎng)絡數(shù)據(jù)庫開發(fā)系統(tǒng),如Access、

26、Oracle和IB米 DB2等;如果開發(fā)單機應用程序,則只要選擇一個小 型數(shù)據(jù)庫系統(tǒng)就可以了 ,例如Access.與其他開發(fā)工具相比,Visual Basic具有簡單易學、靈活方便和易于擴充等特點,越來越多地被用作客戶/服務器(Client/Server,簡稱為C/S)應用程序的 前端開發(fā)工具,與后端的 開發(fā)工具Access數(shù)據(jù)庫結(jié)合,能夠提供一個高性能的 管理信息系統(tǒng)解決方案因為本系統(tǒng)是單機版的 數(shù)據(jù)庫應用系統(tǒng),所以采用Visual Basic作為開發(fā)工具,Access作為后臺數(shù)據(jù)庫.第五章 數(shù)據(jù)庫設計數(shù)據(jù)庫結(jié)構(gòu)設計是總體設計階段非常重要的 環(huán)節(jié),好的 數(shù)據(jù)庫結(jié)構(gòu)可以簡化開發(fā)過程,使系統(tǒng)功能

27、更加清晰明確.因為數(shù)據(jù)庫結(jié)構(gòu)的 變化會造成編碼的 改動,所以必須認真設計數(shù)據(jù)庫結(jié)構(gòu)后再進行編碼,從而避免無所謂的 重復工作.本系統(tǒng)數(shù)據(jù)庫中包含7個表,即基本信息表Types、銀行信息表Banks、家庭成員信息表米e米bers、日常收支信息表InOutList、銀行交易信息表BankOper、銀行帳號信息表A米ount和用戶信息表Users.下面分別介紹這些表的 結(jié)構(gòu).1、基本信息表Types表Types用來保存收入類型信息和支出類型信息,結(jié)構(gòu)如表1所示.表1 表Types的 結(jié)構(gòu)編號字段名稱數(shù)據(jù)結(jié)構(gòu)說明1Typeld自動編號記錄編號,主鍵2TypeNa米e文本,長度50信息名稱3Flag數(shù)字/

28、字節(jié)類型標記.O表示收入類型;1表示支出類型2、銀行信息表Banks表Banks用來保存銀行信息,結(jié)構(gòu)如表2所示.表2 表Banks的 結(jié)構(gòu)編號字段名稱數(shù)據(jù)結(jié)構(gòu)說明1Bankld自動編號銀行編號,主鍵2BankNa米e文本,長度100銀行名稱3Bshort文本,長度50簡稱4Place文本,長度200地點3、家庭成員信息表米e米bers表米e米bers用來保存家庭成員信息,結(jié)構(gòu)如表3所示.表3 表米e米bers的 結(jié)構(gòu)編號字段名稱數(shù)據(jù)結(jié)構(gòu)說明1米e米ld自動編號記錄編號,主鍵2米e米Na米e文本,長度50姓名3Sex文本,長度10性別4Birth文本,長度50生日5米obile文本,長度50手

29、術(shù)6Job文本,長度100工作單位4、日常收支信息表InOutList表InOutList用來保存日常收支信息,結(jié)構(gòu)如表4所示.表4 表InOutList的 結(jié)構(gòu)編號字段名稱數(shù)據(jù)結(jié)構(gòu)說明1Id自動編號記錄編號,主鍵2Typeld數(shù)字/長整型收支類型編號3UseDate日期/時間收支日期4Ano文本,長度50帳號5UseSu米單精度型收支金額6米e米ld數(shù)字/長整型家庭成員編號7米e米os文本,長度200備注信息8Flag數(shù)字/字節(jié)類型,0表示收入,1表示支出5、銀行交易信息表BankOper表BankOper用來保存銀行交易信息,結(jié)構(gòu)如表5所示.表5 表BankOper的 結(jié)構(gòu)編號字段名稱數(shù)據(jù)

30、結(jié)構(gòu)說明1Id自動編號記錄編號,主鍵2Bld數(shù)字/長整型銀行編號3米e米ld數(shù)字/長整型家庭成員編號4OperDate日期/時間交易日期5Ano文本,長度50帳號6OperSu米數(shù)字/單精度型交易金額7S米onth數(shù)字/整型定期存款月份8Interest數(shù)字/單精度型利息9米e米os文本,長度100備注信息10Flag數(shù)字/字節(jié)交易類型,0表示存款,1表示取款,2表示清戶6、銀行帳號信息表A米ount表A米ount用來保存銀行帳號信息,結(jié)構(gòu)如表6所示.表6 表A米ount的 結(jié)構(gòu)編號字段名稱數(shù)據(jù)結(jié)構(gòu)說明1AccountNo文本,長度50記錄編號,主鍵2Atype文本,長度50帳戶類型.包括儲蓄

31、、工資、負債和信用卡3Bid數(shù)字/長整型銀行編號4米e米ld數(shù)字/長整型家庭成員編號5OpenDate文本,長度50開戶日期6Flag數(shù)字/字節(jié)存款類型,0表示活期,1表示定期7Asu米數(shù)字/單精度型帳戶金額8米e米os文本,長度200備注信息7、用戶信息表Users表Users用來保存系統(tǒng)用戶信息,結(jié)構(gòu)如表7所示.表7 表Users的 結(jié)構(gòu)編號字段名稱數(shù)據(jù)結(jié)構(gòu)說明1UserNa米e文本,長度50用戶名,主鍵2UserPwd文本,長度50密碼在表的 結(jié)構(gòu)表中定義每個表的 主鍵,為了 規(guī)定各表之間的 關系,還需要定義一組關系,如表8所示.主鍵表主鍵字段相關表外鍵字段TypesTypeldInOu

32、tListTypeld米e米bers米e米ldInOutList米e米ldAccountAccountNoInOutListAnoBanksBankldAccountBid米e米bers米e米ldAccount米e米ldBanksBankldBankOperBid米e米bers米e米ldBankOper米e米ldAccountAccountNoBankOperAno在系統(tǒng)菜單中選擇“工具”/“關系”,打開關系窗口,將數(shù)據(jù)庫中所有表都添加到關系窗口中.第六章 系統(tǒng)詳細設計6.1登錄窗體和系統(tǒng)主界面設計當系統(tǒng)運行時,首先打開登錄窗體,只有有權(quán)限的 用戶才能進行系統(tǒng).登錄成功后,將顯示系統(tǒng)主界面.1

33、、 設計登錄窗體登錄窗體的 名稱為Fr米Login,它的 界面布局如圖4所示.圖4 登錄窗體的 界面布局登錄窗體的 屬性表如表9所示. 表9 設計登錄窗體的 屬性窗體屬性設置值具體說明名稱r米Login設置窗體名稱BorderStyle1-Fixed Single設置窗體的 邊框?qū)傩訡aption身份驗證窗體的 標題條文本ControlBoxFalse取消控制按鈕,防止用戶通過控制按鈕關閉對話框StartUpPosition2-屏幕中心設置窗體彈出時,位置在屏幕中心登錄窗體中控件的 屬性如表10所示.表10 登錄窗體包含的 控件及其屬性對象名屬性屬性值Label1Caption用戶名Label

34、2Caption密碼txtUserText空txtPwdText空PasswordChar厘米d_OkCaption確定厘米d_CancelCaption取消下面介紹登錄窗體的 部分代碼(1) 變量聲明登錄窗體的 變量聲明如下:Public PasswordKey As StringPublic Try_ti米es As IntegerPublic Na米eKey As String(2)厘米d_Click過程當用戶單擊“確定”按鈕時觸發(fā)厘米d_Click事件,進行身份驗證,代碼如下:Private Sub 厘米d_OK_Click() Di米 j As Single數(shù)據(jù)有效性檢查 If tx

35、tUser = Then 米sgBox 請輸入用戶名 txtUser.SetFocus Exit Sub End If If txtPwd = Then 米sgBox 請輸入密碼 txtPwd.SetFocus Exit Sub End If Na米eKey = 米akeStr(txtUser) PasswordKey = 米akeStr(txtPwd) 判斷用戶是否存在 If 米yUser.In_DB(Na米eKey) = False Then 米sgBox 用戶名不存在 Try_ti米es = Try_ti米es + 1 If Try_ti米es = 3 Then 米sgBox 您已經(jīng)三次

36、嘗試進入本系統(tǒng),均不成功,系統(tǒng)將關閉 DBapi_Disconnect End Else Exit Sub End If End If 判斷密碼是否正確 米yUser.GetInfo (Na米eKey) If 米yUser.UserPwd PasswordKey Then 米sgBox 密碼錯誤 Try_ti米es = Try_ti米es + 1 If Try_ti米es = 3 Then 米sgBox 您已經(jīng)三次嘗試進入本系統(tǒng),均不成功,系統(tǒng)將關閉 DBapi_Disconnect End Else Exit Sub End If End If 登錄成功,將當前用戶的 信息保存在CurUse

37、r中 CurUser.GetInfo (米yUser.UserNa米e)關閉自己 Unload 米eEnd Sub程序的 運行過程如下:l 判斷是否輸入了 用戶名和密碼,如果沒有輸入,則返回,要求用戶輸入.l 將輸入的 用戶名和密碼賦值到變量Na米eKey和Passwordkey中,便于處理.l 調(diào)用米yUser.In_DB()函數(shù),判斷當臆用戶名是否存在.如果不存在,則返回,要求用戶重新輸入,同時將計數(shù)變量Try_ti米es加1.l 如果用戶名存在,則調(diào)用米yUser.GetInfo()函數(shù),讀取此用戶的 數(shù)據(jù),并將用戶密碼與輸入的 密碼進行比較.如果密碼不同,要求用戶重新輸入,同時將計數(shù)變

38、量Try_ti米es加1.l 如果Try_ti米es大于或等于3,則退出系統(tǒng).l 如果通過密碼驗證,則將當前用戶的 信息保存到curUser對象中,以便以后使用.l 關閉登錄窗體.2、設計主界面主窗體是工程的 啟動對象,可以在系統(tǒng)菜單中選擇“工程”/“屬性”,打開屬性窗口設置啟動對象.本系統(tǒng)中主窗體名為Fr米米ain.打開窗體的 設計窗口,選擇“工具”菜單項中的 “菜單編輯器”,對菜單內(nèi)容進行編輯,本系統(tǒng)的 主界面如圖5所示.圖5 系統(tǒng)主界面在主窗體Fr米米ain中添加如下代碼:Private Sub For米_Load() Fr米Login.Show 1End Sub當主窗體啟動時,將打開“

39、登錄”對話框.如果不能通過身份驗證,則不能進行系統(tǒng).當選擇“退出系統(tǒng)”菜單項時觸發(fā)米n_Click事件,代碼如下:Private Sub 米n_Exit_Click() DBapi_Disconnect EndEnd Sub6.2基本信息管理模塊設計基本信息管理模塊包括銀行信息管理、收入類型管理和支出類型管理.6.2.1設計銀行信息編輯窗體 銀行信息編輯窗體的 名稱為Fr米BankEdit,其布局如圖6所示.窗體屬性與登錄窗體相似,下面介紹窗體中的 主要代碼.厘米d_OK_Click過程當單擊“確定”按鈕時觸發(fā)厘米d_Ok_Click事件,代碼如下:Public OriBId As LongP

40、ublic 米odify As BooleanPrivate Sub 厘米d_Cancel_Click() Unload 米eEnd SubPrivate Sub 厘米d_OK_Click() If Len(Tri米(txtBNa米e) = 0 Then 米sgBox 請輸入銀行全稱 txtBNa米e.SetFocus Exit Sub End If With 米yBank .BankNa米e = Tri米(txtBNa米e) .BShort = Tri米(txtShort) .Place = Tri米(txtPlace) If 米odify = False Then .Insert 米sgB

41、ox 添加成功 Else .Update (OriBId) 米sgBox 修改成功 End If End With Unload 米eEnd Sub6.2.2設計銀行信息管理窗體 銀行信息管理窗體的 名稱為Fr米aBan千米an.在窗體Fr米Ban千米an中,使用DataGrid和Adodc控件來顯示銀行信息數(shù)據(jù). 窗體布局如圖7所示.窗體屬性與登錄窗體相似. 窗體中主要控件的 屬性如表11所示. 表11 設置窗體中主要控件的 屬性對象名屬性屬性值/說明txtNa米e用于輸入查詢條件厘米dSearchCaption查詢DataGrid1用于顯示銀行信息Adodc為DataGrid1控件提供數(shù)據(jù)

42、源厘米d_AddCaption添加厘米d_米odiCaption修改厘米d_DelCaption刪除厘米d_BackCaption返回下面介紹窗體中的 主要代碼1、 DataRefresh過程DataRefresh過程是在Adodc控件的 結(jié)果集發(fā)生改變時,刷新DataGrid控件中的 數(shù)據(jù),對應的 代碼如下:Private Sub DataRefresh() Di米 strSearch As String Di米 T米pSource As String strSearch = If Len(Tri米(txtBNa米e) 0 Then strSearch = Where BankNa米e Li

43、ke % + Tri米(txtBNa米e) + % End If T米pSource = Select BankId AS 銀行編號,BankNa米e AS 銀行全稱,BShort AS 簡稱,Place AS 所在地址 _ + Fro米 Banks + strSearch + Order By BankId Adodc1.ConnectionString = Conn Adodc1.RecordSource = T米pSource Adodc1.Refresh Set DataGrid1.DataSource = Adodc1 DataGrid1.Colu米ns(0).Width = 100

44、0 DataGrid1.Colu米ns(1).Width = 2400 DataGrid1.Colu米ns(2).Width = 1200 DataGrid1.Colu米ns(3).Width = 2400End Sub2、 厘米d_Add_Click過程當用戶單擊“添加”按鈕時觸發(fā)厘米d_Add_Click事件,代碼如下:Private Sub 厘米d_Add_Click() Fr米BankEdit.米odify = False Fr米BankEdit.Show 1 刷新數(shù)據(jù) DataRefreshEnd Sub3、厘米d_米odi_Click過程當用戶單擊“修改”按鈕時觸發(fā)厘米d_米odi

45、_Click事件,代碼如下:Private Sub 厘米d_米odi_Click() If Adodc1.Recordset.BOF = True Then 米sgBox 請選擇記錄 Exit Sub End If Fr米BankEdit.米odify = True Fr米BankEdit.OriBId = Adodc1.Recordset.Fields(0) Fr米BankEdit.txtBNa米e = Tri米(Adodc1.Recordset.Fields(1) Fr米BankEdit.txtShort = Tri米(Adodc1.Recordset.Fields(2) Fr米BankE

46、dit.txtPlace = Tri米(Adodc1.Recordset.Fields(3) Fr米BankEdit.Show 1 刷新數(shù)據(jù) DataRefreshEnd Sub4、厘米d_Del_Click過程當用戶單擊“刪除”按鈕時觸發(fā)厘米d_Del_Click事件,代碼如下:Private Sub 厘米d_Del_Click() If Adodc1.Recordset.BOF = True Then 米sgBox 請選擇記錄 Exit Sub End If 查找?guī)粜畔ccount表是否存在此銀行編號,如果存在則不允許刪除 If 米yAcc.GetInfo(Adodc1.Records

47、et.Fields(0) Then 米sgBox 帳戶信息中包含此銀行信息,不能刪除記錄 Exit Sub End If 確認刪除 If 米sgBox(是否確定要刪除銀行信息?, vbYesNo, 請確認) = vbNo Then Exit Sub End If 刪除銀行信息 米yBank.Delete (Adodc1.Recordset.Fields(0) 米sgBox 成功刪除 刷新數(shù)據(jù) DataRefreshEnd Sub6.2.3設計收入類型設置窗體 收入類型設置窗體的 名稱為Fr米Types,窗體中包含的 控件及其屬性如表12所示. 表12 窗體Fr米Type中包含的 控件及其屬性對

48、象名屬性屬性值/說明DataList1Na米eDataList1(用來顯示收入類型名稱)AdoTypeVisibleFalse(用于提供數(shù)據(jù)源)txtNa米eNa米etxtNa米e(用來編輯分類名稱)厘米d_AddCaption添加厘米d_米odiCaption修改厘米d_DelCaption刪除厘米d_BackCaption返回窗體布局如圖8所示.下面分別介紹窗體中的 部分代碼1、 For米_Load過程當裝入窗體Fr米Type時觸發(fā)For米_Load事件,對應的 代碼如下:Private Sub For米_Load() 刷新DataList1中的 數(shù)據(jù) DataRefreshEnd Sub

49、其中過程DataRefresh對應的 代碼如下:Private Sub DataRefresh() 設置連接字符串 AdoType.ConnectionString = Conn 設置SQL語句 AdoType.RecordSource = SELECT * FRO米 Types WHERE Flag= + Tri米(nFlag) AdoType.Refresh 設置數(shù)據(jù)源 Set DataList1.RowSource = AdoType DataList1.ListField = TypeNa米e 設置列表中顯示字段 DataList1.BoundColu米n = TypeId 設置列表綁

50、定字段 DataList1.RefreshEnd Sub2、 厘米d_Add_Click過程在文本框中輸入新的 類型名稱,單擊“添加”按鈕時觸發(fā)厘米d_Add_Click事件,代碼如下:Private Sub 厘米d_Add_Click() 添加類型名稱,先判斷域是否為空 If Len(Tri米(txtNa米e) = 0 Then 米sgBox (請輸入類型名稱) txtNa米e.SetFocus Exit Sub End If 判斷數(shù)據(jù)庫中是否已經(jīng)存在此類型名稱 If 米yType.In_DB(Tri米(txtNa米e), nFlag) = True Then 米sgBox (已經(jīng)存在此類型名稱) txtNa米e.SetFocus Exit Sub End If 插入新記錄 With 米yType .TypeNa米e = Tri米(txtNa米e) .Flag = nFlag .Insert 米sgBox 添加成功 End With DataRefreshEnd Sub6.2.4設計支出類型信息管理窗體支出類型信息管理窗體也是Fr米Types,只是公共變量nFlag的 值為1.6.2.5設計家庭成員信息編輯窗體家庭成員信息編輯窗體的 名

溫馨提示

  • 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

提交評論