家庭財務管理系統分析、設計與實現_第1頁
家庭財務管理系統分析、設計與實現_第2頁
家庭財務管理系統分析、設計與實現_第3頁
家庭財務管理系統分析、設計與實現_第4頁
家庭財務管理系統分析、設計與實現_第5頁
已閱讀5頁,還剩44頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

畢業論文(設計)題目家庭財務管理系統分析、設計與實現專科學校專業 班級考生姓名準考證號指導教師年月日

目錄HYPERLINK摘要 摘要家庭財務管理系統采用VS2008作為開發工具,采用SQLSERVER2005開發后臺數據庫。主要包含了賬戶管理、收支流水賬管理、統計分析、預警功能、系統管理等功能,用戶能夠通過所提供的功能,完成相應的操作,滿足家庭內部對家庭理財需求。本系統主要對收入支出進行管理,可以對其進行增加、刪除、修改、查詢,而且可以對收入、支出進行統計,并導出報表進行分析。還有固定資產管理和錢借入管理,用戶可以進行最基本的管理。也可以對賬戶進行管理,管理員有權審核新申請的用戶,也可以對賬戶進行基本的管理,添加、刪除、修改用戶,用戶可以修改自己的密碼。關鍵詞:Asp.Net,C#,SqlServer2005數據庫,家庭財務管理系統作者:指導老師:

前言隨著計算機技術的不斷發展,我們的生活中處處都體現著計算機技術給我們帶來的方便和效率,它已經融入我們生活中的各個領域,并發揮著越來越重要的作用。計算機技術在日常的管理中得到了迅速的普及和應用,使用計算機家庭日常財務收支管理無疑是一個高效的方法。財務管理在每一個單位里都是一件必不可少的事情,它對于每一個管理者來說都至關重要,同樣,對于一個家庭來說也是這樣的。但是,一直以來人們使用傳統人工方式的文件、紙張記賬管理模式,這些管理模式存在著許多缺點,如:效率低、保密性差、另外時間一長,將產生大量的文件和數據,這給查找、更新和維護都帶來了很多困難。所以,我們可以將計算機技術和家庭財務管理結合起來,發揮計算機的優點。開發出家庭理財系統,將我們的生活管理的更有條不紊。家庭財務管理系統可以有效地記錄和管理家庭的收支,合理規劃和支配家庭資金,是家庭理財的好幫手。它利用計算機技術技術,使家庭理財逐步信息化,從而形成由家庭成員與計算機共同構成服務于家庭的人機信息財務管理系統。隨著計算機發展,家庭財務管理系統已經成為很多家庭財務管理的一個重要途徑。計算機的最大優點在于利用它能夠高效準確地進行財務信息管理。使用計算機進行信息財務管理,不僅提高了工作效率,而且大大的提高了其安全性。在數據庫技術的開發工具中MicrosoftSQLSever是比較好的,安全性比較高,開發語言比較簡單實用。所以后臺數據庫采用MicrosoftSQLSever2005。根據實際情況開發系統,能夠使整個系統操作簡單,滿足多種家庭,不同文化水平的人的需求。全文共分為6章。第1章主要介紹了該系統的開發背景,以及總體的任務目標,第2章對系統進行分析,包括功能需求、可行性,并畫出業務流程圖,第3章對系統進行總體設計,主要是框架結構、數據庫邏輯和物理設計,第4章是系統功能具體模塊的設計與實現,包含了主要頁面和代碼,第5章對完成的系統進行綜合測試,第6章給出結論。

