家庭财务管理系统

上传人:沈*** 文档编号:90292856 上传时间:2022-05-14 格式:DOC 页数:37 大小:1.60MB
收藏 版权申诉 举报 下载
家庭财务管理系统_第1页
第1页 / 共37页
家庭财务管理系统_第2页
第2页 / 共37页
家庭财务管理系统_第3页
第3页 / 共37页
资源描述:

《家庭财务管理系统》由会员分享,可在线阅读,更多相关《家庭财务管理系统(37页珍藏版)》请在装配图网上搜索。

1、 某信息职业技术学院毕业设计论文作者学号系部专业题目家庭财务管理系统实现指导教师 评阅教师 完成时间: 2010 年 月日毕业设计(论文)中文摘要(题目):家庭财务管理系统实现摘要 :为了适应全球经济的蓬勃发展所带来的金融理财领域的巨大变革和创新,尤其是对现代家庭与个人传统的理财观念有着较大的革新。因此,提出了给人们提供一种能充分利用计算机优势,快捷、方便、高效、易操作的管理系统来管理家庭财务的收支。然后按照家庭成员对自身财产的管理要求,根据相关的管理经验,以记录信息、提示信息,提供良好的操作平台为根本目的,并将收入管理、支出管理、借贷管理、银行账户管理等方面有机的组成一个整体。本论文主要介绍

2、了家庭财务管理系统的开发过程和所涉及到的问题及解决方法。利用C#语言在Microsoft Visual Studio 2005平台下开发而成,整个系统是一个单机的系统,操作员可以记录家庭收入,支出等,通过各种方式可以查询。最后经过测试,系统能正常运行,功能完善,性能较高。总得来说这个系统的开发是比较成功的。关键词:家庭财务管理系统;C#;Microsoft Visual Studio 2005毕业设计(论文)外文摘要Title :Family Financial Management System ImplementationAbstract:In order to adapt to glob

3、al economic boom brings the huge financial field, especially the reform and innovation of modern families and individuals traditional financial management concept has great innovations. Therefore, puts forward provide people with a can make full use of puter advantage, quick, convenient, efficient a

4、nd easy operation management system to manage family financial receipts and expenditures. Then according to the family members of their own property management requirements, according to relevant management experience to record information, tip information, provide good operation platform for fundam

5、ental purpose, and will ine management, expenditure management, debt management, bank account management etc organic an integral unit. This paper mainly introduced family financial management system development process and involved problems and solutions. Using c # language in Microsoft Visual Studi

6、o lans into 2005, the whole system development is a single system, the operator can record family ine, spending, through various ways can query. Finally after testing, the system can run normally, perfect function, performance is higher. Overall this system development is relatively successful.keywo

7、rds:Family Financial Management System;C #;Microsoft Visual Studio 200533 / 37目 录1 绪论11.1课题背景及选题意义11.2课题简介11.3本课题要达到的设计目标11.4本论文任务概述21.5本论文章节安排22 系统需求分析32.1系统功能模块设计32.2建立E-R图42.3数据流图72.4系统业务流程图93 系统设计与实现103.1开发环境103.2数据库设计103.3系统结构设计133.4系统实现134 功能测试304.1调试分析304.2实例测试314.3用户手则31结论33致谢33参考文献341 绪论1.1

8、课题背景及选题意义近几年来,随着我国城乡居民收入的增加和生活水平的提高,家庭理财已成为人们居家过日子的重要内容。社会学家细心的观察到,时下家庭的财务管理比之计划经济年代,开始发生微妙的变化。现在的城乡家庭生活发生了明显的变化,人们的收入逐渐拉开档次,消费水平也高了。大多数家庭关注的是提高生活质量,一方面精打细算,量入为出,把钱用在刀刃上;另一方面保证适当的娱乐活动、社会交际、智力开发等方面的开支。为此,不少家庭就有中长期财务预算,有基本建设规划。总的说来,家庭财务必须以量入为出为原则,以财产保值增值为目标,处理好积累和消费的关系。因此,开发一个家庭财务管理系统具有很强的实用性,能够达到对家庭财

