版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
大連理工大學(xué)本科畢業(yè)設(shè)計(論文)個人財務(wù)管理系統(tǒng)PersonallyFinancialManagementSystem學(xué)院(系):軟件學(xué)院專業(yè):軟件工程學(xué)生姓名:學(xué)號:2009XXXXX指導(dǎo)教師:評閱教師:完成日期:2013.6.7大連理工大學(xué)DalianUniversityofTechnology摘要當(dāng)前社會,很大一部分年輕人對理財意識相對薄弱,知識匱乏。與此同時,市場上的財務(wù)管理系統(tǒng)軟件大多數(shù)是面向企業(yè)或特定用戶的需求,面向普通用戶的個人財務(wù)管理軟件極為稀少。為了滿足普通用戶的需求,開發(fā)了此軟件。個人財務(wù)管理系統(tǒng)的主要功能是實現(xiàn)財務(wù)管理的系統(tǒng)化,規(guī)范化,自動化。此財務(wù)管理系統(tǒng)分為用戶管理模塊、系統(tǒng)管理模塊、收支管理模塊、接待管理模塊、待購管理模塊、資金管理模塊、財務(wù)統(tǒng)計模塊七個模塊,實現(xiàn)賬務(wù)提醒、用戶管理、財務(wù)查詢、統(tǒng)計分析等功能,幫助用戶更好的管理個人財務(wù)。本次畢業(yè)設(shè)計個人財務(wù)管理系統(tǒng)基于ASP.NET,以SQLServer2012作為數(shù)據(jù)庫工具,以VisualStudio2012進(jìn)行界面設(shè)計、系統(tǒng)設(shè)計與開發(fā),設(shè)計完成的。本報告采用生命周期法,“自頂向下”地完成對開發(fā)系統(tǒng)的了需求分析,得到系統(tǒng)的功能需求,隨后對系統(tǒng)進(jìn)行概要設(shè)計和詳細(xì)設(shè)計,確定系統(tǒng)功能模塊、基本流程、存儲結(jié)構(gòu)、基本界面等。隨后應(yīng)用開發(fā)工具對系統(tǒng)進(jìn)行設(shè)計、編碼、調(diào)試等操作,最終實現(xiàn)個人財務(wù)管理系統(tǒng)的各個功能。關(guān)鍵詞:個人財務(wù)管理系統(tǒng);C#;SQL數(shù)據(jù)庫;ASP.NET;VisualStudioPersonallyFinancialManagementSystemAbstractThecurrentsociety,alargepartofyoungpeople'sfinancialawarenessisrelativelyweak,andlackofknowledge.Atthesametime,themarketisfacingfinancialmanagementsoftwaremostenterprise,orhavespecialuse.facingcommonuser'spersonalfinancialmanagementsystemisextremelyscarce.Inordertomeettheneedsofordinaryusers,especiallydevelopedthissoftware.Personalfinancialmanagementsystem'smainfunctionistoachievefinancialmanagementsystematization,standardizationandautomation.Thefinancialmanagementsystemisdividedintotheusermanagementmodule,systemmanagementmodule,therevenueandexpendituremanagementmodule,borrowandlendmanagementmodule,tobepurchasedmanagementmodule,fundmanagementmodule,financialstatisticsmodulesevenmodulestoachieveaccountingreminders,usermanagement,financialtracking,budgeting,statisticalanalysis,smalltoolsandotherfunctions,helpusersbettermanagetheirpersonalfinances.ThegraduationprojectpersonalfinancialmanagementsystembasedonASP.NET,withSQLServer2012asthedatabasetoolsandVisualStudio2012forinterfacedesign,systemdesignanddevelopment.Thisarticleuseslife-cycleapproach,"top-down"onthedevelopmentofsystemstocompleteaneedsanalysis,systemfunctionalrequirements,andthenoutlinethesystemdesignanddetaileddesign,todeterminethesystemfunctionmodules,thebasicprocess,storagestructure,basicinterface.Followedbyapplicationdevelopmenttoolsonthesystemdesign,coding,debuggingandotheroperations,andultimatelyachievepersonalfinancialsystemfunctional.KeyWords:PersonalFinancialManagementSystem;C#;SQLServer;ASP.NET;VisualStudio
目錄摘要 IAbstract 1引言 41開發(fā)目的和核心技術(shù)介紹 51.1系統(tǒng)目的和目標(biāo) 51.2開發(fā)工具簡介 61.2.1MicrosoftVisualStudio簡介 61.2.2C#簡介 61.2.3ASP.NET簡介 71.2.4SQLServer 102系統(tǒng)分析 102.1可行性分析 102.2用戶需求分析 122.3業(yè)務(wù)流程分析 122.4數(shù)據(jù)流程分析 133系統(tǒng)總體設(shè)計 143.1系統(tǒng)總體結(jié)構(gòu)設(shè)計 153.2功能模塊設(shè)計 153.3數(shù)據(jù)類的設(shè)計 173.4數(shù)據(jù)庫設(shè)計 213.4.1概念結(jié)構(gòu)設(shè)計 223.4.2邏輯結(jié)構(gòu)設(shè)計 234系統(tǒng)詳細(xì)設(shè)計 264.1用戶管理模塊 264.2系統(tǒng)管理模塊 284.3收支管理模塊 314.4借貸管理模塊 334.5待購管理模塊 344.6資金管理模塊 364.7財務(wù)統(tǒng)計模塊 375系統(tǒng)實現(xiàn) 375.1界面實現(xiàn) 375.2功能實現(xiàn) 396系統(tǒng)測試 416.1測試目的和意義 416.2測試原則 426.3測試用例 43結(jié)論 45參考文獻(xiàn) 46致謝 47
引言在平時的生活中,我們很多人缺乏財務(wù)管理的意識。我們有多少錢,我們的錢都存在哪兒,我們把錢花在了哪兒,花的值不值,這些問題,只有一個模糊的認(rèn)識。由此常常會出現(xiàn)錢不夠花的狀況。所謂開源節(jié)流,科學(xué)的財務(wù)管理對于我們來說非常重要。如今社會高速發(fā)展,個人財務(wù)管理的重要性日益突出,當(dāng)今社會越來越朝著信息化數(shù)字化發(fā)展,計算機(jī)的應(yīng)用領(lǐng)域使我們的生活越來越方便和快捷,可以說我們每個人的生活都離不開計算機(jī)的幫助了。越來越多的個人應(yīng)用軟件成為人們重要的助手,也在潛移默化的改變著我們的生活。許多軟件研發(fā)人員開始著手于財務(wù)管理系統(tǒng)的開發(fā)。個人的財務(wù)管理也向著系統(tǒng)化、電子化發(fā)展。但現(xiàn)今市場上個人的財務(wù)管理軟件確很少且不完善,實際生活中經(jīng)常要對個人的各項財務(wù)收支進(jìn)行管理,本課題的目的就是利用計算機(jī)對各項財務(wù)進(jìn)行電子化的管理,使我們的理財更加方便和理性化,提高我們生活的質(zhì)量和品質(zhì)。我在在大學(xué)學(xué)到的編程方面的基本知識,加上實習(xí)過程中掌握的網(wǎng)絡(luò)方面、ASP.NET,C#等新知識,使得開發(fā)一款能實現(xiàn)基本功能的個人財務(wù)管理系統(tǒng)成為可能。這樣可以幫助我們可以在之后利用計算機(jī)來管理日常開支、借貸等個人財務(wù)方面的工作。在減輕個人財務(wù)管理的壓力的同時,使財務(wù)管理更加專業(yè)化,自動化,理性化,以提升個人的生活態(tài)度、生活質(zhì)量等。
1開發(fā)目的和核心技術(shù)介紹1.1系統(tǒng)目的和目標(biāo)企業(yè)財務(wù)管理很重要,同樣,個人的理財也占據(jù)同等甚至更高的地位。日子就是靠過出來的,得精打細(xì)算。因此,設(shè)計一款簡單使用的個人財務(wù)管理系統(tǒng)來管理日常開支、借入借出、收支統(tǒng)計等十分有必要性。個人財務(wù)管理系統(tǒng)主要解決的問題,及設(shè)計此款軟件的目的由以下所述:(1)計算機(jī)記錄個人日常財務(wù)支出、借入借出、收入等相關(guān)信息,可以節(jié)省許多人力和物力,方便管理,由此可以減少紙筆等不必要的開支。(2)系統(tǒng)生成財務(wù)統(tǒng)計相關(guān)信息,能夠準(zhǔn)確的統(tǒng)計用戶在特定時間財務(wù)方面的相關(guān)信息。個人財務(wù)的管理包括收入、支出、統(tǒng)計、預(yù)算等各個方面。我通過對同事、同學(xué)調(diào)查問卷的方式調(diào)查身邊人對財務(wù)管理方面的相關(guān)信息發(fā)現(xiàn),身邊大部分人沒有嚴(yán)格的個人財務(wù)管理的概念,而其他部分人也僅僅是流水賬的形式,對工資、支出等做統(tǒng)計,數(shù)據(jù)相對比較混亂,不易統(tǒng)計,由此,以年輕人為對象,設(shè)計一款能夠科學(xué)地記賬、財務(wù)統(tǒng)計、預(yù)算的軟件來滿足用戶個人理財?shù)男枰?。此系統(tǒng)提供用戶信息管理、開支收入記錄、借入借出統(tǒng)計、賬務(wù)查詢、預(yù)算管理等功能,實現(xiàn)以下幾個目標(biāo):(1)系統(tǒng)界面簡潔美觀,易使用、易維護(hù),能夠適用于非計算機(jī)人員使用。能夠完成對用戶基本財務(wù)狀況的存儲和查詢,并提供數(shù)據(jù)備份等系統(tǒng)維護(hù)功能,可以查找、修改、添加和刪除用戶個人財務(wù)信息。從而使用戶面對一個龐大的用戶財務(wù)數(shù)據(jù)庫,可以全面、準(zhǔn)確、有效的處理財務(wù)管理的各種信息,及時掌握財務(wù)信息的動態(tài)變化,更方便地管理個人財務(wù)。(2)可擴(kuò)展性和包容性強(qiáng)。系統(tǒng)的可擴(kuò)展性應(yīng)包括能接納已有的系統(tǒng)和在今后系統(tǒng)軟硬件擴(kuò)展時,能有效地保護(hù)已有的投資,特別是在應(yīng)用需求變化時,有一個較好的應(yīng)用平臺,能容易地加以調(diào)整。系統(tǒng)易于擴(kuò)充升級,既能滿足當(dāng)前業(yè)務(wù)的需求,又能為今后的擴(kuò)充留有空間。(3)為用戶提供良好方便的信息服務(wù)。在財務(wù)信息標(biāo)準(zhǔn)化、規(guī)范化的基礎(chǔ)上,對信息進(jìn)行合理的布局,在提供優(yōu)質(zhì)、高效的業(yè)務(wù)管理和事務(wù)處理的同時,能夠按照用戶要求進(jìn)行高效率的計算統(tǒng)計任務(wù),使用戶可以在這個平臺上了解個人財務(wù)信息,自主的按分類查找信息,并且可以提供統(tǒng)計信息,使用戶及時真實的了解自己的收入、支出和債務(wù)情況。(4)可靠運(yùn)行,安全保密??梢允褂镁W(wǎng)絡(luò)加密保護(hù),用來幫助盡可能地減少在公用網(wǎng)絡(luò)和專用網(wǎng)絡(luò)上傳輸敏感信息所帶有的風(fēng)險和權(quán)限限制等。因此系統(tǒng)建設(shè)應(yīng)具有安全高效的通信機(jī)制、身份認(rèn)證、權(quán)限檢查,以解決財務(wù)管理系統(tǒng)的安全性、保密性問題,防止非法侵入和信息泄密。1.2開發(fā)工具簡介本次畢業(yè)設(shè)計個人財務(wù)管理系統(tǒng)基于ASP.NET,以C#作為編程語言,以SQLServer2012作為數(shù)據(jù)庫工具,以VisualStudio2012作為開發(fā)平臺。1.2.1MicrosoftVisualStudio簡介VisualStudio是微軟公司推出的開發(fā)環(huán)境,VisualStudio可以用來創(chuàng)建Windows平臺下的Windows應(yīng)用程序和網(wǎng)絡(luò)應(yīng)用程序,也可以用來創(chuàng)建網(wǎng)絡(luò)服務(wù)、智能設(shè)備應(yīng)用程序和Office插件。VisualStudio是目前最流行的Windows平臺應(yīng)用程序開發(fā)環(huán)境。最新版本為VisualStudio2012版本,基于.NETFramework4.5。1.2.2C#簡介C#是Microsoft在2000年七月推出.NETFramework的第1版時提供的一種全新語言[1],是一種安全的、穩(wěn)定的、簡單的、優(yōu)雅的,由C和C++衍生出來的面向?qū)ο蟮木幊陶Z言。它在繼承C和C++強(qiáng)大功能的同時去掉了一些它們的復(fù)雜特性(例如沒有宏和不允許多重繼承)。C#綜合了VB簡單的可視化操作和C++的高運(yùn)行效率,以其強(qiáng)大的操作能力、優(yōu)雅的語法風(fēng)格、創(chuàng)新的語言特性和便捷的面向組件編程的支持成為.NET開發(fā)的首選語言。C#是面向?qū)ο蟮木幊陶Z言。它使得程序員可以快速地編寫各種基于MICROSOFT.NET平臺的應(yīng)用程序,MICROSOFT.NET提供了一系列的工具和服務(wù)來最大程度地開發(fā)利用計算與通訊領(lǐng)域。正是由于C#面向?qū)ο蟮淖吭皆O(shè)計,使它成為構(gòu)建各類組件的理想之選——無論是高級的商業(yè)對象還是系統(tǒng)級的應(yīng)用程序。使用簡單的C#語言結(jié)構(gòu),這些組件可以方便的轉(zhuǎn)化為XML網(wǎng)絡(luò)服務(wù),從而使它們可以由任何語言在任何操作系統(tǒng)上通過INTERNET進(jìn)行調(diào)用。C#使得C++程序員可以高效的開發(fā)程序,且因可調(diào)用由C/C++編寫的本機(jī)原生函數(shù),因此絕不損失C/C++原有的強(qiáng)大的功能。因為這種繼承關(guān)系,C#與C/C++具有極大的相似性,熟悉類似語言的開發(fā)者可以很快的轉(zhuǎn)向C#。1.2.3ASP.NET簡介ASP.NET(ActiveServerPage.NET)是微軟公司基于.NET4.0框架的新一代網(wǎng)絡(luò)編程語言,也是目前最新的web技術(shù)之一。[3]ASP.NET是M的一部分,作為戰(zhàn)略產(chǎn)品,不僅僅是ActiveServerPage(ASP)的下一個版本;它還提供了一個統(tǒng)一的Web開發(fā)模型,其中包括開發(fā)人員生成企業(yè)級Web應(yīng)用程序所需的各種服務(wù)。ASP.NET的語法在很大程度上與ASP兼容,同時它還提供一種新的編程模型和結(jié)構(gòu),可生成伸縮性和穩(wěn)定性更好的應(yīng)用程序,并提供更好的安全保護(hù)??梢酝ㄟ^在現(xiàn)有ASP應(yīng)用程序中逐漸添加ASP.NET功能,隨時增強(qiáng)ASP應(yīng)用程序的功能。ASP.NET是一個已編譯的、基于.NET的環(huán)境,可以用任何與.NET兼容的語言(包括VisualBasic.NET、C#和J)創(chuàng)作應(yīng)用程序。另外,任何ASP.NET應(yīng)用程序都可以使用整個.NETFramework。開發(fā)人員可以方便地獲得這些技術(shù)的優(yōu)點(diǎn),其中包括托管的公共語言運(yùn)行庫環(huán)境、類型安全、繼承等等。ASP.NET可以無縫地與WYSIWYGHTML編輯器和其他編程工具(包括MicrosoftVisualStudio.NET)一起工作。這不僅使得Web開發(fā)更加方便,而且還能提供這些工具必須提供的所有優(yōu)點(diǎn),包括開發(fā)人員可以用來將服務(wù)器控件拖放到Web頁的GUI和完全集成的調(diào)試支持。微軟為ASP.net設(shè)計了這樣一些策略:易于寫出結(jié)構(gòu)清晰的代碼、代碼易于重用和共享、可用編譯類語言編寫等等,目的是讓程序員更容易開發(fā)出Web應(yīng)用,滿足計算向Web轉(zhuǎn)移的戰(zhàn)略需要。ADO.NET簡介本系統(tǒng)數(shù)據(jù)存儲在數(shù)據(jù)庫中。利用我們學(xué)過的SQL語法可以直接操縱數(shù)據(jù)庫的數(shù)據(jù),但系統(tǒng)頁面也必須提供一個接口,以便連接數(shù)據(jù)庫并執(zhí)行SQL指令。在.NET技術(shù)中協(xié)助我們連接數(shù)據(jù)庫并執(zhí)行SQL指令的機(jī)制就是ADO.NET。[4]在web的系統(tǒng)開發(fā)中,數(shù)據(jù)的操作占據(jù)了開發(fā)大量的工作,要操作的數(shù)據(jù)包括幾個方面:存儲在數(shù)據(jù)庫中的數(shù)據(jù)、存儲在文件中的數(shù)據(jù)以及XML數(shù)據(jù),這其中最普遍的是操作存儲在數(shù)據(jù)庫中的數(shù)據(jù)。ADO.NET提供了ADO.NET技術(shù),是一組面向.NET編程人員公開的數(shù)據(jù)訪問服務(wù)的類。ADO.NET提供了對關(guān)系數(shù)據(jù)、XML和應(yīng)用程序數(shù)據(jù)的訪問,是.NETFramework不可缺少的一部分。ADO.NET支持多種開發(fā)需求,包括創(chuàng)建由應(yīng)用程序、工具、語言和Internet瀏覽器使用的前端數(shù)據(jù)庫客戶端和中間層業(yè)務(wù)對象。ADO.NET組件是將數(shù)據(jù)訪問與數(shù)據(jù)處理進(jìn)行分離。它通過兩個主要的組件:.NET數(shù)據(jù)提供程序(dataprovider)和Dataset來完成。下圖1.1說明了數(shù)據(jù)訪問與數(shù)據(jù)處理分離的概念。圖1.1ADO.NET的組件結(jié)構(gòu)圖圖1.1是ADO.NET的組件結(jié)構(gòu)圖,除了可以很清楚的看到其內(nèi)部組成,還可以看到數(shù)據(jù)訪問一般有兩種方式:一是通過DataReader對象來直接訪問的,另一種則是通過DataSet和DataAdapter來訪問的。ADO.NET體系結(jié)構(gòu)的一個核心元素是.NET數(shù)據(jù)提供程序,它是專門為數(shù)據(jù)處理以及快速地只進(jìn)、只讀訪問數(shù)據(jù)而設(shè)計的組件,包括Connection、Command、DataReader和DataAdapter對象的組件。具體如表1.1所示。表1.1數(shù)據(jù)提供者的對象對象名稱描述Connection提供與數(shù)據(jù)源的連接Commander用于返回數(shù)據(jù)、修改數(shù)據(jù)、運(yùn)行存儲過程以及發(fā)送或檢索參數(shù)信息的數(shù)據(jù)庫命令DataReader從數(shù)據(jù)源中提供高性能的數(shù)據(jù)流DataAdapter提供連接DataSet對象和數(shù)據(jù)源的橋梁,使用Command對象在數(shù)據(jù)庫中執(zhí)行SQL命令,以便將數(shù)據(jù)加載到DataSet中,并對DataSet中數(shù)據(jù)的更改與數(shù)據(jù)源保持一致DataSet是ADO.NET體系的另一個核心組件,它專門為各種數(shù)據(jù)源的數(shù)據(jù)訪問獨(dú)立性而設(shè)計的,所以它可以用于多個不同的數(shù)據(jù)源、XML數(shù)據(jù)或管理應(yīng)用程序的本地數(shù)據(jù)、如內(nèi)存中的數(shù)據(jù)高速緩存。DataSet包含一個或多個DataTable對象的集合,這些對象由數(shù)據(jù)行、數(shù)據(jù)列以及有關(guān)DataTable對象中數(shù)據(jù)的主鍵、外鍵、約束、關(guān)系信息組成。它本質(zhì)上是一個內(nèi)存中的數(shù)據(jù)庫,但從不關(guān)系它的數(shù)據(jù)是從數(shù)據(jù)庫、XML文件中、還是從這兩者中或從其他什么地方獲得。1.2.4SQLServerSQLServer是一個關(guān)系數(shù)據(jù)庫管理系統(tǒng)。它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同開發(fā)的,于1988年推出了第一個OS/2版本。[5]在WindowsNT推出后,Microsoft與Sybase在SQLServer的開發(fā)上就分道揚(yáng)鑣了,Microsoft將SQLServer移植到WindowsNT系統(tǒng)上,專注于開發(fā)推廣SQLServer的WindowsNT版本。Sybase則較專注于SQLServer在UNIX操作系統(tǒng)上的應(yīng)用。SQLServer2012主要版本包括新的商務(wù)智能版本,增加PowerView數(shù)據(jù)查找工具和數(shù)據(jù)質(zhì)量服務(wù),企業(yè)版本則提高安全性可用性,以及從大數(shù)據(jù)到StreamInsight復(fù)雜事件處理,再到新的可視化數(shù)據(jù)和分析工具等,都將成為SQLServer2012最終版本的一部分2系統(tǒng)分析2.1可行性分析通過對個人財務(wù)管理系統(tǒng)的開發(fā)具有一定了解之后,現(xiàn)對開發(fā)此系統(tǒng)的可行性進(jìn)行分析。(1)技術(shù)的可行性分析主要從事項目實施的技術(shù)角度,合理設(shè)計技術(shù)方案,并進(jìn)行比選和評價;本系統(tǒng)主要采用數(shù)據(jù)庫管理技術(shù),SQLServer支持SQLServer2000及之后各個版本,有相應(yīng)操作系統(tǒng)與之匹配。SQLServer能夠處理相對大量的數(shù)據(jù),它具備的靈活性、安全性、易用性等為數(shù)據(jù)庫編程提供條件;硬件方面,該個人財務(wù)管理系統(tǒng)的運(yùn)行功能相對比較簡單,編碼簡潔,對內(nèi)存、CPU占用都很小,對操作系統(tǒng)沒有特殊要求,WindowXP、Vista、WindowsServer各個版本都支持。根據(jù)對個人財務(wù)管理系統(tǒng)基本需求分析,設(shè)計出系統(tǒng)基本功能,之后進(jìn)行數(shù)據(jù)庫相關(guān)設(shè)計,對其進(jìn)行E-R圖設(shè)計,得到幾個基本實體,實體間關(guān)系及實體的基本屬性,然后建立基本數(shù)據(jù)庫及表。系統(tǒng)設(shè)計平臺選擇visualstudio,基于ASP.NET,用C#編程語言進(jìn)行編程,設(shè)計個人財務(wù)管理系統(tǒng)各個界面,及其功能實現(xiàn),如用戶注冊,登陸,功能主界面等。所以,從技術(shù)的可行性上分析,本個人財務(wù)管理系統(tǒng)的設(shè)計是完全可行的。(2)經(jīng)濟(jì)可行性分析經(jīng)濟(jì)可行性分析需要估算新系統(tǒng)的成本效益分析,其中包括估計項目開發(fā)的成本,開發(fā)費(fèi)用和今后的運(yùn)行、維護(hù)費(fèi)用;估計新系統(tǒng)將獲得的效益,估算開發(fā)成本是否回高于項目預(yù)期的全部經(jīng)費(fèi)。并且,分析系統(tǒng)開發(fā)是否會對其它產(chǎn)品或利潤帶來一定影響。該個人財務(wù)管理系統(tǒng)是課程設(shè)計,所以無需考慮成本及運(yùn)行后維護(hù)費(fèi)用等投入,而本系統(tǒng)完成后,通過個人財務(wù)管理系統(tǒng)管理個人收入、消費(fèi)、借入借出等財務(wù)信息,可以節(jié)省很多人力物力,且方便管理、備份及保存,提高管理效率,與此同時,應(yīng)用該系統(tǒng)后,可以使得個人財務(wù)管理更加系統(tǒng)后、自動化,所以從經(jīng)濟(jì)可行性上分析是完全可行的(3)法律及社會可行性分析由于本系統(tǒng)應(yīng)用正版軟件開發(fā),且不存在剽竊,在圖書館查詢相關(guān)資料,因此不存在侵權(quán)等相關(guān)的法律問題。個人財務(wù)管理系統(tǒng)是簡單的財務(wù)管理方面的小程序,操作簡潔、靈活,只需有基本計算機(jī)操作能力的用戶就可以簡單上手,界面友好,社會可行性高綜上所述,我開發(fā)的個人財務(wù)管理系統(tǒng),技術(shù)、經(jīng)濟(jì)、技術(shù)和法律社會可行性都具備,可以進(jìn)行設(shè)計與開發(fā)。2.2用戶需求分析在確定軟件開發(fā)可行的情況下,對軟件需要實現(xiàn)的各個功能進(jìn)行詳細(xì)分析。需求分析階段是一個很重要的階段,這一階段做得好,將為整個軟件開發(fā)項目的成功打下良好的基礎(chǔ)。"唯一不變的是變化本身。",同樣需求也是在整個軟件開發(fā)過程中不斷變化和深入的,因此我們必須制定需求變更計劃來應(yīng)付這種變化,以保護(hù)整個項目的順利進(jìn)行。軟件需求定義是軟件設(shè)計開發(fā)階段的輸入,為需求被翻譯成為可以使軟件建構(gòu)功能的代碼發(fā)揮作用。2.3業(yè)務(wù)流程分析 用戶首次使用個人財務(wù)管理系統(tǒng),首先進(jìn)入注冊頁面注冊新用戶,成功注冊后,用注冊用戶登陸到系統(tǒng)主界面。進(jìn)入主界面后需首先到系統(tǒng)管理里面去添加賬戶類型,消費(fèi)類型,收入類型,然后添加賬戶,之后再進(jìn)入系統(tǒng)主界面去選擇需要的功能。如果要添加用戶或修改密碼進(jìn)入用戶管理模塊進(jìn)行相應(yīng)操作;如果要記錄及統(tǒng)計收支情況,進(jìn)入收支管理模塊,輸入收入及消費(fèi)支出的條目,及其所對應(yīng)的賬戶名,系統(tǒng)會生成相應(yīng)表格并自動同步賬戶中余額;如果要進(jìn)行借貸管理,首先要進(jìn)入聯(lián)系人管理模塊加入聯(lián)系人相關(guān)信息,之后進(jìn)入借貸管理模塊,根據(jù)需求加入借入或借出條目,同樣會生成表格及同步賬戶余額,待還款或收款后更改條目狀態(tài),賬戶余額會及時同步;如果最近有什么想要買的東西,可進(jìn)入待購管理模塊,加入相應(yīng)記錄,等資金允許進(jìn)行購買后,可修改記錄狀態(tài),同樣會自動更新賬戶余額信息;如果要進(jìn)行自己賬戶內(nèi)部完成上述記錄輸入后,在首頁會有相應(yīng)提醒,如某聯(lián)系人要過生日了,準(zhǔn)備禮物、催還款或收款等2.4數(shù)據(jù)流程分析 數(shù)據(jù)流程圖是描述系統(tǒng)數(shù)據(jù)流程的工具,它將數(shù)據(jù)獨(dú)立抽象出來,通過圖形方式描述信息的來龍去脈和實際流程。通過上述業(yè)務(wù)流程的分析來畫個人財務(wù)管理系統(tǒng)的數(shù)據(jù)流程圖,來確定系統(tǒng)數(shù)據(jù)的具體流入及流出,確定外部實體,劃分個人財務(wù)管理系統(tǒng)具體模塊及功能,主要模塊分為資金管理模塊、收支管理模塊、借貸管理模塊、待購管理模塊、財務(wù)統(tǒng)計模塊、系統(tǒng)管理模塊、用戶管理模塊,其中用戶管理及系統(tǒng)管理是其他模塊的前提,經(jīng)過分析繪制出出如下個人財務(wù)管理系統(tǒng)的數(shù)據(jù)流程圖。個人理財管理系統(tǒng)的頂層數(shù)據(jù)流圖,如圖2.1所示,圖2.1個人財務(wù)管理系統(tǒng)頂層DFD個人財務(wù)管理系統(tǒng)數(shù)據(jù)流圖第一層如圖2.2所示。圖2.2個人財務(wù)管理系統(tǒng)第一層3系統(tǒng)總體設(shè)計個人理財管理系統(tǒng)主要的工作流程就是輸入相關(guān)記錄信息,經(jīng)過系統(tǒng)處理得到處理后的相關(guān)信息。系統(tǒng)總體設(shè)計這一節(jié)就是來說明個人財務(wù)管理系統(tǒng)具體是用來做什么的,是如何實現(xiàn)其相關(guān)功能的。即通過給出該系統(tǒng)的物理模型的方式來描述個人財務(wù)管理系統(tǒng)如何實現(xiàn)在系統(tǒng)分析中設(shè)計的各個功能。系統(tǒng)總體設(shè)計階段的主要內(nèi)容包括:結(jié)構(gòu)設(shè)計、數(shù)據(jù)庫設(shè)計等3.1系統(tǒng)總體結(jié)構(gòu)設(shè)計系統(tǒng)總體分為資金管理,收支管理,接待管理,代購管理,財務(wù)統(tǒng)計,系統(tǒng)管理,用戶管理,七個主模塊。圖3.1為其功能模式圖,圖3.1功能模式圖3.2功能模塊設(shè)計根據(jù)系統(tǒng)分析中個人財務(wù)管理系統(tǒng)包含的功能,個人財務(wù)管理系統(tǒng)分為7個主模塊,7個模塊又可以分為多個子模塊。系統(tǒng)管理模塊分為類別管理模塊,賬戶管理模塊,聯(lián)系人管理模塊。類別管理模塊是用來添加消費(fèi)類型,收入類型,以及賬戶類型的,在使用此個人財務(wù)管理系統(tǒng),這一模塊必須要提前設(shè)置。賬戶管理系統(tǒng)是添加目前資金分布所在的賬戶信息的,此項跟類型管理模塊一樣,必須提前設(shè)置。聯(lián)系人管理系統(tǒng)是用來存儲與登錄用戶相關(guān)的人員信息的,其中包含姓名,手機(jī)號,E-mail,生日等信息,若要使用借貸管理模塊功能,此項必須提前設(shè)置,若要使用首頁的生日信息提醒功能,聯(lián)系人中需要添加生日項紀(jì)錄用戶管理模塊分為注冊模塊,登陸模塊,以及密碼修改模塊,在使用本系統(tǒng)是首先要注冊一個用戶,否則不能登陸到本系統(tǒng)。注冊完成后可以選擇登陸,信息正確,登陸成功。密碼修改模塊是用來修改當(dāng)前登陸用戶的密碼的。收支管理模塊分為收入管理模塊跟支出管理模塊,分別記錄收入跟支出的相關(guān)信息。記錄信息后,可以根據(jù)信息的id修改記錄的相關(guān)信息。并可以根據(jù)時間、類型、賬戶等信息來檢索所需條目的信息。借貸管理模塊分為借入管理模塊跟借出管理模塊,分別記錄借入跟借出的相關(guān)信息,如金額,取自賬戶或存入賬戶、借貸狀態(tài)等信息,并可以時間、對象、狀態(tài)來檢索條目。待購模塊是用來記錄當(dāng)前未買而想要在之后購買或支出的條目信息,類似于購物網(wǎng)站的收藏夾,條目記錄有金額、類型等信息,可以進(jìn)行修改及刪除,當(dāng)購買后,信息會存入到支出模塊,賬戶余額隨之變化。財務(wù)統(tǒng)計模塊分為收支年度統(tǒng)計模塊。收支年度統(tǒng)計模塊是以柱狀圖的方式來統(tǒng)計所選年份,收支的情況,方便之后更好的進(jìn)行財務(wù)的管理。資金管理模塊分為資金分布模塊和資金轉(zhuǎn)賬模塊。資金分布模塊是以餅圖的方式來顯示當(dāng)前自己擁有金錢的具體分布情況及比例,能讓用戶準(zhǔn)確的知道自己到底有多少錢,自己的錢在哪。資金轉(zhuǎn)賬模塊是用來管理各賬戶間資金的轉(zhuǎn)賬。系統(tǒng)的總體功能結(jié)構(gòu)圖如圖3.2所示,圖3.2總體功能結(jié)構(gòu)圖3.3數(shù)據(jù)類的設(shè)計在系統(tǒng)分析階段已經(jīng)得出了個人財務(wù)管理系統(tǒng)數(shù)據(jù)的流程,現(xiàn)在具體對數(shù)據(jù)進(jìn)行設(shè)計,得到如下的數(shù)據(jù)字典表3.1為用戶信息的數(shù)據(jù)字典,包括用戶名,密碼兩個屬性表3.1用戶信息的數(shù)據(jù)字典數(shù)據(jù)項名內(nèi)容舉例類型取值范圍備注用戶名KiraChar最多50個字符唯一密碼123char最多50個字符表3.2為消費(fèi)類型的數(shù)據(jù)字典,包括,類型名,用戶名,類型編號三個屬性
表3.2消費(fèi)類型的數(shù)據(jù)字典數(shù)據(jù)項名內(nèi)容舉例類型取值范圍備注類型名衣服char最多50個字符唯一用戶名kirachar最多50個字符類型編號2int自動生成表3.3為收入類型的數(shù)據(jù)字典,包括類型名,用戶名,類型編號三個屬性表3.3收入類型的數(shù)據(jù)字典數(shù)據(jù)項名內(nèi)容舉例類型取值范圍備注類型名基本工資char最多50個字符唯一用戶名kirachar最多50個字符類型編號2int自動生成表3.4為賬戶類型的數(shù)據(jù)字典,包括類型名、用戶名、類型編號三個屬性。表3.4賬戶類型的數(shù)據(jù)字典數(shù)據(jù)項名內(nèi)容舉例類型取值范圍備注類型名借記卡char最多50個字符唯一用戶名kirachar最多50個字符類型編號2int自動生成表3.5為狀態(tài)的數(shù)據(jù)字典,只有狀態(tài)名這一個屬性表3.5狀態(tài)的數(shù)據(jù)字典數(shù)據(jù)項名內(nèi)容舉例類型取值范圍備注狀態(tài)名已還char最多20個字符唯一表3.6為賬戶的數(shù)據(jù)字典,屬性包含賬戶編號、賬戶名、用戶卡號或用戶名、余額賬戶類型備注。表3.6賬戶的數(shù)據(jù)字典數(shù)據(jù)項名內(nèi)容舉例類型取值范圍備注賬戶編號2int4隨機(jī)生成編號賬戶名中國銀行char50個字符賬戶卡號或用戶名6222023400015741578char50個字符銀行卡號或支付寶等用戶名余額1000float賬戶類型借記卡char50個字符備注工資卡char500個字符表3.7為收入信息的數(shù)據(jù)字典,屬性包括:用戶名、收入編號、日期、金額、存入賬戶、類型、說明。表3.7收入信息的數(shù)據(jù)字典數(shù)據(jù)項名內(nèi)容舉例類型取值范圍備注用戶名KiraChar最多50個字符收入編號3int自動生成不重復(fù)編號日期2013/5/08datetime金額5000float存入賬戶中國銀行char50個字符類型基本工資char50個字符說明繼續(xù)努力char500個字符表3.8為聯(lián)系人信息的數(shù)據(jù)字典,包含屬性:用戶名、聯(lián)系人生日、聯(lián)系人姓名、關(guān)系、性別、E-mail、電話、說明
表3.8聯(lián)系人信息的數(shù)據(jù)字典數(shù)據(jù)項名內(nèi)容舉例類型取值范圍備注用戶名kirachar50個字符聯(lián)系人姓名大奎c(diǎn)har50個字符生日1989/03/15Datetime關(guān)系朋友char50個字符性別男char20個字符Emaildk@char50個字符電har50個字符說明12年認(rèn)識的char500個字符表3.9為借入信息的數(shù)據(jù)字典,屬性包括用戶名、借入編號、日期、金額、對象、存入賬戶、狀態(tài)、備注。表3.9借入信息的數(shù)據(jù)字典數(shù)據(jù)項名內(nèi)容舉例類型取值范圍備注用戶名kirachar50個字符借入編號5int整數(shù)隨機(jī)生成日期2013/08/16Datetime金額1000float對象大奎c(diǎn)har50個字符存入賬戶現(xiàn)金char50個字符狀態(tài)已還char20個字符備注有借有還,再借不難char500個字符表3.10是借出信息的數(shù)據(jù)字典,屬性包括用戶名、借出編號、日期、金額、對象、存入賬戶、狀態(tài)、備注表3.10借出信息的數(shù)據(jù)字典數(shù)據(jù)項名內(nèi)容舉例類型取值范圍備注用戶名kirachar50個字符借出編號5int整數(shù)隨機(jī)生成日期2013/08/16Datetime金額1000float對象大奎c(diǎn)har50個字符存入賬戶現(xiàn)金char50個字符狀態(tài)已還char20個字符備注有借有還char500個字符表3.11待購信息的數(shù)據(jù)字典,屬性包括用戶名、待購類型、價格、數(shù)量、消費(fèi)需求備注。表3.11待購信息的數(shù)據(jù)字典數(shù)據(jù)項名內(nèi)容舉例類型取值范圍備注用戶名kirachar50個字符待購類型化妝品char50個字符價格195float數(shù)量1int消費(fèi)需求備注夏季衣服要多字符型50個漢字3.4數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫設(shè)計是根據(jù)對用戶的需求等的分析,對某一數(shù)據(jù)庫管理系統(tǒng)上設(shè)計數(shù)據(jù)庫的結(jié)構(gòu)和建立數(shù)據(jù)庫的過程。個人理財管理系統(tǒng)數(shù)據(jù)庫設(shè)計過程如下(1)根據(jù)之前對用戶需求分析,確定數(shù)據(jù)庫中要保存的信息的具體內(nèi)容,了解數(shù)據(jù)庫數(shù)據(jù)的流程(2)設(shè)計數(shù)據(jù)庫的概念模型。概念模型是現(xiàn)實世界的抽象反應(yīng),它表示試題類型及實體間的聯(lián)系,是獨(dú)立與計算機(jī)系統(tǒng)的模型,是實現(xiàn)世界到機(jī)器世界的一個中間單位。(3)邏輯結(jié)構(gòu)設(shè)計。邏輯設(shè)計的主要目標(biāo)是產(chǎn)生一個DBMS可處理的數(shù)據(jù)模型和數(shù)據(jù)庫模式,3.4.1概念結(jié)構(gòu)設(shè)計概念模型中最著名的和使用最為廣泛的是E-R圖模型。E-R模型直接從現(xiàn)實世界中抽象出試題類型和是體檢的聯(lián)系,是對現(xiàn)實世界的一種抽象,他的主要成分是實體、聯(lián)系和屬性。根據(jù)上面業(yè)務(wù)流程分析、數(shù)據(jù)流程分析、功能模塊的分析分析以及對數(shù)據(jù)類的設(shè)計,設(shè)計出個人理財管理系統(tǒng)的E-R圖如下圖3-4-1-1所示,圖3.3個人理財管理系統(tǒng)E-R圖3.4.2邏輯結(jié)構(gòu)設(shè)計邏輯結(jié)構(gòu)設(shè)計的主要目標(biāo)是產(chǎn)生一個DBMS可處理的數(shù)據(jù)模型和數(shù)據(jù)庫模式。其一般分為三步進(jìn)行:將E-R圖轉(zhuǎn)化為關(guān)系數(shù)據(jù)模型,關(guān)系模式的優(yōu)化,設(shè)計用戶外模式。根據(jù)數(shù)據(jù)類的設(shè)計及E-R圖的設(shè)計,得到以下的關(guān)系模式賬戶類型accounttype(用戶名UserName,賬戶類型名AccountTypeName,賬戶類型編號AccountTypeID)消費(fèi)類型costtype(用戶名UserName,消費(fèi)類型名CostTypeName,消費(fèi)類型編號CostTypeID)收入類型incometype(用戶名UserName,收入編號IncomeID,收入類型名IncometypeName)用戶User(用戶名UserName,用戶密碼Password)聯(lián)系人people(用戶名UserName,聯(lián)系人姓名PeopleName,聯(lián)系人生日Birthday,電話Tel,關(guān)系Relationship,郵箱Email,性別Gender,備注Comment)賬戶Account(用戶名UserName,賬戶類型AccountType,賬戶名AccountName,余額Balance,備注Comment)消費(fèi)cost(用戶名UserName,消費(fèi)編號CostID,位置Location,日期Date,類型Type,數(shù)量Count,金額Amount,賬戶Account,備注Comment)收入income(用戶名UserName,編號IncomeID,日期Date,類型Type,金額Amount,存入賬戶Account,備注Comment)借入borrow(用戶名UserName,借入編號BorrowID,日期Date,金額Amount,賬戶Account,目標(biāo)Target,狀態(tài)Status)借出lend(用戶名UserName,借出編號LendID,日期Date,金額Amount,取自賬戶Account,目標(biāo)Target,狀態(tài)Status)待購Need(用戶名UserName,待購編號NeedID,金額Amount,數(shù)量count,類型Type)得到以下數(shù)據(jù)基本表格:表3.12為用戶信息的表設(shè)計及條目信息舉例表3.12UserInfo記錄用戶信息UserNameUserNamePasswordUser01Aeolia1qaz2wsxE表3.13為收入信息的表設(shè)計及條目信息舉例表3.13Income記錄收入信息UserNameIncomeIDDateAmountAccountCommentTypeUser01Income12013/06/102500中國銀行卡年終獎獎金表3.14為消費(fèi)信息的表設(shè)計及條目信息舉例表3.14Cost記錄消費(fèi)信息UserNameCostIDDateLocationTypeCountAccountAmountCommentUser01Cost12013/06/10樂購衣服2現(xiàn)金360襯衫表3.15為借入信息的表設(shè)計及條目信息舉例表3.15Borrow記錄借出信息UserNameBorrowIDDateAmountTargetAccountCommentStatusUser01Borrow12013/06/10100Tom現(xiàn)金早飯錢未還表3.16為借出信息的表設(shè)計及條目信息舉例
表3.16Lend記錄借入信息UserNameLendIDDateAmountTargetAccountCommentStatusUser01Lent12013/06/10100Kitty現(xiàn)金代付班費(fèi)已還表3.17為存儲待購信息表的設(shè)計及示例表3.17Need記錄待購信息UserNameNeedIDTypeAmountCountCommentUser01Need1衣服2002好久沒買衣服了表3.18為存儲賬戶信息表的設(shè)計及示例表3.18tb_account記錄賬戶信息UserNameAccountNameTypeBalanceCardIDCommentUser01中國建設(shè)銀行借記卡500fairymydream工資卡,尾號66993表3.19為存儲賬戶類型的表設(shè)計及其示例表3.19tb_accounttype記錄賬戶類型信息UserNameAccountTypeIDAccountTypeNameUser011借記卡表3.20為存儲收入類型信息表的設(shè)計及其示例表3.20tb_incometype記錄收入類型信息UserNameIncomeTypeIDIncomeTypeNameUser011獎金表3.21為存儲支出類型表的設(shè)計及其示例表3.21tb_costtype記錄消費(fèi)類型信息UserNameCostTypeIDCostTypeNameUser011衣服表3.22為存儲聯(lián)系人信息表的設(shè)計及其示例表3.22tb_People記錄聯(lián)系人信息PeopleIDTelPeopleNameBirthdayRelationshipE-MailUser01aaaaa銀時1989.10.4朋友4系統(tǒng)詳細(xì)設(shè)計 詳細(xì)設(shè)計是軟件工程中軟件開發(fā)的一個步驟,就是對總體設(shè)計的一個細(xì)化,詳細(xì)的設(shè)計出每個模塊實現(xiàn)的算法以及界面。在結(jié)構(gòu)化系統(tǒng)設(shè)計中,各個模塊都是按照功能區(qū)劃分的,稱作功能模塊。功能模塊的劃分是否合理能夠顯著的影響系統(tǒng)效率以及系統(tǒng)的可維護(hù)性及可拓展性。過程設(shè)計的工具能夠指明控制流程、處理功能、數(shù)據(jù)結(jié)構(gòu)以及其他方面的實現(xiàn)細(xì)節(jié),從而在編碼階段能把設(shè)計的描述直接翻譯成程序代碼。[5]在這里選中流程圖來了解和設(shè)計各個功能模塊的具體功能及其流程4.1用戶管理模塊 用戶管理模塊是用來注冊新用戶,登陸,注銷以及修改用戶密碼。圖4.1登陸及注冊流程圖用戶登錄用戶打開財務(wù)管理系統(tǒng),首先會進(jìn)入登陸界面,輸入用戶名跟密碼,點(diǎn)擊登陸按鈕,若用戶及密碼正確擇通過驗證,進(jìn)入到個人財務(wù)管理系統(tǒng)主界面,若用戶名或密碼錯誤,則會給出提示用戶名或密碼錯誤。點(diǎn)擊取消會清空已鍵入的用戶名及密碼信息。(2)用戶注冊若用戶第一次登陸,需點(diǎn)擊注冊鏈接進(jìn)入用戶注冊界面,鍵入要注冊的用戶名,點(diǎn)擊右側(cè)的驗證按鈕,驗證此用戶是否已存在,存在則提示用戶名已存在,不存在則提示用戶名可用,鍵入密碼,確認(rèn)密碼,點(diǎn)擊注冊,提示注冊成功;點(diǎn)擊重置則會情況以輸入的信息。(3)修改密碼在(1)登陸成功后,點(diǎn)擊系統(tǒng)管理下密碼修改,進(jìn)入密碼修改界面,若原密碼正確,且新密碼跟確認(rèn)密碼相同,點(diǎn)擊修改后會成功修改密碼。4.2系統(tǒng)管理模塊分為類型管理,聯(lián)系人管理,賬戶管理三個功能,為借貸管理模塊、收支管理模塊、待購管理模塊等提供條件。類型管理進(jìn)入賬戶管理界面顯示已添加的支出類型、賬戶類型、收入類型,若要添加類型點(diǎn)擊添加按鈕,在要添加的類型處鍵入類型名,點(diǎn)擊添加,若已存在重名類型,會給出該類型名已存在的提示,若不存在擇添加成功,返回類型管理主界面。若要刪除類型,則選擇要刪除的類型的類型名,點(diǎn)擊刪除按鈕,點(diǎn)擊確定,成功刪除圖4.2類型管理流程圖(2)聯(lián)系人管理點(diǎn)擊聯(lián)系人管理進(jìn)入聯(lián)系人管理模塊界面顯示以添加的聯(lián)系人的信息。若要添加聯(lián)系人,則點(diǎn)擊添加按鈕,進(jìn)入添加聯(lián)系人界面,輸入聯(lián)系人姓名、生日、性別等信息,點(diǎn)擊添加,若該聯(lián)系人姓名已存在則給出改聯(lián)系人已存在,請重新輸入的提示,若不存在,則添加成功,返回聯(lián)系人管理界面;若要刪除聯(lián)系人,則在下拉單里選擇要刪除的聯(lián)系人的姓名,點(diǎn)擊刪除按鈕,點(diǎn)擊確認(rèn),成功刪除。若要修改聯(lián)系人信息,則點(diǎn)擊修改按鈕,從下拉單里選擇聯(lián)系人姓名,然后輸入更新的信息,點(diǎn)擊修改修改成功。圖4.3聯(lián)系人管理流程圖(3)賬戶管理點(diǎn)擊賬戶管理進(jìn)入賬戶管理模塊界面顯示以添加的賬戶的信息。若要添加賬戶,則點(diǎn)擊添加按鈕,進(jìn)入添加賬戶界面,輸入賬戶名、余額等信息,點(diǎn)擊添加,若該賬戶名已存在則給出改賬戶已存在,請重新輸入的提示,若不存在,則添加成功,返回賬戶管理界面;若要刪除賬戶,則在下拉單里選擇要刪除的賬戶名,點(diǎn)擊刪除按鈕,點(diǎn)擊確認(rèn),成功刪除。若要修改賬戶信息,則點(diǎn)擊修改按鈕,從下拉單里選擇賬戶名,然后輸入更新的信息,點(diǎn)擊修改修改成功。圖4.4賬戶管理流程圖4.3收支管理模塊 (1)收入管理點(diǎn)擊收入管理進(jìn)入收入管理界面,界面顯示已添加的收入條目,可按照界面上給出的時間范圍、存入賬戶、收入類型條件來檢索所需要的條目信息。若要添加記錄,則點(diǎn)擊添加按鈕,進(jìn)入添加界面,鍵入日期、類型、金額、存入賬戶、備注等信息,點(diǎn)擊確認(rèn),添加成功,后臺會按照存入賬戶和金額的信息來修改存入賬戶的余額。若要刪除條目則先檢索條目或遍歷條目,得到要刪除的條目的編號,然后輸入編號,點(diǎn)擊刪除,點(diǎn)擊確認(rèn)刪除,成功刪除。若要清空條目,則直接點(diǎn)擊清空按鈕,點(diǎn)擊確認(rèn)清空,成功清空。(2)支出管理點(diǎn)擊支出管理進(jìn)入支出管理界面,界面顯示跟收入管理基本類似,不再詳細(xì)描述,區(qū)別是后臺實現(xiàn)上,當(dāng)添加記錄后,后臺會相應(yīng)修改賬戶的余額,若余額充足,賬戶余額相應(yīng)減少,否則會給出提示“余額不足,請更換賬戶”。圖4.5收支管理流程圖4.4借貸管理模塊 (1)借入管理借入管理是用來管理向其他人或單位借款的相關(guān)事務(wù)。見圖4-6借入管理流程圖。點(diǎn)擊借入管理進(jìn)入借入管理界面,界面顯示之前添加的記錄??梢蕴钊牖蜻x擇相關(guān)內(nèi)容來對記錄進(jìn)行檢索。若要添加記錄則點(diǎn)擊添加按鈕,進(jìn)入添加記錄界面,鍵入借款對象,借款金額,及存入賬戶,點(diǎn)擊添加,成功添加,頁面跳轉(zhuǎn)到借入管理頁面,后臺會修改存入賬戶中的余額為之前余額與借入余額的值。若要還款則選擇借入編號,還款賬戶,若賬戶中余額充足,則成功還款,并相應(yīng)的修改還款賬戶的余額,否則會給出“賬戶余額不足,請更換賬戶的提示”。若要刪除記錄則選擇借入編號,點(diǎn)擊刪除,點(diǎn)擊確認(rèn),成功刪除。(2)借出管理借出管理是用來管理向他人或單位借出資金的事務(wù)。流程與借入管理類似,區(qū)別為,當(dāng)添加記錄時,后臺會查詢?nèi)】钯~戶的余額是否大于借款金額,若大于,則成功添加記錄,賬戶余額會相應(yīng)減少;否則給出“賬戶余額不足,請重新選擇賬戶”的提示。收款時,選擇相應(yīng)賬戶,點(diǎn)擊收款按鈕,成功收款,收款賬戶余額會相應(yīng)增加。圖4.6借入管理流程圖4.5待購管理模塊 待購管理模塊是用來記錄目前想買卻因為某些狀況暫時不買的相關(guān)記錄,類似于購物網(wǎng)站的收藏夾功能。具體實現(xiàn)見圖4-7待購管理流程圖。點(diǎn)擊待購管理鏈接,進(jìn)入待購管理界面,界面顯示之前添加的相關(guān)記錄??赏ㄟ^金額及類型來檢索想要查看的記錄。若要對條目進(jìn)行購買操作,選擇賬戶,后臺連接數(shù)據(jù)庫,取出賬戶余額與待購物品價格進(jìn)行比較,若余額充足,則會購買成功,支出模塊會相應(yīng)多一條記錄,待購模塊相應(yīng)記錄被刪除。若要進(jìn)行添加、刪除、清空等操作,點(diǎn)擊相關(guān)按鈕,按照提示完成操作即可。圖4.7待購管理流程圖4.6資金管理模塊 資金管理模塊分為資金分布及資金轉(zhuǎn)賬兩個小模塊,具體實現(xiàn)見圖4-8資金管理流程圖。點(diǎn)擊資金管理鏈接進(jìn)入資金管理界面,界面顯示當(dāng)前賬戶基本信息,資金分布位置,若需要資金轉(zhuǎn)賬業(yè)務(wù),則選擇起始賬戶,目的賬戶,若起始賬戶余額充足,點(diǎn)擊轉(zhuǎn)賬,點(diǎn)擊確認(rèn)轉(zhuǎn)賬成功,否則提示“起始賬戶余額不足,請更換賬戶”的提示。圖4.8資金管理流程圖4.7財務(wù)統(tǒng)計模塊 財務(wù)統(tǒng)計模塊分為年度收支統(tǒng)計柱狀圖跟資金分布統(tǒng)計餅圖兩個部分。年度收支統(tǒng)計柱狀圖以圖的形式直觀的進(jìn)行收入跟支出的比較,為用戶更好的管理個人財務(wù)提供分析依據(jù)。資金分布餅圖能夠把用戶“到底有多少錢,錢都在哪”這個問題,清晰直觀的反饋給用戶,使用戶更能清楚的了解自己當(dāng)前經(jīng)濟(jì)狀況。5系統(tǒng)實現(xiàn)5.1界面實現(xiàn)界面代碼是基于ASP.NET編寫的,主要工作是設(shè)計界面的布局以及將數(shù)據(jù)庫中取出的數(shù)據(jù)按照特定方式顯示給用戶。附圖為實現(xiàn)的部分界面圖片圖5.1是個人財務(wù)管理系統(tǒng)登陸的界面。圖5.2是個人財務(wù)管理系統(tǒng)主界面圖5.1用戶登錄界面圖5.2個人財務(wù)管理系統(tǒng)主界面圖5.2借出管理界面5.2功能實現(xiàn)功能的實現(xiàn)主要是去連接數(shù)據(jù)庫,提取數(shù)據(jù)庫中信息,按照界面操作發(fā)出的指令,去進(jìn)行相應(yīng)的操作完成對數(shù)據(jù)庫表數(shù)據(jù)的添加、修改、刪除,并將數(shù)據(jù)返回并在界面以指定格式顯示。以下附關(guān)鍵的幾處代碼。(1)登陸實現(xiàn)代碼首先連接數(shù)據(jù)庫,比較數(shù)據(jù)庫user表中是否有條目的user與輸入用戶名一致,不一致的話,給出提示“抱歉,你沒有權(quán)限操作!”,有一致的的話,比較輸入密碼與user表中密碼是否一致,不一致的話,給出“輸入密碼不正確”的提示,一致的話,頁面跳轉(zhuǎn)到ManagerFrame界面。protectedvoidButton1_Click(objectsender,EventArgse){ stringstr;str="selectPasswordfromtb_userwhereUserName=@name"; SqlConnectioncon=newSqlConnection(ConnectionString); SqlCommandcmd=newSqlCommand(str,con); cmd.Parameters.Add("@name",SqlDbType.VarChar,20); cmd.Parameters["@name"].Value=this.TextBox1.Text.Trim(); con.Open(); SqlDataReaderdr=cmd.ExecuteReader(); if(dr.Read()) { stringpwd=dr[0].ToString(); dr.Close(); if(pwd!=TextBox2.Text.Trim()) { this.lab.Text="輸入的密碼不正確!"; } else {Session["UserName"]=this.TextBox1.Text.Trim();Response.Redirect("ManagerFrame.aspx"); } } else { this.lab.Text="抱歉,你沒有權(quán)限操作!"; con.Close(); } }(2)檢索借出條目的代碼首先創(chuàng)建一個SqlDatataAdapter對象,然后執(zhí)行前臺輸入的搜索條件給出的信息的Command操作賦給上面定義的dataAdapter對象,之后DataAdapter對象將數(shù)據(jù)填入數(shù)據(jù)集時調(diào)用Fill(),最后在前臺的Gridview表顯示。protectedvoidButton4_Click1(objectsender,EventArgse){DateTimeDate1;DateTimeDate2;stringd1=this.TextBox3.Text;stringd2=this.TextBox4.Text;if(d1=="")d1="1900-01-01";if(d2=="")d2=DateTime.Now.ToString();Date1=Convert.ToDateTime(d1);Date2=Convert.ToDateTime(d2);stringStatus=this.DropDownList4.SelectedValue.ToString();stringTarget=this.TextBox5.Text.ToString();stringUserName=Session["UserName"].ToString();SqlConnectioncon=newSqlConnection(ConfigurationManager.AppSettings["ConnectionString"]);con.Open();stringsql=String.Format("SelectBorrowID,Date,Target,Amount,Account,Status,Commentfrom[tb_borrow]whereDatebetween'{0}'and'{1}'andTarget='{2}'andStatus='{3}'",Date1,Date2,Target,Status);if(Target==""||Target=="所有"){sql=String.Format("SelectBorrowID,Date,Target,Amount,Account,Status,Commentfrom[tb_borrow]whereDatebetween'{0}'and'{1}'andStatus='{3}'",Date1,Date2,Target,Status);}SqlCommandmyCommand=newSqlCommand(sql,con);SqlDataAdapterAdapter=newSqlDataAdapter();Adapter.SelectCommand=myCommand;DataSetds=newDataSet();Adapter.Fill(ds);ds.Tables[0].Columns[0].ColumnName="借入編號";ds.Tables[0].Columns[1].ColumnName="借入日期";ds.Tables[0].Columns[2].ColumnName="對象";ds.Tables[0].Columns[3].ColumnName="借入金額";ds.Tables[0].Columns[4].ColumnName="存入賬戶";ds.Tables[0].Columns[5].ColumnName="狀態(tài)";ds.Tables[0].Columns[6].ColumnName="備注";GridView1.DataSource=ds;GridView1.DataBind();con.Close();}6系統(tǒng)測試 系統(tǒng)測試是將已經(jīng)迭代完成的系統(tǒng)、其所依賴的硬件、網(wǎng)絡(luò)等多個方面進(jìn)行各種組裝測試和確認(rèn)測試。[15]系統(tǒng)測試時系統(tǒng)開發(fā)中一個很重要的必不可少的部分,它針對真?zhèn)€系統(tǒng)進(jìn)行測試,目的是驗證,已經(jīng)確認(rèn)的系統(tǒng)軟件是否滿足了需求分析中要求的各個功能,功能實現(xiàn)過程有沒有出現(xiàn)bug,從而及時的提出解決方案,找到發(fā)現(xiàn)問題的原因和位置,進(jìn)行修改。6.1測試目的和意義 根據(jù)系統(tǒng)測試的定義可以知道,系統(tǒng)測試的目的是以最少的人力和時間去發(fā)現(xiàn)錯誤和缺陷,而不僅僅是去驗證功能能否實現(xiàn)。一個好的測試用例是能夠發(fā)現(xiàn)之前沒有發(fā)現(xiàn)的問題。通過系統(tǒng)測試發(fā)現(xiàn)錯誤,并通過對錯誤產(chǎn)生的原因及錯誤的分布情況,找到當(dāng)前系統(tǒng)的缺陷,以便彌補(bǔ)以及改進(jìn)。6.2測試原則 根據(jù)測試的概念和目的,在進(jìn)行信息系統(tǒng)測試時應(yīng)遵循以下基本原則。測試工作并不是在應(yīng)用系統(tǒng)開發(fā)完成之后才進(jìn)行的,而是應(yīng)該盡可能早的,且不斷地進(jìn)行測試工作。由于開發(fā)各個階段的多樣性、問題的復(fù)雜性以及參加開發(fā)的各個人員之間能夠協(xié)調(diào)等等原因,使得開發(fā)的每個階段都可能出行問題。所以,測試應(yīng)該按照情況貫徹在開發(fā)的各個階段,盡可能早的發(fā)現(xiàn)問題,解決問題。測試工作應(yīng)該避開有之前的開發(fā)人員去完成,一方面因為,負(fù)責(zé)開發(fā)的人員基本上不愿意否認(rèn)自己的工作;另一方面,開發(fā)人員很難發(fā)現(xiàn)測試出自己的錯誤,很容易按照自己編碼邏輯來確定測試方法,不可避免的有些局限。所以測試工作應(yīng)該由專門測試人員負(fù)責(zé),這樣才能更客觀,更有效的完成測試工作。在設(shè)計測試方案的時候,不僅要確定輸入數(shù)據(jù),而且要根據(jù)系統(tǒng)的具體功能來確定預(yù)期的輸出結(jié)果。將實際的輸出結(jié)果與預(yù)期的結(jié)果進(jìn)行比較就能發(fā)現(xiàn)測試對象是否正確。在設(shè)計測試用例的時候,不僅要設(shè)計出合理的輸入條件,還要設(shè)計包含不合理、失效的輸入條件。測試的時候,人們經(jīng)常按照合理的、正常的情況進(jìn)行測試,而忽略了對于異常、不合理的情況進(jìn)行測試,對于這些測試對于系統(tǒng)的專業(yè)花也很有必要。在測試程序時,測試人員不僅要檢驗程序是否完成了設(shè)計的功能,還要檢驗程序是做了冗余的事情。多余的工作會影響程序的效率、產(chǎn)生不必要的錯誤,有時會帶來潛在的危害。嚴(yán)格按照測試計劃來進(jìn)行,避免測試的隨意性。測試計劃應(yīng)包括測試內(nèi)容、進(jìn)度安排、人員安排、測試環(huán)境、測試工具和測試資料等。嚴(yán)格的按照測試計劃可以;認(rèn)證進(jìn)度,使各方面都得以協(xié)調(diào)進(jìn)行。妥善保存測試計劃、測試用例,作為軟件文檔的組成部分,為維護(hù)提供方便。測試用例都是精心設(shè)計出來的,可以為重新測試或追加測試提供方便。測試是開發(fā)過程中一個獨(dú)立且非常重要的階段,測試過程基本上與開發(fā)過程平行。6.3測試用例 測試用例是為某個特殊目標(biāo)而編制的一組測試輸入、執(zhí)行條件以及預(yù)期結(jié)果,以便測試某個程序路徑或核實是否滿足某個特定需求。表5.1是個人財務(wù)管理系統(tǒng)的部分主要用例。。表5.1測試用例編號測試項步驟預(yù)期結(jié)果實際結(jié)果比較1登陸輸入正確的用戶名密碼,點(diǎn)擊登陸成功登陸進(jìn)入主界面成功登陸進(jìn)入主界面符合2登陸輸入錯誤的用戶名或密碼,點(diǎn)擊登陸給出合理提示給出用戶名或密碼錯誤的提示符合3注冊填入一個已存在的用戶名或兩次密碼輸入不一致給出合理提示給出合理提示符合4注冊填入之前不存在的用戶名,兩次密碼的輸入保持一致注冊用戶成功注冊用戶成功符合5密碼修改原密碼填寫錯誤或不填寫或新密碼與確認(rèn)密碼不一致給出合理提示給出合理提示符合6密碼修改輸入正確的原密碼,新密碼和確認(rèn)密碼一致密碼修改成功密碼修改成功符合7類型管理覆蓋各種類型的添加、刪除若已存在則給出提示,否則成功添加;能正常刪除若已存在則給出提示,否則成功添加能正常刪除符合8收支統(tǒng)計選擇年份,顯示統(tǒng)計柱形圖柱形圖數(shù)據(jù)正確柱形圖數(shù)據(jù)正確符合表5.1測試用例(續(xù)表)編號測試項步驟預(yù)期結(jié)果實際結(jié)果比較9賬戶管理覆蓋賬戶管理的刪除、修改、添加各項能完成,若操作失誤能給出提示各項能完成,若操作失誤能給出提示符合10聯(lián)系人管理覆蓋聯(lián)系人的添加,修改刪除各項能完成,若添加重名用戶則給出提示各項能完成,若添加重名用戶則給出提示符合11收入管理覆蓋收入的添加,搜索,刪除,清空等操作各項能完成,賬戶余額相應(yīng)增加;點(diǎn)擊刪除、清空時給出確認(rèn)提示各項能完成,賬戶余額相應(yīng)增加;點(diǎn)擊刪除、清空時給出確認(rèn)提示符合12支出管理覆蓋支出的添加,搜索,刪除,清空等操作各項能完成,賬戶余額相應(yīng)減少;點(diǎn)擊刪除、清空時給出確認(rèn)提示各項能完成,賬戶余額相應(yīng)減少;點(diǎn)擊刪除、清空時給出確認(rèn)提示符合13借入管理覆蓋借入條目的添加,搜索,刪除、還款等操作各項能完成,賬戶余額相應(yīng)增加;還款后相應(yīng)賬戶余額減少各項能完成,賬戶余額相應(yīng)增加;還款后相應(yīng)賬戶余額減少符合14借出管理覆蓋借出條目的添加,搜索,刪除、還款等操作各項能完成,賬戶余額相應(yīng)減少;還款后相應(yīng)余額增加各項能完成,賬戶余額相應(yīng)減少;還款后相應(yīng)余額增加符合15待購管理覆蓋條目的添加、購買、刪除操作功能實現(xiàn),購買后相應(yīng)賬戶余額減少,支出模塊多出相應(yīng)記錄功能實現(xiàn),購買后相應(yīng)賬戶余額減少,支出模塊多出相應(yīng)記錄符合16資金管理選擇其實賬戶跟目的賬戶,選擇轉(zhuǎn)賬若起始賬戶余額充足,成功轉(zhuǎn)賬,否則給出提示若起始賬戶余額充足,成功轉(zhuǎn)賬,否則給出提示符合
結(jié)論此軟件的目的是為了實現(xiàn)個人財務(wù)的基本管理,經(jīng)過對各個功能模塊功能的基本測試,預(yù)期的各個功能基本得到實現(xiàn)。能夠滿足一般用戶對于個人財務(wù)管理的需求,操作界面比較規(guī)整,一般用戶也能夠很輕松的完成各個功能的操作。本系統(tǒng)功能實現(xiàn)主要是完成對數(shù)據(jù)庫中數(shù)據(jù)的操作,并將其結(jié)果表現(xiàn)在界面上,系統(tǒng)比較容易開發(fā)與維護(hù)。但因為之前沒有接觸過ASP.NET,所以在界面的布局設(shè)計過程中多次返工重新設(shè)計,花費(fèi)了大量時間。盡管如此,在界面布局及美工方面還是有所不足。同時由于受我編碼能力、財務(wù)管理方面知識以及時間所限,未能實現(xiàn)個人財務(wù)的投資、網(wǎng)上銀行等功能。將來在有條件的情況下會對本系統(tǒng)進(jìn)行完善與改進(jìn)。在完成畢業(yè)設(shè)計的過程中,回顧了之前學(xué)過的知識,并且學(xué)到了一些新的內(nèi)容,與此同時加強(qiáng)了自己的實踐能力。另一方面,發(fā)現(xiàn)自己還有很多不足,還有很多東西需要學(xué)習(xí)。為了在IT行業(yè)走的更遠(yuǎn),必須學(xué)習(xí)新的內(nèi)容,掌握最新的技術(shù)。在今后的學(xué)習(xí)工作中,我將會更加努力的去學(xué)習(xí),不斷地充實自我。
參考文獻(xiàn)[1]KarliWatsonChristianNagel,等,C#入門經(jīng)典(第五版)[M].北京:清華大學(xué)出版社,2010.[2]楊學(xué)瑜,王志軍,劉同利.ASP.NET入門與提高[M].北京:清華大學(xué)出版社,2004.[3]張正禮王堅寧,ASP.NET4.0從入門到精通[M].北京:清華大學(xué)出版社,2010.[4]MIS2000Lab.周棟祥博士吳進(jìn)魯,等,ASP.NET案例精編[M].北京:清華大學(xué)出版,2009.[5]尹志宇郭晴,數(shù)據(jù)庫原理與應(yīng)用教程-SQLServer[M].北京:清華大學(xué)出版社,2010.[6]FernandezA,Abrah?oS,InsfranE.AWebUsabilityEvaluationProcessForModel-DrivenWebDevelopment[J]AdvancedInformationSystemsEngineering.SpringerBerlinHeidelberg,2011:108-122.[7]熊建芳,高繼,任賀宇,基于ASP.NET的ADO與ADO.NET分析與研究[J],計算機(jī)與現(xiàn)代化,2006(07),36-38[8]JoseA.Blakeley,DavidCampbell,S.Muralidhar,AnilNor,TheAentityframework:Makingtheconceptuallevelreal[J]SIGMODRecord,2006(35,No.4):552-565[9]陳偉.SQLServer2005數(shù)據(jù)庫應(yīng)用與開發(fā)教程.清華大學(xué)出版社,2007.[10]毛德祥,羅榮閣,基于ASP.NEt技術(shù)的web應(yīng)用程序三層設(shè)計模型[J]微型電腦應(yīng)用,2002(03),26-28[11]付軼詡,林開顏,基于ADO.NET的SQLSERVER數(shù)據(jù)庫和ORACLE數(shù)據(jù)庫之間的數(shù)據(jù)傳輸方法[J],微型電腦應(yīng)用,2009(10),61-64[12]張雪梅,.NET平臺下基于LINQ分層架構(gòu)的實現(xiàn)[J]電腦編程技巧與維護(hù)2011(12),76-106[13]諾薩普,維德姆斯,萊恩著,.NETFRAMEWORK2.0ApplicationDevelopmentFoundation[M].北京:世界出版社公司,2007.[14]維克,TheVisualBasic.NETProgrammingLanguage[M].北京:電子工業(yè)出版社,2002.[15]張海潘,軟件工程導(dǎo)論(第5版)[M].北京:清華大學(xué)出版社,2010.
致謝這次畢業(yè)設(shè)計能夠順利完成,感謝的人很多,首先感謝我的指導(dǎo)老師,在系統(tǒng)的設(shè)計、時間安排以及論文的審核上給予我很大幫助,不僅讓我能夠順利完成畢業(yè)設(shè)計,還讓我在畢業(yè)設(shè)計實踐的過程中學(xué)到了新的知識。在系統(tǒng)編碼過程中遇到很多問題。界面布局設(shè)計、一些算法等的疑惑,是身邊的同學(xué)們幫助了我,在這里對幫助我的同學(xué)們,僅以最真誠的感謝。
集成的會計系統(tǒng)財務(wù)四大基礎(chǔ)模塊ERP系統(tǒng)是分模塊的,在財務(wù)會計領(lǐng)域,一般總會有如下的4大模塊:總帳,應(yīng)收帳款,應(yīng)付帳款和固定資產(chǎn)。如圖1-1所示,這四個模塊本身是相互集成的(圖中以連接模塊的線條代表模塊間的集成),比如當(dāng)用戶對應(yīng)收,應(yīng)付和資產(chǎn)三個明細(xì)分類帳進(jìn)行操作時,系統(tǒng)會自動更新總分類帳中的數(shù)據(jù)。圖1-1財務(wù)四大基礎(chǔ)模塊這四大基礎(chǔ)模塊可以構(gòu)成一個獨(dú)立的會計軟件–它具有和其他會計軟件一樣的特征:帳務(wù)處理和業(yè)務(wù)處理是分開的。所謂業(yè)務(wù)處理是指企業(yè)日常運(yùn)作的具體業(yè)務(wù),比如根據(jù)銷售定單和定單履行情況開出銷售發(fā)票;根據(jù)采購定單和收貨情況校驗收到的發(fā)票;以及所有的庫存收發(fā)業(yè)務(wù)等等。而所謂帳務(wù)處理是指財務(wù)人員根據(jù)原始憑證(包括外部的,如發(fā)票,和內(nèi)部的,如入庫單)編制會計分錄,在系統(tǒng)中記錄下來。對于一般會計軟件而言帳務(wù)處理和業(yè)務(wù)處理是分開的,它們之間是通過單據(jù)在企業(yè)內(nèi)部其他部門和財務(wù)部門間的傳遞和核對完成的,同時財務(wù)人員需要利用專業(yè)知識分析業(yè)務(wù)和編制分錄。同時除了最基礎(chǔ)的借貸,科目和金額以外,財務(wù)人員可能還需要手工錄入一些附加信息,以利于日后做一些簡單的匯總分析,這些附加信息是以憑證輸入時的附加字段體現(xiàn)的。圖1-1右下角紅色的粗箭頭代表了這種分開處理的過程。雖然大方向上是一致的,但是不同的軟件之間在功能上還是會有很大的差別的,圖1-1中列舉了一些這四大基礎(chǔ)模塊的功能。模塊外部的紅色箭頭是需要手工輸入的功能,模塊內(nèi)部的則是系統(tǒng)可以自動完成的功能。事實上有些功能已經(jīng)體現(xiàn)了ERP業(yè)務(wù)處理和帳務(wù)處理統(tǒng)一的特征,比如圖1-1中的紅圈所示的自動付款功能。集成下的財務(wù)會計如果ERP的財務(wù)會計模塊僅僅是一般會計軟件的功能延伸和加強(qiáng),那它不會在最近的10年間對全球企業(yè)的財務(wù)實踐帶來如此巨大的變革。而ERP本身的集成性,決定了它的財務(wù)會計模塊完全融入到了企業(yè)整體的流程中,圖1-2描述了在集成環(huán)境下的財務(wù)會計模塊。圖1-2財務(wù)會計和物流的集成在物流領(lǐng)域有四個基本的模塊:銷售,生產(chǎn),采購和庫存管理,企業(yè)物流管理的流程和功能不是本書所要討論的內(nèi)容,圖1-2中我們大致例舉了一些物流模塊的基本功能(在圖中各模塊內(nèi)部)。在下面我們要著重介紹的是物流模塊和財務(wù)會計的集成關(guān)系,本章主要介紹以下7個集成點(diǎn):銷售開票,銷售發(fā)貨,采購收貨,發(fā)票校驗,其他收發(fā)貨,盤點(diǎn)和估價。銷售開票銷售開票的過程其實是在ERP系統(tǒng)中生成一帳開票憑證(BillingDocuments)。發(fā)票,形式發(fā)票,紅字發(fā)票和貸項憑證都是不同類型的開票憑證。我們通常提到的發(fā)票(如增值稅專用發(fā)票或普通發(fā)票)是根據(jù)系統(tǒng)中的開票憑證在金稅系統(tǒng)中套打出來(或直接套打出來)的實物憑證。在下文中如果不特別指明實物發(fā)票,那“發(fā)票”都是指系統(tǒng)中保存的開票憑證。ERP系統(tǒng)是集成的,而銷售開票又是銷售流程的最后一個環(huán)節(jié)。因此發(fā)票在系統(tǒng)中不是孤立的,它一般是參照先行的其他憑證(如銷售定單或發(fā)貨單)建立的,系統(tǒng)會根據(jù)一定的規(guī)則自動的復(fù)制這些先行憑證的信息,從而使得開票的過程盡可能的簡單,也防止了錯誤的產(chǎn)生。發(fā)票的結(jié)構(gòu)發(fā)票由一個發(fā)票抬頭和多條行項目構(gòu)成。在發(fā)票抬頭系統(tǒng)保存了關(guān)于整張發(fā)票的信息,比如付款方(客戶),開票日期,整張發(fā)票的凈金額,幣種,付款條款,國際貿(mào)易條件,售達(dá)方(有時候付款方和售達(dá)方是不同的),價格條款(比如針對整張發(fā)票的折扣)。行項目中保存了僅對該行有用的信息,比如商品,數(shù)量,該行凈金額,重量和體積,參照憑證的編號(比如,該發(fā)票針對的發(fā)貨單號),價格條款(比如貨款,運(yùn)費(fèi),折扣,增值稅等等)。可以發(fā)現(xiàn)系統(tǒng)中的發(fā)票所保存的信息大大超過了實物發(fā)票所需要的,在套打?qū)嵨锇l(fā)票時,系統(tǒng)會根據(jù)各國家和企業(yè)的規(guī)定選取相關(guān)的信息,按規(guī)定的格式打印出來。開票方式從參照憑證(定單或發(fā)貨單)生成發(fā)票,系統(tǒng)提供了如下一些可能的方法:只要某些數(shù)據(jù)吻合,你可以合并多張不同的憑證(銷售定單和/或發(fā)貨單)的全部或一部分,開出一張發(fā)票。前提條件是:首先,需要從這些參考憑證中復(fù)制的發(fā)票抬頭數(shù)據(jù)在這些憑證中都是一致的。其次,拆分開票的條件不成立。比如在處理到期的開票清單時,系統(tǒng)會合并那些具有相同的客戶編號,銷售組織和開票類型的參照憑證,如果上述的前提條件都滿足,系統(tǒng)將開出一張發(fā)票。如果你希望在某些情況下發(fā)票是分開的,比如希望同一張交貨單上的很多商品按不同的商品組分開開票,那么可以通過定義拆分開票規(guī)則來實現(xiàn)。當(dāng)然你也可以針對每張銷售憑證開一張發(fā)票,比如每張發(fā)貨單一張發(fā)票。在具體執(zhí)行開票時,系統(tǒng)提供了如下方法:定單或發(fā)貨單個別開票。我們可以針對整張定單,個別行項目或行項目的部分?jǐn)?shù)量進(jìn)行個別開票。手工處理到期開票清單。我們可以使用到期開票清單來處理開票,在這種情況下財務(wù)人員不需要針對某張銷售定單或發(fā)貨單單獨(dú)開票。我們只需要輸入選擇條件,系統(tǒng)會自動挑選那些符合條件的定單或發(fā)貨單,生成到期開票清單。經(jīng)過手工編輯和模擬后就可以實際開票了。后臺自動處理到期開票清單。為了減少處理時間和人力,可
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版學(xué)校食堂肉類食材采購及食品安全風(fēng)險評估與培訓(xùn)服務(wù)合同3篇
- 二零二五年度高端定制家具采購合同范本9篇
- 2025版小區(qū)停車場租賃合同附停車場升級改造及智慧化服務(wù)協(xié)議3篇
- 二零二五版鍋爐采購、安裝及智能化節(jié)能系統(tǒng)合同3篇
- 2025年度美容行業(yè)美容院美容產(chǎn)品品牌推廣合同范本4篇
- 全新2025年度技術(shù)咨詢合同3篇
- 2025版團(tuán)購業(yè)務(wù)金融風(fēng)險管理合同3篇
- 公共基礎(chǔ)-2021年試驗檢測師《公共基礎(chǔ)》真題
- 土壤生物技術(shù)改良策略考核試卷
- 居民健康自我管理培訓(xùn)考核試卷
- 2024版塑料購銷合同范本買賣
- JJF 2184-2025電子計價秤型式評價大綱(試行)
- GB/T 44890-2024行政許可工作規(guī)范
- 2024年安徽省中考數(shù)學(xué)試卷含答案
- 2025屆山東省德州市物理高三第一學(xué)期期末調(diào)研模擬試題含解析
- 2024年滬教版一年級上學(xué)期語文期末復(fù)習(xí)習(xí)題
- 兩人退股協(xié)議書范文合伙人簽字
- 2024版【人教精通版】小學(xué)英語六年級下冊全冊教案
- 汽車噴漆勞務(wù)外包合同范本
- 2024年重慶南開(融僑)中學(xué)中考三模英語試題含答案
- 2023年最新的校長給教師春節(jié)祝福語
評論
0/150
提交評論