第一章概述1.1開發背景家庭是一個小小的管理單元,它的管理已經成為世人矚目的焦點。隨著時代的發展,家庭的格局發生重大變化,家庭的收入與支出是一個零碎又與切身利益相關的問題。很多家庭對于一段時期的收入和開支不是很明了。陷入經濟煩惱中。所以很多家庭都需要一個智能的管家來幫助管理家庭的財務。對于每個家庭來說,獲取收入的多少是家庭生活條件好壞的前提。然而保證每一項開支都合理、有效則是每個家庭生活好壞的必要條件。因此,如何標準化、方便化的管理來提高家庭經營效益,就成為一個新的議題。多年來,計算機硬件和軟件技術高速發展,為家庭收支管理提供了前所未有的高效手段。家庭收支管理的中心由傳統的人工操作為主,轉向通過計算機系統對信息資源的管理。雖然我國家庭收支在這方面了作了大量工作,先后在財務,物資,人力資源等管理部門引進或者開發了一些系統,提高了工作效率和管理水平。但是總體看來,我國家庭收支的信息化管理仍然處于家庭收支基礎業務運行層面的局部。國外的軟件技術比較先進,信息化管理水平也比較高,在家庭理財的管理方面很早就引進了計算機軟件進行,使得管理起來方便,出錯率小,很大程度上避免了家庭理財的流失。1.2家庭財務管理系統的任務與目標本系統采用Asp.Net語言,后端采用的是SqlServer2005數據庫來完成家庭財務管理系統的設計與實現。根據需求分析,了解家庭具體的財務管理情況,需要對系統進行功能上的初步規劃和設計。首先系統要有保護功能,其次是修改、刪除,還有能夠對家庭的收入支出做出記錄。能夠對總體的數據進行統計和分析。對家庭的財務有指導作用。系統主要功能需求如下:(1)允許用戶進行系統管理,包括密碼修改和重新登錄的功能。(2)收入管理:滿足用戶進行收入項目管理,實現對收入項目表的添加、刪除、修改、查詢操作,實現對數據庫中日常收入項目表的更新。(3)支出管理:滿足用戶進行支出項目管理,實現對支出項目表的添加、刪除、修改、查詢操作,實現對數據庫中日常支出項目表的更新。(4)固定資產管理:實現該功能模塊數據的添加、修改、刪除操作。(5)錢借入管理:實現該功能模塊數據的添加、修改、刪除操作。(6)收入統計:統計出收入總金額并顯示收入項目表,并導出收入項目表。(7)支出統計:統計出支出總金額和分類的金額并顯示支出項目表,并導出支出項目表。(8)賬戶管理:可以添加、查看、刪除管理人員的信息,也可以修改密碼、退出系統等。1.3本論文所作的工作本文以筆者在研發家庭財務管理系統軟件中所做的工作為基礎,了解基本的財務管理運作方式和業務流程,熟悉實現財務信息化管理的相關技術,分析研究當前家庭財務管理系統的應用開發狀況,針對現實生活中家庭財務管理的基本運作情況,熟悉賬戶管理、收支流水賬管理、統計分析、預警功能(各種日期、期限、重要事務提醒)、系統管理等功能,完成課題的系統分析工作,提出實施計劃、方案。主要工作為:1.搭建軟件開發平臺,完成軟件的編碼工作;2.編寫軟件測試計劃,通過測試應用來驗證所設計實現的系統的正確性、有效性等,完成測試報告;3.實現軟件應具有的良好圖形界面和用戶交互方式。