9、务合理有效的管理。1.2课题简介家庭财务管理系统是每一个家庭管理家庭财务收入和支出的不可缺少的一个管理信息系统,它的内容对于家庭的管理者来说是至关重要的,所以家庭财务管理系统应该能够为每一个家庭的管理者提供充足的信息和快捷的查询手段,大大的方便家庭的管理者的合理理财。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已被人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对家庭财务进行管理,具有手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、某性好、寿命长、成本低等。这些优点能够极大地提高家庭财务管理的效率,也是家庭理

10、财的科学化、正规化管理,与先进科学技术接轨的重要条件。1.3 本课题要达到的设计目标家庭财务管理系统的用户使用本系统进行管理,能够感到方便,系统操作简单,功能基本符合其管理要求,方便的对日常收入、日常支出、现金的借入及借出进行管理,了解家庭当下的财力状况等。同时本系统还要求查找方便、可靠性高、存储量大、某性好、寿命长、成本低等。这些优点能够极大的提高管理操作的效率,节省了很大一部分时间,可以让用户做更多别的有意义的事情。1.4 本论文任务概述这个毕业设计的最终目标是设计、实现一个功能完善的家庭财务管理系统。这个系统是用C#语言开发。我负责整个系统的架构设计、编码、测试等。这篇论文我主要先对课题

11、做简要的介绍,然后介绍了开发本系统所用到的新技术,接着对整个系统进行系统需求分析设计、系统设计与实现、功能测试。1.5 本论文章节安排第一章:绪论,第二章:系统需求分析,第三章:系统设计与实现,第四章:功能测试。最后对本论文进行小结,主要描述了在做本系统的过程中遇到的问题及解决方法以及在本系统中我学到了一些知识,以及对给与我帮助的人表示致谢。2 系统需求分析2.1系统功能模块设计家庭财务管理系统由登录管理、基本数据管理、出入账管理、理财管理、借贷管理和财务详情等模块组成。具体如下:1登录管理模块设计(1)验证用户登陆:验证即将登陆系统用户的用户名和密码正确性。(2)密码修改:实现用户密码的修改

12、。(3)重新登录:更换用户重新登录。(4)退出:注销退出当前用户登录。2基本数据管理模块设计(1)家庭成员管理:实现家庭成员的添加、删除、修改。(2)收支项目管理:实现收支项目的添加、删除、修改。3出入账管理设计(1)入账:实现日常收入的添加、删除、修改。(2)开销:实现日常支出的添加、删除、修改。4理财管理模块设计(1)活期账户:对银行活期账户进行管理,实现添加、删除、修改的功能。(2)定期账户:对银行定期账户进行管理,实现添加、删除、修改的功能。5借贷管理模块设计(1)借出款:记录家庭成员各项借出款情况。(2)借入款:记录家庭成员各项借入款情况。6财务详情模块设计(1)明细查询:按类别查询

13、收支明细。(2)财务报告:生成财务分析报告。家庭财务管理系统的系统功能结构图如图2- 1所示:图2- 1系统功能结构图2.2建立E-R图以下是各个实体的E-R图家庭成员信息实体称呼某用户名密码生日图2- 2家庭成员信息实体E-R图项目编号收入项目收入项目信息实体图2- 3收入项目信息实体E-R图项目编号支出项目支出项目信息实体图2- 4支出项目信息实体E-R图图2- 5收入信息实体E-R图图2- 6支出信息实体E-R图图2- 7借入款信息实体E-R图图2- 8借出款信息实体E-R图图2- 9活期账户信息实体E-R图图2- 10活期存取信息实体E-R图图2- 11定期账户信息实体E-R图综合以上

14、E-R图模型,得出如图2-12所示的整个系统E-R关系图:收入项目信息实体支出项目信息实体收入信息实体支出信息实体用户信息实体借入款信息实体借出款信息实体查询查询管理管理管理管理管理管理活期账户信息实体管理活期存取款信息实体定期账户信息实体图2- 12整个系统E-R关系图2.3数据流图1数据流第一层图用户添加收入信息添加支出信息删除信息查询信息收支信息数据库图2- 13收支管理模块 本流程图解释了用户对收支信息数据库的操作过程,包括用户添加收支信息到数据库;从收支信息数据库中调出收支资料进行修改或删除;对收支信息数据进行查询操作。用户收入信息支出信息收入表支出表图2- 14日常操作 此流程图解