第二章系統需求分析2.1需求分析概述如今,我們的生活質量和文化素養普遍提高,并開始注重生活品質。伴隨市場經濟的快速發展,不斷地更新觀念,個人理財意識的加強,尤其是家庭財務管理有了很大的發展。在某種意義上,人們對家庭和個人的各方面消費有進行分析和統計的愿望。另一方面,各種財務管理手段的不斷豐富,如何將多種手段相結合,操作更方便也成了焦點。在系統開發階段,通過對各個類型的模型分析,使系統模型其與生活模式更加貼切,使普通家庭能夠更方便地使用系統。因為該程序有很強的專業特性,而大多數人一般沒有接受過相關培訓,所以在設計程序時嚴格以實際應用為前提,使所設計的軟件可以由用戶普遍接受。故該系統的操作界面要盡可能簡單,清晰,布局清楚,不要用太多的控制類型。根據家庭收支情況的要求和數據記錄的習慣,對程序完成后,需要達成下列條件:首先是數據存儲安全可靠,其次界面設計友好,美觀。確保收支分類管理等基本設置完善,保證數據查詢的靈活性。對增加,刪除,修改的信息進行精密設計,確保信息的及時處理。2.2系統功能需求賬戶功能:用戶可為系統設置密碼,修改密碼,也可以重置密碼,新注冊的人員必須通過管理員才可以登錄進入,防止非法用戶進入系統,破壞數據或查看信息。同時系統也對用戶進行了簡單的管理,添加、刪除、查詢、增加用戶。系統退出功能:關閉整個系統,保存數據,安全退出。收支記賬:對日常收支活動進行記錄。每天的消費和收入都及時入賬。便于以后對家庭收支進行管理和統計。它記錄了收支活動的日期,收支來源,收支時間,備注說明,收入金額,支出金額。錢借入記錄:對日常向別人借錢的情況進行記錄。對平時向別給人借的錢都會及時錄入該系統,并對借入錢的信息進行管理,它記錄了借入錢的時間,金額,向誰借的錢,以及是誰借的錢,是否已還等信息。支出項目分類:用戶根據自己平時的支出情況,在加添支出的時候,可以根據已經提供的幾個支出項目類別選擇自己支出的類別。2.3系統性能需求易用性要求:該系統在登錄界面方面為了用戶的方便不需要去選擇用戶的類型,系統會在后臺通過輸入的用戶名進行用戶類型的識別,加快了登錄的速度;系統采用彩色界面,窗口化模式,顯得軟件更加友好。其主體功能一目了然,結構清晰,并可直接在數據輸入框輸入數據,把一些比較常用信息供用戶在輸入時選擇,方便輸入和加快了操作速度,而且為了用戶查看的方便,系統也帶有導出功能。即使是新用戶操作起來也十分順手。系統安全性:系統涉及到一個家庭的賬務信息,安全性比較重要,系統有密碼設置,防止家庭財務信息外泄或不想被人知道的信息外露。而且密碼在數據庫中或者是在登錄界面都是進行了加密的,保證的密碼的安全性,而且直接在地址欄輸入主界面的絕對地址,系統也會跳轉到登錄界面,所以系統的安全性方面很強。2.4用戶界面需求系統采用人機交互方式,主要通過界面來顯示用戶需要的信息,界面需要美觀友好,信息查詢方便靈活,輸入輸出數據格式友好便捷,并且具備簡單的錯誤提示功能。2.5可行性分析經濟和市場可行性:首先,在物質生活越來越豐富的今天,人們開始了各種形形色色的消費,也會偶爾有一些額外的收入。在這樣的大環境下,越來越多的人們開始關注自己日常的開支去向以及每年每月的收入進賬。同時,豐富多樣的理財手段也需要有一個方便的辦法將它們統一起來進行管理。而作為承載系統軟件的計算機現已得到普及,之前分析的人們對家庭理財軟件的需求是存在的,因此家庭財務管理系統具備了一定的市場潛力,而一般一款小型軟件的發開可在短時間內由少量甚至一個人完成。所以綜上分析家庭財務管理系統具備了經濟可行性和市場可行性。技術可行性:本系統運用了當前流行的C#語言進行開發,借助.Net等搭建框架,因此,系統軟件的開發平臺是相當完善的。硬件方面,在智能化普及的現代社會,早已不需要考慮運行設備跟不上、存儲空間不足等問題,越來越快的CPU,越來越大的硬盤,足以完美支撐該軟件的正常運行。因此從技術上說,是不存在問題的,是可行的。法律可行性:隨著社會主義的發展和人們的生活水平的提高,對于一個家庭來說,所面對的事情都越來越復雜了,特別是對家庭財產的管理。如何有效的管理和利用當今的計算機技術來達到人們所期望的生活已經在人們心中深入人心了,對于一個家庭財產管理系統的設計與實現對于每個家庭來說都是有必要的,沒有任何侵犯法律問題。因此,在法律上該系統是可行的。操作可行性:系統采用Windows平臺開發窗口和界面簡單直觀,人性化,易于操作和管理,因此在操作是可行的。2.6系統業務流程圖用戶在使用系統之前先進行登錄,如發現不是本系統已經注冊人員則無法登錄。進入主界面后,在進入理財分類管理界面后顯示了所有的理財分類信息,管理員可以根據的需要對自己的財產進行管理,包括添加、刪除、修改、查詢。在點擊任何一個菜單后,系統顯示相應的信息,供管理員進行管理操作。家庭理財管理系統的業務流程圖如圖2-1所示。圖2-1業務流程圖2.7數據字典數據字典是指對數據的數據項、數據結構、數據流、數據存儲、處理邏輯、外部實體等進行定義和描述,其目的是對數據流程圖中的各個元素做出詳細的說明。數據流數據流編號:D1數據流名稱:收入/支出信息簡述:收入/支出項目的添加、修改、刪除、查詢信息數據流來源:用戶數據流去向:F1.1數據項組成:編號+收入/支出項目數據流編號:D2數據流名稱:借入錢信息簡述:項目的添加、修改、刪除、查詢更新信息數據流來源:用戶數據流去向:F1.2數據項組成:編號+借入錢項目數據流編號:D3數據流名稱:固定資產信息簡述:項目的添加、修改、刪除、查詢更新信息數據流來源:用戶數據流去向:F1.3數據項組成:編號+固定資產項目數據流編號:D4數據流名稱:賬戶信息簡述:賬戶的添加、修改、刪除、查詢更新信息數據流來源:用戶數據流去向:F1.4數據項組成:編號+賬戶信息處理邏輯處理邏輯編號:P1.1處理邏輯名稱:更新收入、支出信息簡述:對收入、支出項目表進行的添加、刪除、修改、查詢操作輸入的數據流:D1處理描述:在對收入、支出信息的添加、修改、刪除、查詢處理輸出的信息流:收入、支出信息表處理邏輯編號:P1.2處理邏輯名稱:家庭借入錢管理簡述:對借入錢表進行的添加、刪除、查詢和修改等操作輸入的數據流:D2處理描述:在對借入錢信息的添加、修改、查詢和刪除處理輸出的信息流:借入錢表信息處理邏輯編號:P1.3處理邏輯名稱:固定資產管理簡述:對固定資產表進行的添加、刪除、查詢和修改等操作輸入的數據流:D3處理描述:在對固定資產信息的添加、修改、查詢和刪除處理輸出的信息流:固定資產表信息處理邏輯編號:P1.4處理邏輯名稱:賬戶管理簡述:對賬戶表進行的添加、刪除、查詢和修改等操作輸入的數據流:D4處理描述:在對賬戶信息的添加、修改、查詢和刪除處理輸出的信息流:賬戶信息表數據存儲數據存儲編號:F1.1數據存儲名稱:收入/支出項目表簡述:存儲收入/支出項目的表單數據存儲組成:項目編號+收入/支出項目關鍵詞:項目編號相關聯處理:P1.1數據存儲編號:F1.2數據存儲名稱:錢借入表簡述:存儲錢借入的表單數據存儲組成:項目編號+借入錢項目關鍵詞:項目編號相關聯處理:P1.2數據存儲編號:F1.3數據存儲名稱:固定資產項目表簡述:存儲固定資產項目的表單數據存儲組成:項目編號+固定資產項目關鍵詞:項目編號相關聯處理:P1.3數據存儲編號:F1.4數據存儲名稱:賬戶信息表簡述:存儲賬戶信息的表單數據存儲組成:編號+用戶名+密碼+用戶權限+用戶類型關鍵詞:項目編號相關聯處理:P1.4

第三章系統總體設計3.1系統功能模塊設計家庭財務管理系統由系統管理、收入管理、支出管理、固定資產管理、借入錢管理、收入統計、支出統計、賬戶管理等模塊組成。(1)系統管理模塊驗證用戶登錄:驗證用戶的密碼和賬號,以及賬戶的權限選擇是否一致注冊新用戶:注冊新的用戶,但是要經過管理員審核后才可以登錄進入;修改密碼:賬戶修改自己的密碼;安全退出:退出登錄賬戶。(2)收入管理模塊顯示收入項目表,添加、修改、刪除、查詢項目表的信息,可以刪除一行或者多行的信息。(3)支出管理模塊顯示支出項目表,添加、修改、刪除、查詢項目表的信息,可以刪除一行或者多行的信息。(4)固定資產管理顯示支出項目表,添加、修改、刪除項目表的信息,可以刪除一行或者多行的信息。并計算出固定資產的總金額。(5)錢借入管理顯示支出項目表,添加、修改、刪除項目表的信息,可以刪除一行或者多行的信息。顯示出一共借入多少錢。(6)收入統計顯示收入項目表,并導出賬單。計算出收入的總金額。(7)支出統計顯示支出項目表,并導出賬單。計算出支出的總金額,并在超出額度后就提示。(8)賬戶管理添加、刪除、修改賬戶,重置密碼。審核新用戶。家庭財務管理系統的功能結構圖如圖3-1所示。圖3-1系統功能結構圖3.2建立E-R圖一般采用E-R圖來建立數據模型,包含實體、關系和屬性三種成分,它是描述現實世界概念結構模型的有效方法。該系統主要有五個實體,分別為收入信息、支出信息、固定資產信息、錢借入信息、賬戶信息。3-2收入信息實體E-R圖。圖3-2收入信息實體E-R圖3-3支出信息實體E-R圖。圖3-3支出信息實體E-R圖3-4固定資產實體E-R圖。圖3-4固定資產實體E-R圖3-5借入款實體E-R圖。圖3-5借入款實體E-R圖3-6用戶實體E-R圖。圖3-6用戶實體E-R圖綜合以上E-R圖,得出以下的整體E-R圖3-7所示。圖3-7系統整體E-R圖3.3數據庫邏輯設計數據庫邏輯設計將概念結構轉換為某個DBMS所支持的數據模型對其進行優化。在分析實體關系圖的家庭財務管理系統后,分別對實體,關系的屬性進行了分析,得出這些實體的主鍵和代碼值之間的關系,提供了方便的家庭財務管理系統數據庫物理設計基礎。以下是家庭財務管理系統的數據庫邏輯設計:用戶表(編號,用戶名,密碼,用戶狀態,用戶類型);收入表(編號,來源,金額,時間,備注);支出表(編號,來源,金額,時間,備注);固定資產表表(編號,來源,金額,時間,備注);錢借入表(編號,借款人,金額,時間,向誰借的錢,是否已還)。3.4數據庫物理設計數據庫物理設計為邏輯數據模型選取一個最適合應用環境的物理結構(包括存儲結構和存取方法)。數據庫概念設計后,上述數據庫物理設計最后經過邏輯設計,在設計上,主要是數據庫的邏輯設計出來的模板具體化,每個實體,鏈接到主關鍵字和代碼的數據類型,數據描述做出注釋。下面是該系統的數據庫物理設計模型,如圖3-8至3-12所示。圖3-8用戶表圖3-9收入表圖3-10支出表圖3-11固定資產表圖3-12錢借入表3.5代碼設計本家庭理財管理系統的代碼設計遵循標準化原則,對代碼的很多方面進行了規范,例如:在該系統地設計中,局部變量使用時,盡量避免使用全局變量,因為全局變量的作用范圍比較大,再對代碼進行修改時,不小心就會修改到不必要修改的部分,使得系統部能夠正常使用。另外,代碼設計還遵從了可讀性高,可使用性強等的設計原則,對代碼進行了必要的注釋,在代碼的編寫過程中,盡量對代碼的格式進行了規范,因為一個好的代碼必須要有一個比較清新的書寫過程和思路,而這些都可以從代碼的格式上體現出來,當然,代碼的格式也是給讀代碼的人第一印象的關鍵因素,就如同一個系統軟件的界面一樣有著十分重要的作用。在代碼正確,可以提供用戶正常使用的基礎上,本人又對這些代碼進行了力所能及的優化工作,使得代碼在使用時占據的空間少,占用CPU的時間盡量少,以及在系統運行時可能遇到的問題減少。但是由于本人水平有限,并不能保證這些系統代碼的最優化設計。