15、释了用户的日常操作过程,包括支出信息和收入信息的过程,在此过程中都要对财务信息数据库进行操作,并要求系统对此信息做好记录。2 数据流第二层图继续细化,得到各个模块的数据流第二层图。下图表示的是收支管理模块的几个子模块的数据流第二层图。只是数据流的组成有所差异(名字、项目、数值),在此不再赘述。所有模块的数据流第二层图中包括了详细的数据流组成要素以及具体流向等,具有很好的自明性,在此不再进行解释和说明。收入信息表添加收入信息修改收入信息家庭成员信息表添加成员信息修改成员信息对收入信息表进行操作 第二层图对成员信息表进行操作 第二层图图2- 15第二次数据流图3系统总数据流图本系统数据流图概括如下

16、,整个系统包括了登陆管理、基本数据管理、出入账管理、理财管理、借贷管理和财务详情共六个加工部分,每个部分包含了各个业务部门以及与之相关的外部项、数据库之间的业务数据来源和去处。用户输入密码密码验证FY1.登录管理模块 5.借贷管理模块2基本数据管理模块 6.财务分析模块3.出入账管理模块4.理财管理模块选择相应得功能完成操作退出系统图2- 16 系统总数据流图2.4系统业务流程图在大多数家庭里,收入和支出的流程大体是这样的,具体收入到支出,收入又去银行储蓄,银行储蓄又分为定期储蓄和活期储蓄,收入还可以再借出,但是相对于借款一般就不会进行储蓄和外借了。所以,流程图可以为:图2- 17系统业务流程

17、图3系统设计与实现3.1开发环境硬件配置:机器:戴尔CPU: Core 2 T5550 1.8GHz内存:DDR2 2G硬盘:160G操作系统:Microsoft Windows XP 开发工具:Microsoft Visual Studio 2005 数据库:Access 2003开发语言:C#3.2数据库设计本系统采用Access数据库。针对家庭用户,管理日常收支Access数据库完全可以满足其需求,使得家庭成员操作更加便捷。表3- 1 家庭成员信息表(family)的数据结构表3- 2 收入项目信息表(inItem)的数据结构表3- 3 支出项目信息表(OutItem)的数据结构表3-

18、4收入信息表(inInfo)的数据结构表3- 5 支出信息表(outInfo)的数据结构表3- 6 活期账户信息表(liveAccount)的数据结构表3- 7 活期存取信息表(liveInfo)的数据结构表3- 8 定期账户信息表(fixAccount)的数据结构表3- 9 借出信息表(lend)的数据结构表3- 10 借入信息表(borrow)的数据结构3.3系统结构设计1将全局E-R转换成逻辑结构家庭成员表(role(主键),Name,uName,PWD,birthday)收入项目表(inItem(主键),inID)支出项目表(outItem(主键),outID)收入信息表(inInfo

19、ID(主键),inDate,inType,inMoney,inItem,infrom,role,inRemark)支出信息表(outInfoID(主键),outdate,outType,outMoney,outItem,outTo,role,outRemark)活期账户表(liveID(主键),liveName,liveAddress,liveDate,liveMoney,role)活期存款表(infoID(主键),liveID,info,infoMoney,infoDate,leave,role)定期账户表(fixID(主键),fixName,fixAddress,fixDate,fixMo

20、ney,role,limit,take)借出款信息表(lendID(主键),toName,role,lendDate,lendMoney,lendReason,lend)借入款信息表(borrowID(),fromName,role,borrowDate,borrowMoney,borrowReason,borrow)2使用C/S模式 C/S 模式的优点 1.由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度快。 2.操作界面漂亮、形式多样,可以充分满足客户自身的个性化要求。 3.C/S结构的管理信息系统具有较强的事务处理能力,能实现复杂的业务流程。采用C/S结构时,客户端和服务器端