第四章系統功能模塊的設計與實現4.1登陸界面4.1.1整體設計登陸界面整體結構如圖4-1所示,采用嵌套表格的結構,在中間表格布置控件,實現輸入用戶名、密碼,點擊登陸、取消等功能,并提供新用戶注冊鏈接。圖4-1登陸界面結構4.1.2主要控件登陸界面主要使用兩個TextBox控件(文本輸入控件)用來輸入登陸用戶名密碼和兩個ImageButton控件(圖片按鈕控件)用來實現登陸和取消操作。如圖4-2所示。圖4-2主要控件4.1.3關鍵代碼(1)根據當前用戶輸入的用戶名密碼,調用數據庫信息,進行匹配,代碼如下。stringuser=txt_user.Text.Trim();//用戶名文本信息來自文本控件txt_user里的內容stringpwd=FormsAuthentication.HashPasswordForStoringInConfigFile(txt_pwd.Text,"SHA1");//根據文本控件txt_pwd里面的密碼和哈希算法生成一個適合存儲在配置文件中的哈希密碼stringsql="select*fromX_ManagerwhereX_Manager_User='"+user+"'andX_Manager_Pwd='"+pwd+"'";//選擇數據庫表X_Manager下面X_Manager_User的字段值為user的數據和X_Manager_Pwd中字段值為pwd的值SqlDataReaderdr=DB.getDataReader(sql);//只讀取數據庫(2)通過數據匹配進行判斷,若數據庫中無對應數據,則提示登錄失敗,檢查用戶名密碼,如對應成功,則二次判斷,若是管理員,則進入管理員頁面(MainFrame.aspx),若是普通用戶,則進入普通用戶界面(MainFrame_one.aspx)。主要代碼如下。if(dr.Read())//如果讀取到則往下判斷{if(dr["X_Manager_State"].ToString()=="正常")//如果X_Manager_State字段值的內容是“正常”{if((dr["X_Manager_Power"].ToString())=="Manager")//如果內容是“Manager”{HttpCookiecookies;cookies=newHttpCookie("caiwu");//定義cookies對象cookies.Values.Add("Manager",HttpUtility.UrlEncode(this.txt_user.Text.Trim()));//屬性為…cookies.Expires=DateTime.Now.AddHours(24);//過期時間為24小時Response.Cookies.Set(cookies);//存儲dr.Close();//關閉dr.Dispose();//釋放Response.Redirect("MainFrame.aspx");//打開MainFrame.aspx頁面}elseif((dr["X_Manager_Power"].ToString())=="People")//如果內容是“Manager”{HttpCookiecookies;cookies=newHttpCookie("caiwu");//定義cookies對象cookies.Values.Add("Manager",HttpUtility.UrlEncode(this.txt_user.Text.Trim()));//屬性為…cookies.Expires=DateTime.Now.AddHours(24);//過期時間為24小時Response.Cookies.Set(cookies);//存儲dr.Close();//關閉dr.Dispose();//釋放Response.Redirect("MainFrame_one.aspx");//打開MainFram_onee.aspx頁面}}Else//如果X_Manager_State字段值的內容不是“正常”{dr.Close();//關閉dr.Dispose();//釋放Common.ShowMessage(Page,"您的帳號還未開通,或已禁用!","");//給出提示內容}}Else//如果沒有讀取到則往下操作{dr.Close();//關閉dr.Dispose();//釋放Common.ShowMessage(Page,"登陸失敗,請檢查用戶名及密碼是否正確!","");//給出提示內容}4.2主界面4.2.1整體設計登陸成功后,根據用戶身份跳轉到不同主界面,管理員主界面分為頂部導航,左側子目錄和模板頁調用三大部分。導航模塊分為九個功能模塊:收入管理、支出管理、固定資產管理、借入錢管理、收入統計、支出統計、賬戶管理、修改密碼、安全退出九個功能模塊。用戶界面區別僅在于導航模塊功能為家庭收入、支出,不能進行賬戶管理,其他相同,如圖4-3所示為用戶界面設計頁面。圖4-3用戶主界面結構4.2.2主要控件主界面首先了一個Label控件用來顯示登陸的用戶名,若干個table(表格)用來設計主界面的各個區域,一個ifram(文檔的內聯框架)用來跳轉導航欄功能連接的各個子頁面。空間如圖4-4所示。圖4-4主要控件4.2.3關鍵代碼(1)用戶點擊導航欄文字,在指定的單元格中刷新對應的菜單鏈接,并自動在iframe控件中打開對應的網頁。通過javascript語言和C#共同實現,如下所示,其中JS代碼為引用改寫。<liid="Li2"onclick="getleftbar(this,'Zhichu_List.aspx');"><a>支出管理</a>//點擊支出管理,運行一個函數<divclass="menu_childs"><ul><li><ahref="Zhichu_Add.aspx"target="frmright">添加支出信息</a></li>//向名為frmright的內聯框架鏈接Zhichu_Add.aspx網頁<li><ahref="Zhichu_List.aspx"target="frmright">家庭支出管理</a></li>//向名為frmright的內聯框架鏈接Zhichu_Add.aspx網頁</ul></div><divclass="menu_div"></div></li>functiongetleftbar(obj,url){//定義一個名為getleftbar的JS函數varleftobj;//定義變量vartitleobj=obj.getElementsByTagName("a");//定義變量varmenubar=document.getElementById("menubar")//定義變量if(menubar){if(titleobj[0]){document.getElementById("leftmenu_title").innerHTML=titleobj[0].innerHTML;}vara=obj.getElementsByTagName("ul");for(vari=0;i<a.length;i++){menubar.innerHTML=a[i].innerHTML;}//函數運算主體window.parent.frames['frmright'].location.replace(url);//在母窗口打開鏈接}}(2)保證內聯框架的高度固定,否則會使名為frmright的目標窗口顯示異常,代碼如下。<scripttype="text/javascript">vartab=document.getElementById("tab");tab.style.height=document.body.clientHeight-67+"px";</script>//顯示正確大小的frmfight內聯框架跳轉內容4.3數據添加頁面4.3.1整體設計數據添加頁面主要包含五個頁面,分別是收入添加、支出添加、借入錢添加、固定資產添加以及用戶添加。全部采用表格布局,引用模板頁。如圖4-5所示。圖4-5各類添加頁面4.3.2主要控件使用多個textbox(可輸入文本框)組件用來給用戶輸入要添加的來源、金額以及要修改的用戶名密碼等。如圖4-6所示。圖4-6textbox組件的應用部分頁面使用dropdownlist(下拉列表)控件為一些添加類目提供選擇,并使用button按鈕實現完成添加的操作,如圖4-7所示。圖4-7下拉列表和按鈕控件的應用在添加用戶頁面使用RequiredFieldValidator控件,來使新用戶名密碼成為必填項,如圖4-8所示。圖4-8RequiredFieldValidator控件的使用4.3.3關鍵代碼在相關操作頁面,點擊添加按鈕,實現對數據庫的數據添加。如收入添加頁面,當填寫完金額、來源和說明后,點擊添加提交數據時,首先判斷輸入金額是否為數字,若不是數字,提示添加失敗,若數據項正確且不為空,則寫入數據庫,完成添加操作,代碼如下。其他頁面數據添加代碼原理類似,不再列出。protectedvoidButton1_Click(objectsender,EventArgse){stringsql="insertintoTuzi(tu_title,tu_jine,yu_yingli,tu_beizhu)values('"+Label1.Text+"','"+txt_jine.Text+"','"+txt_yingli.Text+"','"+tu_beizhu.SelectedItem.Text+"')";//向數據表中插入以上記錄(行)if(!this.IsNum(txt_jine.Text))//如果金額文本框內有字符串{Common.ShowMessage(this.Page,"添加失敗,金額不能輸入字符串","");//給出提示信息}else//如果金額文本框內沒有字符串{if(DB.ExecuteSql(sql)>=0)//如果可以執行SQL語句{Common.ShowMessage(this.Page,"添加成功!","");//給出提示}Else//如果不可以執行SQL語句{Common.ShowMessage(this.Page,"添加失敗!","");//給出提示}}}4.4數據管理頁面4.4.1整體設計數據管理頁面只有管理員登陸才會顯示,其主要功能是顯示和管理所添加的數據。一共包含固定資產管理頁面、錢介入管理頁面、收入管理頁面、支出管理頁面和用戶賬戶管理頁面。每個頁面布局類似,都是在調用模板頁的條件下,采用表格進行布局,如圖4-9至圖4-13所示。圖4-9固定資產管理頁面圖4-10錢借入管理頁面圖4-11家庭收入管理頁面圖4-12家庭支出管理頁面圖4-13用戶管理頁面4.4.2主要控件使用checkbox(選擇框)控件對顯示的每行數據進行勾選,從而進可以一步操作,如修改和刪除,如圖4-10所示。圖4-10選擇框控件使用aspnetpager(分頁)控件來實現當數據列表過多時,可以分頁瀏覽。如圖4-11圖4-11分頁控件使用reprater控件顯示重復的項目列表,并限制在該空間類,如圖4-12所示。圖4-12reprater控件的應用4.4.3關鍵代碼(1)獲取數據并分頁,代碼如下。voidGet_Pager_Data(){SqlConnectioncn=DB.OpenConnection();SqlCommandcmd0=newSqlCommand(cmdtxt2,cn);AspNetPager1.AlwaysShow=true;AspNetPager1.PageSize=10;AspNetPager1.RecordCount=(int)cmd0.ExecuteScalar();DB.DisposeConnection(cn);Get_Data();}(2)全選按鈕的功能實現,代碼如下。protectedvoidCheckBox1_CheckedChanged(objectsender,EventArgse){if(CheckBox1.Checked){for(inti=0;i<Repeater1.Items.Count;i++){CheckBoxchk=(CheckBox)Repeater1.Items[i].FindControl("CheckBox2");if(chk!=null){chk.Checked=true;}}}else{for(inti=0;i<Repeater1.Items.Count;i++){CheckBoxchk=(CheckBox)Repeater1.Items[i].FindControl("CheckBox2");if(chk!=null){chk.Checked=false;}}}}(3)批量刪除代碼如下。protectedvoidButton1_Click(objectsender,EventArgse){for(inti=0;i<Repeater1.Items.Count;i++){CheckBoxchk=(CheckBox)Repeater1.Items[i].FindControl("CheckBox2");Labellb5=(Label)Repeater1.Items[i].FindControl("Label5");if(chk!=null){if(chk.Checked){DB.ExecuteSql("deletefrom[Tuzi]wheretu_Id="+lb5.Text.Trim());}}}Get_Pager_Data();getCountprice();}(4)單條數據刪除代碼如下。protectedvoidRepeater1_ItemCommand(objectsource,RepeaterCommandEventArgse){if(e.CommandName=="del"){if(DB.ExecuteSql("deletefrom[Tuzi]wheretu_Id="+e.CommandArgument.ToString())>=0){Get_Pager_Data();Common.ShowMessage(Page,"刪除成功!","");getCountprice();}else{Common.ShowMessage(Page,"刪除失敗!","");getCountprice();}}}(5)計算金額總和的代碼如下。publicvoidgetCountprice(){SqlConnectioncn=DB.OpenConnection();DataTabledt=newDataTable();stringsql="selectsum(shou_jine)fromShouRu";dt=DB.getDataTable(sql);foreach(DataRowdrindt.Rows){countprice=dr[0].ToString();}DB.DisposeConnection(cn);}

第五章綜合測試5.1系統測試內容針對系統的各項功能進能測試,驗證此軟件是否實現了需求分析中所定義的功能,具體測試內容為各頁面控件、按鈕是否正確執行相關功能,各頁面是否能正確調用、修改、刪除、添加數據庫數據。5.2實例測試表5-1登陸頁面(ManagerThisWay.aspx)測試測試功能測試方法測試內容測試結果結論登陸輸入用戶名密碼輸入正確用戶名、密碼可以登錄正常輸入錯誤和被禁用的用戶密、密碼限制登陸,提示對話框分別輸入管理員和普通用戶賬戶密碼輸入管理員賬戶密碼跳轉MainFrame.aspx網頁,輸入普通用戶賬戶密碼則跳轉頁面為MainFrame_one.aspx取消點擊在輸入完用戶名密碼后點擊取消密碼框內容被重置正常新用戶注冊點擊點擊新用戶注冊鏈接到注冊頁面正常表5-2管理員主頁面(MainFrame.aspx)測試測試功能測試方法測試內容測試結果結論導航欄依次點擊分別點擊主頁面導航欄的各個功能每項功能都能正確的顯示在主頁面的窗口中正常菜單欄依次點擊在導航欄切換到對應功能模塊后,點擊左側菜單欄的各個選項菜單欄各子目錄能正確跳轉到指定鏈接頁面正常安全退出點擊點擊安全退出跳轉到登陸頁正常表5-3數據添加頁面(Shouru_Add.aspx;Zhichu_Add.aspx;Guzhi_Add.aspx;money_Add.aspx;Sys_Lgr_Add.aspx)測試測試功能測試方法測試內容測試結果結論添加點擊添加輸入的金額為非數字提示添加失敗,不能為字符串正常什么都不輸入添加成功不合理在添加用戶頁面添加不同權限的用戶不同權限的用戶獲得了不同的操作權限正常狀態權限多次注冊分別添加不同權限和不同狀態的用戶均能正確添加且權限能區分正常密碼注冊注冊時填寫兩次密碼不一致不能注冊,顯示密碼不一致正常表5-4數據管理頁面(Shouru_List.aspx;Zhichu_List.aspx;Guzhi_List.aspx;money_List.aspx;Sys_Lgr_List.aspx)測試測試功能測試方法測試內容測試結果結論修改數據依次點擊點擊數據表后面的修改按鈕正確跳轉數據修改頁面正常刪除數據依次點擊點擊數據表后面的刪除按鈕指定數據被刪除正常全選點擊勾選全選框,然后進行刪除操作勾選后所有數據被選中,刪除成功正常表5-5數據統計頁面(Shourutongji.aspx;Zhichutongji.aspx)測試測試功能測試方法測試內容測試結果結論數值計算輸入相關數據添加各類收入、支出項目正確計算所有收入、支出總和正常表5-6修改密碼頁面(Sys_Settings_Pwd.aspx)測試測試功能測試方法測試內容測試結果結論修改密碼多次輸入輸入錯的原始密碼不能更改,提示原密碼錯誤正常輸入不一致的新密碼不能更改,提示新密碼不一致輸入原始密碼,并填寫新密碼密碼被成功修改,原密碼不可用