21、都能够处理任务,这虽然对客户机的要求较高,但因此可以减轻服务器的压力。本系统的使用方向是面向家庭,直接是客户端操作,因此使用C/S模式更加便捷,也减少了系统的冗余。3.4系统实现1数据库连接数据库文件放置的目录是d:我的文档桌面家财务管理系统FamilyWealthMSFamilyWealthMSdatabase FamilyWealthMS.mdb。在程序中专门设计了连接字符串模块databasedbConnection.cs。代码如下所示。public static string connection get return Data Source=d:我的文档桌面家庭财务管理系统Famil

22、yWealthMSFamilyWealthMSdatabaseFamilyWealthMS.mdb;Jet OLEDB:Engine Type=5;Provider=Microsoft.Jet.OLEDB.4.0; 2登录界面运行程序,出现登录界面,如图3-1所示,选择用户名,输入正确用户密码,即可登录到系统主界面。图3- 1登录界面确定功能:其算法如下:1.键盘输入用户名和密码,点击“确定”;2.连接数据库,创建cmd命令,执行sql语句,搜索该用户;3.读取数据库family表中的记录,若无此用户则显示“无此用户,请重试”,并关闭数据源,返回初始状态;4.若密码输入错误,则显示“密码错误,

23、请重试” 并关闭数据源,返回初始状态;5.若用户名和密码输入正确,窗体系统菜单将通过for循环显示主菜单中的6个管理模式,关闭数据源,登录界面关闭,显示为主菜单。关键代码如下:try string sql = select uName,PWD from family where uName= + this.boName.Text + ; if (oleConnection1 = null) oleConnection1 = MainForm.getConnection(); OleDbmand cmd = oleConnection1.Createmand(); cmd.mandText =

24、sql; OleDbDataReader dr = cmd.ExecuteReader(); if (!dr.Read() MessageBox.Show(无此用户,请重试!, 提示); dr.Close(); cmd.Dispose(); return; else if (!dr.GetString(1).Equals(this.password.Text.ToString() MessageBox.Show(n密码错误,请重试!, 提示); dr.Close(); cmd.Dispose(); return; MenuStrip mainmenu = (MainForm)(this.Mdi

25、Parent).getMainMenu(); for (int i = 0; i 6; i+) mainmenu.Itemsi.Visible = true; StatusStrip statusBar = (MainForm)(this.MdiParent).getStatusBar(); statusBar.Items0.Text = 当前登录用户; statusBar.Items1.Text= this.boName.Text.Trim(); statusBar.Items2.Text = DateTime.Now.ToString(); statusBar.Items3.Text =

26、欢迎使用家庭财务管理系统; dr.Close(); cmd.Dispose(); this.Close(); 3系统主界面用户登录成功后所显示界面,分为以下六种功能:【登录管理】、【基本数据管理】、【出入账管理】、【理财管理】、【借贷管理】以及【财务详情】,如图3- 2所示。图3- 2系统主界面系统管理功能:在系统主界面中添加mainMenu1控件,在其属性Items项中添如6个menuItem,将menuItem1设为系统管理。具体属性如图3- 3所示。图3- 3系统管理属性4登录管理模块在主界面中选择【登录管理】|【修改密码】命令菜单,即可进入修改密码界面,如图3- 4所示。图3- 4修改

27、密码确定功能:单击【确定】按钮,如果密码正确并且新密码与确认密码相同,则修改成功,否则修改失败。其算法如下:1.键盘输入密码,新密码以及确认密码,点击“确定”;2.如有未填写的,则提示“请输入完整信息”;3.连接数据库,创建cmd命令,执行sql语句,搜索该用户所有信息;4.若两次密码不相同,则警告“两次密码输入不一致!” 并释放所占资源;5.若用户名和两次密码输入正确,执行sql更新语句更新family表中的密码,返回所受影响的行数,提示“密码锁修改成功”,并关闭当前窗体。6.若原密码输入错误,则提示“原密码错误”,并释放资源对象cmd。关键代码如下:if (textName.Text.Tr

28、im() = | textPWD.Text.Trim() = | textPWDNew.Text.Trim() = | textPWDNew2.Text.Trim() = ) MessageBox.Show(请填写完整信息!, 提示); else if (oleConnection1 = null) oleConnection1 = MainForm.getConnection(); OleDbmand cmd = oleConnection1.Createmand(); string sql = select * from family where uName= + textName.Tex

29、t.Trim() + and PWD= + textPWD.Text.Trim() + ; cmd.mandText = sql; if (null != cmd.ExecuteScalar() if (textPWDNew.Text.Trim() != textPWDNew2.Text.Trim() MessageBox.Show(两次密码输入不一致!, 警告); else sql = update family set PWD= + textPWDNew.Text.Trim() + where uName= + textName.Text.Trim() + ; cmd.mandText =

30、 sql; cmd.ExecuteNonQuery(); MessageBox.Show(密码修改成功!, 提示); this.Close(); else MessageBox.Show(原密码错误!, 提示); cmd.Dispose(); 5基本数据管理模块在主界面中选择【基本数据管理】|【家庭成员管理】命令菜单,即可进入家庭成员管理界面,如图3- 5所示。用户可以在这里添加、修改和删除家庭成员。输入需要添加的内容,其中带*号的内容为必填项,单击【确定】按钮则添加成功;选择一条数据信息后,单击【修改】按钮,同时【添加】、【删除】和【退出】3个按钮变为不可见状态,然后输入要修改的内容,再单击

31、【修改】按钮,就修改成功。图3- 5家庭成员管理界面记录显示功能:string strSql; DataSet ds; string dataName = dataName; private void Family_Load(object sender, EventArgs e) strSql = select Name as 某,role as 称呼,birthday as 生日,uName as 用户名,PWD as 密码 from family; ds = MainForm.FillDataGrid(strSql, dataName, dataGrid1); dataGrid1.Capt

32、ionText = 共有 + ds.TablesdataName.Rows.Count + 条记录; this.btModify2.Visible = false; this.btCancel.Visible = false; 添加功能:其算法如下:1.键盘输入某,称呼,用户名,密码以及生日,点击“添加”;2.如必填的有未填写的,使用if语句进行判断,则提示“请输入完整信息”;3.通过主界面getConnection()函数连接数据库,创建cmd命令,执行sql语句,将所添加信息插入family表中;4.返回表中所受影响的行数,提示“添加成功”并将所添加内容填充到主界面的DataGrid控件中

33、;5.当程序执行期间发生错误,显示该错误,最后释放资源对象cmd。关键代码如下:if (textName.Text.Trim() = | textUser.Text.Trim() = | textPWD.Text.Trim() = | textRole.Text.Trim() = ) MessageBox.Show(请填写完整信息, 提示); else if (oleConnection1 = null) oleConnection1 = MainForm.getConnection(); string sql = insert into family values ( + textName.

34、Text.Trim() + , + textUser.Text.Trim() + , + textPWD.Text.Trim() + , + + textRole.Text.Trim() + , + dateTimePicker1.Text.Trim() + ); OleDbmand cmd = new OleDbmand(, oleConnection1); cmd.mandText = sql; try cmd.ExecuteNonQuery(); MessageBox.Show(添加成功, 提示); MainForm.FillDataGrid(strSql, dataName, data

35、Grid1); catch (System.Exception E) Console.WriteLine(E.ToString(); finally cmd.Dispose(); 选择【成员及收支管理】|【收支项目管理】命令菜单,即可进入收支项目管理界面,此界面分为两个部分:收入项目管理和支出项目管理,分别如图3- 6所示和图3- 7所示。用户可以在这里添加、修改和删除收支项目。输入需要添加的内容,单击【确定】按钮则添加成功;选择一条数据信息后,单击【修改】按钮,同时【添加】、【删除】和【退出】3个按钮变为不可见状态,然后输入要修改的内容,单击【修改】按钮,就修改成功。图3- 6收入项目界面修

36、改功能:其算法如下:1.键盘输入所需修改的想,点击“修改”;2.如必填的有未填写的,使用if语句进行判断,则提示“请输入完整信息”;3.通过主界面getConnection()函数连接数据库,创建cmd命令,执行sql语句,将所更新信息更新至inInfo表中;4.返回表中所受影响的行数,提示“添加成功”并将所添加内容填充到主界面的DataGrid控件中;5.当程序执行期间发生错误,显示该错误,最后释放资源对象cmd。图3- 7支出项目界面删除功能:其算法如下:1选定所需删除的记录,点击“删除”;2.使用if语句进行判断是否已经选定;3.通过主界面getConnection()函数连接数据库,创

37、建cmd命令,执行sql语句,删除outInfo表中记录;4.返回表中所受影响的行数,提示“删除成功”并将所删除以后内容填充到主界面的DataGrid控件中;5.当程序执行期间发生错误,显示该错误,最后释放资源对象cmd。6出入账管理模块在主界面中选择【出入账管理】|【入账】命令菜单,即可进入日常收入管理界面,如图3- 8所示。用户可以在这里添加、修改和删除日常收入。输入需要添加的内容,其中带*号的内容为必填项,单击【确定】按钮则添加成功;选择一条数据信息后,单击【修改】按钮,同时【添加】、【删除】和【退出】3个按钮变为不可见状态,然后输入要修改的内容,再单击【修改】按钮,就修改成功。图3-

38、8入账界面添加dateTimePicker控件,用于选择日期。添加3个boBox控件,用于选择方式、项目和人员三项内容。添加,删除,修改功能参照【基本数据管理模块】中的实现方式。7理财管理模块在主界面中选择【理财管理】|【活期账户】命令菜单,即可进入活期账户管理界面,此界面分为两个部分:活期账户和存取款记录,分别如图3- 9和图3- 10所示。在活期账户界面中,用户可以添加、修改和删除账户信息。输入需要添加的内容,其中带*号的内容为必填项,单击【确定】按钮则添加成功;选择一条数据信息后,单击【修改】按钮,同时【添加】、【删除】和【退出】3个按钮变为不可见状态,然后输入要修改的内容,再单击【修改

39、】按钮,就修改成功。在存取款记录界面中,用户可以添加、修改和删除存取款记录。用户选择一个银行账户后,与该账户相关的存取款记录都会显示在此界面上。单击【存款】或【取款】按钮后,旁边的GroupBok控件变为可见状态。输入需要添加的内容,其中带*号的内容为必填项,单击【存款】按钮则存款成功,选择一条数据后,单击【修改】按钮,旁边的GroupBok控件变为可见状态,同时【存款】、【取款】、【删除】和【退出】4个按钮变为不可见状态,然后输入要修改的内容,再单击【修改】按钮,就修改成功,在这里只能修改最后一条存款记录。图3- 9活期账户界面图3- 10存款记录界面存款功能:输入需要添加的内容,其中带*号

40、的内容为必填项,单击【存款】按钮则存款成功。其算法如下:1点击“存款”则界面中显示存款的界面groupBox1出现,将其visible属性设为true;2.使用if语句进行判断存款的日期,金额,经手人是否已经填写,如有未填写的,则提示“请填写完整信息”;3.通过主界面getConnection()函数连接数据库,创建cmd命令,执行sql语句,将存款记录插入到表liveInfo中;4.返回表中所受影响的行数,提示“添加成功”并将所添加以后内容填充到主界面的DataGrid控件中;5.当程序执行期间发生错误,显示该错误,最后释放资源对象cmd。在主界面中选择【理财管理】|【定期储蓄】命令菜单,即

41、可进入定期储蓄界面,如图3- 11所示。用户可以在这里添加、修改和删除定期账户。输入需要添加的内容,其中带*号的内容为必填项,单击【确定】按钮则添加成功;选择一条数据信息后,单击【修改】按钮,同时【添加】、【删除】和【退出】3个按钮变为不可见状态,然后输入要修改的内容,再单击【修改】按钮,就修改成功。图3- 11定期储蓄界面8借贷管理模块在主界面中选择【借贷管理】|【借入款】命令菜单,即可进入借入款管理界面,如图3- 12所示。用户可以在这里添加、修改和删除借入款信息。输入需要添加的内容,其中带*号的内容为必填项,单击【确定】按钮则添加成功;选择一条数据信息后,单击【修改】按钮,同时【添加】、

42、【删除】和【退出】3个按钮变为不可见状态,然后输入要修改的内容,再单击【修改】按钮,就修改成功。图3- 12借入款界面选择【借贷管理】|【借出款】命令菜单,即可进入借出款管理界面,如图3- 13所示。用户可以在这里添加、修改和删除借出款信息。输入需要添加的内容,其中带*号的内容为必填项,单击【确定】按钮则添加成功;选择一条数据信息后,单击【修改】按钮,同时【添加】、【删除】和【退出】3个按钮变为不可见状态,然后输入要修改的内容,再单击【修改】按钮,就修改成功。图3- 13借出款界面9财务详情模块在主界面中选择【财务详情】|【查询明细】命令菜单,即可进入查询明细界面,此界面包括两个选项卡:【日常

43、收入】和【日常支出】,两个选项卡界面分别如图3- 14和图3- 15所示。图3- 14明细查询【日常收入】界面图3- 15明细查询【日常支出界面】查询功能:其算法如下:1.选择是按日期,人员或者项目进行查询;2.通过主界面getConnection()函数连接数据库,创建cmd命令,执行sql语句,将查询表Outdate中记录;3.若三个选择项都为选择,直接执行sql语句,按照默认的日期在Datagrid显示所查询的结果;4.若选择项为按日期,则在sql语句后添加所选定的日期进行查询,使用between语句;5.若选择项为按人员,则在sql语句后添加所选定的人员进行查询,使用where语句,如

44、选择为按项目,也如此查询;6.执行sql语句,返回表中所受影响的行数,将所查询的内容填充到主界面的DataGrid控件中;选择【财务详情】|【理财报告】命令菜单,即可进入理财报告界面,此界面包括两个选项卡【本月收入情况】和【本月支出情况】,两个选项卡界面分别如图3- 16和图3- 17所示。在这里可以按照月份查看本月的理财报告,从而详细的了解本月的财务状况。图3- 16理财报告【本月收入情况】界面图3- 17理财报告【本月支出情况】支出记录显示功能:其算法如下:1.通过主界面getConnection()函数连接数据库,创建cmd命令,执行sql语句,将查询表OutInfo中记录;2.将所查询

45、的数据生成一个Dataset对象填充到主菜单的DataGrid中,使用FillDataGrid函数;3.创建另外一个cmd命令,使用sql语句查询所显示的记录条数,将所查询的条数显示在label3中;4.利用OleDbmand类创建两个cmd命令,对access数据源执行sql语句;5.若返回结果集为空,显示“本月没有支出”反之则将结果集转换成整型,显示支出数目,直接在label中显示;4 功能测试4.1 调试分析系统调试是一个复杂的过程,要对数据库、窗体布局、代码等进行完善,在系统调试的过程中遇到了以下几个问题:(1)在运行程序时,加载主窗体时调用登录界面,要将主窗体Form的IsMdiCo

46、ntainer的属性改为True。(2)运行时,打开日常收入、日常支出界面,系统出现调用窗体错误,显示“至少有一个参数没有被指定值”,对应代码行为adapter.Fill(ds, dname);调试修改,代码正确,原因是数据库连接错误,将Data Source=FamilyWealthMS.mdb;改为Data Source=d:我的文档桌面家庭财务管理系统FamilyWealthMSFamilyWealthMSdatabaseFamilyWealthMS.mdb;(3)运行时,打开日常收入、日常支出、理财报告、查询明细界面,系统出现调用窗体错误,显示“至少有一个参数没有被指定值”,对应代码行

47、为adapter.Fill(ds, dname);调试修改,代码正确,原因是数据库中收入信息表中inDate字段写成了inData,导致在查询数据库信息时查询语句中的字段值与数据表中字段值不匹配。4.2实例测试1登录管理测试(1)首先用设定密码登陆,查看是否可以进入该系统。(2)随意输入一些用户名和密码,查看是否可以给予提示并拒绝该用户登陆(3)输入一些与本系统有密切相关的数据,测试是否存在登陆漏洞2添加家庭成员记录测试(1)按照系统要求添加一条记录,查看是否添加成功,并运行查看效果(2)随意添加记录,查看系统是否给予提示并拒绝添加3基本数据管理测试(1)添加或删除一条用户记录,查看数据库是否

48、及时更新(2)修改客户密码后,测试是否可以用新密码登陆4出入账管理测试(1)按照系统要求添加或删除一条记录,查看是否成功,并运行查看结果(2)随意添加记录,查看系统是否给予提示并拒绝添加5理财管理测试(1)按照系统要求添加或删除一条记录,查看是否成功,并运行查看结果(2)随意添加记录,查看系统是否给予提示并拒绝添加6借贷管理测试(1)按照系统要求添加或删除一条记录,查看是否成功,并运行查看结果(2)随意添加记录,查看系统是否给予提示并拒绝添加7财务详情测试(1)按照系统要求添加或删除一条记录,查看是否成功,并运行查看结果(2)随意添加记录,查看系统是否给予提示并拒绝添加4.3用户手则(1)本程

49、序的运行环境为Windows 2000/NT/XP 操作系统,执行文件为FamilyWealthMS.exe。(2)本程序的编译环境为Microsoft Visual Studio 2005。在Windows xp 下编译通过。(3)进入演示程序后即显示窗口方式的用户界面。(4)接受命令后既执行相应运算和显示相应结果。结论本毕业设计是一个利用C#语言开发的。这个系统已经全部完成。但同时也存在一些不足的地方,比如整个系统是否可以添加更多功能,外观上是否可以再修饰修饰,以及用户资料的某性和安全性还没有考虑和研究。此次毕业设计,由于本人在知识、经验方面都存在着不足。另外,在整个设计的过程中,忙于工作

50、,没有充足的时间来和指导老师交流沟通。因此,该系统必然会存在一些缺陷和不足。因为对家庭财务管理的整个流程不够熟悉,在需求分析时未能做到完全满足用户的需求。经过近一个多月的设计,我深刻体会到要做好一个完整的事情,需要有系统的思维方式和方法,对待一个新的问题,要耐心、要善于运用已有的资源来充实自己。同时我也深刻的认识到,在对待一个新事物时,一定要从整体考虑,完成一步之后再作下一步,这样对于系统而言才能更加有效。通过此次毕业设计,我不但对Visual Studio 2005和Access2003有了深刻的认识,积累了使用软件工程的思想来开发软件的经验,同时最重要的是摸索出了一套考虑问题和解决问题的方

51、法,这对于我将来走上工作岗位受益匪浅。实践出真知,这次毕业设计把我大学3年所学的理论知识得以充分地运用。理论与实践相结合,动手能力得以很大的提高。开发一个良好的系统需要丰富的知识,由于水平有限,系统功能不够完善,需更进一步的改善。致谢此次毕业设计和论文撰写过程中,得到了王老师、各位同学和朋友的关心、指导和帮助。入学以来各位老师一直以来的辛勤工作和教诲使我能顺利地度过了这难忘的三年,使我在综合素质提高、专业理论知识学习和实践工作能力等各方面受益匪浅。在本次毕业设计中,我从指导老师-王老师,身上学到了很多东西。他认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我收益匪浅。他无论在理论上还是在

52、实践中,都给予我很大的帮助,使我得到很大的提高,这对于我以后的工作和学习都有一种巨大的帮助,在此感谢他耐心的辅导。在撰写论文阶段,王老师提出了许多宝贵意见,没有他的指导,我们就不能较好的完成课题设计的任务。另外,我还要感谢在这几年来对我给予过教导的老师,他们孜孜不倦的教诲不但让我学到了很多知识,而且让我掌握了学习的方法,更教会了我做人处事的道理,在此表示感谢。同时,在系统开发过程中还有许多的同学也给了我不少帮助,这里一并表示感谢。感谢三年以来众多同学和朋友的帮助,大家一起在紧X的学习之余度过了许多愉快的时光。感谢学校三年来对我的培养,感谢父母多年以来的关爱!参考文献1. Visual C#2005程序设计与应用简明教程 清华大学 2007 严涛 著2. 精通Visual C#2005语言基础、数据库系统、Web开发 人民邮电 2007 王石 著3. C#程序设计案例精编 清华大学 2008 段得亮 余键 X仁才 著4. 数据库原理与应用基于Access 2003 清华大学2008 李春葆 曾平 著

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!