第六章結論家庭財務管理系統是家庭迫切需要詳細了解自家財務狀況的情況下開發的。它可以有效的記錄和管理家庭的收支情況,合理規劃和支配家庭資金,并可以通過統計分析來獲得家庭人員在一段時期內的消費和收入信息,完全替代了手記腦記的煩惱,利于調節家庭財政狀況,給家庭的財務管理帶來更多的方便,是家庭的理財好幫手。界面操作簡單。在系統設計中,首先進行需求分析,把系統和具體的實際的家庭中的業務結合起來,明確所設計的系統所具備的功能和解決的問題。然后通過可行性分析,從經濟、技術、社會三方面進行闡述和說明系統設計的必要性和可行性。然后就是業務流程圖和數據流程圖以及數據字典。對于要做的系統已經有了一個比較全面的了解之后。再往下就是數據庫和界面的設計。通過這次畢業設計,我覺得開發一個系統的關鍵是需求分析,只有經過詳細的調查分析,才能確定系統所需實現的功能和解決的問題。開發過程中的難題和關鍵是業務流程分析和數據流程分析,這關系到系統整體性和完整性,是系統實現各個功能和各模塊之間調用的理論基礎。對于數據庫的設計,應避免數據冗余和重復,但也不能缺少應有的數據存儲,保證數據庫的完整性,和安全性,并且應是經過規范化設計的數據存儲。對于管理信息系統,我還不夠了解,這是一個復雜繁瑣的過程,只有不斷的完善,改進才能做出一個好的,適應用戶的系統。第一次做系統開發,沒有實際的經驗,只能根據自己的現有的知識進行設計。有什么不夠準確的地方希望老師批評指正。

參考文獻[1]慕靜,檀柏紅,任立肖,等.管理信息系統開發方法、工具與應用[M].北京:清華大學出版社,2010.[2]張小川.管理信息系統[M].北京:電子工業出版社,2009.[3]陳玉菁,宋良榮.財務管理(第3版)[M].北京:清華大學出版社,2011.[4]陳旭,毛華揚.會計信息系統分析與設計[M].北京:清華大學出版社,2009.[5]劉騰紅,向卓元.管理信息系統[M].北京:清華大學出版社,2010.[6]趙韶平,徐茂生.Powerdesigner系統分析與建模[M].北京:清華大學出版社,2010.[7]朱傳華.財務管理案例分析(第2版)[M].北京:清華大學出版社,2012.[8]金穎,黃艷艷,陳玲娣,等.財務管理學基礎[M].北京:清華大學出版社,2010.[9]殷生.家庭財務自由[M].北京:清華大學出版社,2011.[10]MichaelOtey,PaulConte[英].陳恩義譯.SQLServer2000開發指南[M].北京:清華大學出版社,2004.[11]Dusa

溫馨提示

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

評論

0/150

提交評論