基于VB和access数据库德家庭理财系统设计报告毕业论文.docx
《基于VB和access数据库德家庭理财系统设计报告毕业论文.docx》由会员分享,可在线阅读,更多相关《基于VB和access数据库德家庭理财系统设计报告毕业论文.docx(34页珍藏版)》请在冰豆网上搜索。
基于VB和access数据库德家庭理财系统设计报告毕业论文
(此文档为word格式,下载后您可任意编辑修改!
)
摘要
随着人们生活水平的提高,个人家庭财富的不断增长,人们迫切地需要进行合理的家庭理财。
因而各式的家庭理财管理系统软件应时而生,它们帮助客户有效地解决了具体的家庭财务问题。
为适应这种趋势,家庭财务管理软件向着国际互联网发展,向着多媒体方向发展,向着大型数据库、多平台发展。
家庭理财系统可以有效地记录和管理家庭的收支情况,合理规划和支配家庭资金,是家庭理财的好帮手每一个家庭好比一个小型企业,都有着收入支出及净利,大部分家庭会用脑用手记录这些烦琐的数据,但也只是局限于记住收入的多少和支出的去向,不能在每月甚至于每年都有一个规划和对比,调节家庭财政状况然而,家庭理财系统可以有效地记录和管理家庭收支情况,合理规划和支配家庭资金,是家家户户的好管家,完全替代了手记脑记的烦琐,利于调节家庭财政状况。
本系统后台数据库使用access,前台开发工具使用visualbasic为单机版数据库管理信息系统的开发组合,通过系统开发,了解信息管理系统的需求分析设计和实现的完整过程,从而实现本系统的特色和优势
关键词:
理财家庭信息管理MicrooftOfficAccess
摘要1
目录2
第一章可行性分析4
1.1系统设计目标4
1.2系统数据间关系分析4
1.3系统可行性分析5
第二章需求分析7
2.1家庭理财系统的需求分析7
第三章系统设计9
3.1概要设计9
3.2系统详细设计10
3.3数据库设计11
第四章系统登录15
4.1系统登录窗口16
4.2主窗体17
第五章系统设置模块19
5.1项目管理19
5.2添加家庭成员21
5.3修改密码23
5.4数据备份/还原24
第六章日常管理模块25
6.1日常收入管理25
6.2日常支出管理27
6.3银行存款管理28
6.4借入款管理30
6.5借出款管理31
第七章家庭理财查询功能34
7.1查询功能实现34
第八章家庭理财报告36
8.1每月明细36
8.2收支统计37
参考文献38
致谢39
第一章可行性分析
1.1系统设计目标
现代社会家庭的理财观念进一步提高,理财手段变得更加丰富。
随着生活水平和文化水平的提高,家庭购买电脑的能力和应用电脑的能力开始提高。
电脑及其应用的普及化,人们应用电脑进行家庭财务管理的观念增强,因此,开发一个通用性家庭理财软件已经成为社会需求。
本系统是一个家庭通用型理财软件,系统目标是把适合家庭化管理的各种理财手段及家庭日常收支管理实现计算机化管理,使对家庭及家庭成员的收支活动更好地进行记录并加以统计分析成为可能,也使家庭理财变得方便,快捷,全面。
1.2系统数据间关系分析
家庭财务的中心内容账务管理。
人们几乎每一天都会经过许多次货币活动。
其中包括了买入卖出实物,娱乐消费,起居饮食消费,还有发放工资,收缴保费等。
如果能把各类不同的活动进行分类,建立不同的账户,分别对活动进行管理,那么无论现在还是将来,你的账务就会清楚明白了。
每天,我们对自己账务的操作有如下几类:
添加新的数据项,比如今天我卖出了多少钱,生活中,我们就要对自己还有多少钱,今天所得的利润进行统计。
现在我们把这些工作放到程序里去实现,就是这样的操作。
归结后,账户的操作一般如下:
新添,删除,增加,减少,查找,转账,统计。
对重要的数据表记录还可以打印,和生成图表,报表。
因而有了账户和相应的操作来管理的账务,依据需要一个统计分析的过程。
我定义这样一个过程,分析数据,生成报表和图表。
比如日常收支统计。
建立日常收支图表,圆饼图的方式对日常收支状况加以统计,统计可按家庭成员,账户名称,收支类型,时间段分类统计也可综合统计。
时间上可按年收支,月收支,及两段时间段统计。
报表则以报表的形式统计并可打印输出,用以备档。
1.3系统可行性分析
1.3.1经济和市场可行性分析
现在,人们的生活水平和文化素质普遍提高,并且开始注重生活质量。
随着市场经济的快速发展,观念的不断更新,个人理财意识普遍增强,特别是家庭理财意识得到很大发展,在意识上,一方面,人们对家庭和个人的各方面消费有想进行统计和分析的愿望,以便更好地做好家庭收支计划,和家庭财务管理。
另一方面,各种理财手段不断丰富,如何把各种理财手段统一起来,并且能更加方便的操作成为要求。
在物质基础上,计算机的应用开始普及,人们购置计算机和使用计算机的能力增强,人均计算机拥有量将快速提高。
这些条件说明,人们有购买一个家庭化财务软件的要求。
在一个可接受的价格范围内,将购买这种软件,因此具有市场潜力。
开发一个小型财务软件,用快速开发工具可在几个也内由几个人的开发小组完成。
经过以上分析,开发一个通用型家庭理财软件具有在经济和市场可行性。
1.3.2技术可行性分析
开发一个通用型家庭理财软件,项目规模可以在中等偏下。
技术上主要涉及界面设计和数据库设计。
再开发工具方面,可采用应用软件开发工具VisualBasic,它是一个高度集成化开发环境,具有丰富的组件,尤其在数据库开发方面具有很大优势。
VisualBasic能够支持大多数数据库的连接,通过数据库连接组件可方便快捷的实现数据库连接,并进行高效访问。
家庭财务管理主要由日常记账管理和应用各种理财手段进行理财实现家庭资金的最大增值。
记账按范围和使用方式可分为现金记账,定期存款记账,活期记账,外汇交易记账,实物资产记账,债权债务记账,保险记账。
它们分别对应于现金账户,定期存款账户,活期账户,外汇交易账户,实物资产账户,债权债务账户,保险账户。
现金账户可为不同家庭成员建立自己的账户,也可一人建立几个账户,以便把自己的现金按类归划,按用途有效的进行消费计划和统计。
活期账户对应于各家庭成员的银行活期账户。
外汇交易账户对应所开的外汇交易账户,外汇记账可以对近期的外汇活动详细信息进行查询,浏览,并对盈利情况统计。
外汇账户和一资金转账账户相连,可以进入日常收支统计数据中。
实物账户主要为各家庭成员对家庭财产的增加和减少活动进行跟踪和记录,这样随时可以对家庭的财产拥有状况进行浏览,查询,方便家庭财产的添置和管理。
第二章需求分析
2.1家庭理财系统的需求分析
家庭财务管理主要由日常记账管理和应用各种理财手段进行理财实现家庭资金的最大增值。
记账按范围和使用方式可分为现金记账,定期存款记账,活期记账,外汇交易记账,实物资产记账,债权债务记账。
现金账户可为不同家庭成员建立自己的账户,也可一人建立几个账户,以便把自己的现金按类归划,按用途有效的进行消费计划和统计。
活期账户对应于各家庭成员的银行活期账户。
外汇交易账户对应所开的外汇交易账户,外汇记账可以对近期的外汇活动详细信息进行查询,浏览,并对盈利情况统计。
外汇账户和一资金转账账户相连,可以进入日常收支统计数据中。
实物账户主要为各家庭成员对家庭财产的增加和减少活动进行跟踪和记录,这样随时可以对家庭的财产拥有状况进行浏览,查询,方便家庭财产的添置和管理。
2.1.1账本管理功能
整个系统相当于一个账本,按用途和目的可在账本上建立不同的账户。
便于各种账单的分类和管理。
建立新账户功能:
建立新账户可为不同的家庭成员建立不同类型的账户,账户按类型和用途分为现金账户,定期存款账户,活期账户。
现金账户为不同成员或一成员的不同现金用途分别建立,记录日常收支,方便掌握现金的使用状况和流向。
活期账户用于记录在不同银行建立的活期账户。
定期存款账户用于记录在不同银行建立的定期账户。
账户浏览选择功能:
对系统的所有账户进行浏览,或按不同类别浏览,查看账户余额,货币类型。
可添加账户,删除账户,和查看账户详细信息。
并在记账时选择进行记账的账户名称。
数据备份功能:
把系统以前的和当前的记账数据进行备份,可将其保存到其它的目录下。
增大数据的安全性。
安全性功能:
用户可为系统设置密码,防止非法用户进入系统,破坏数据或查看信息。
系统退出功能:
关闭整个系统,保存数据,安全退出。
2.1.2记账管理功能
收支记账:
对现金账户,活期账户,信用卡账户的日常收支活动进行记录。
对每天的消费及时入账。
便于以后对家庭收支或个人收支的查询和统计。
它记录了收支活动的日期,收支类型,活动说明,收入金额,支出金额,余额,及家庭成员名称。
定期存款记账:
可在定期存款账户上,添加定期存单,删除存单,及对已改变的存单进行修改。
它记录了存入日期,存单名称,存单类型,存入金额,到期金额,是否销户,币种,余额,说明信息。
债权债务记账:
对一特定债权债务账户的借入借出进行跟踪记账。
它记录了每次借入借出活动的日期,借入金额,借出金额,及说明信息。
债权债务活动将作为一项收入支出活动自动转入对应资金账户的收支记录上。
收支分类:
收支分类主要为各种收支活动按一种统一的标准进行分类,便于对各类收支进行分类统计整理。
用户可以用收支分类表自行添加新的收支类型,删除不需要的或模糊的类目,并可查询和浏览系统中所有类目信息。
收支类型信息作为系统信息为各种记账活动提供选择。
2.1.3收支记账管理功能
共享收支记账功能中的收支记账功能,分出这一块主要是为了更好地对日常收支进行记账管理,其中收支计划日历,用来对未来的收入支出提前制定计划。
2.1.4报表和图表功能
日常收支统计:
日常收支统计图表,以柱形图和圆饼图的方式统计对日常收支状况加以统计,统计可按家庭成员,账户名称,收支类型,时间段进行分类统计也可综合统计。
时间上可选择按年收支,月收支,及两段时间段之间收支进行统计。
报表则以报表的形式输出统计结果,并能打印输出,用以文件备档。
家庭理财统计:
总资产统计图对家庭现有各类财产的折合人民币价值进行统计,以圆饼图描述。
家庭实物一览表,可对家庭拥有各类实物财产迅速浏览,查看,便于充分利用家庭现有实物财产。
能按类查看,并对种类和物品名称添加。
这里的物品种类和实物名称作为系统信息,在实物资产记账是供用户选择。
债权债务表,显示所有债权债务账户的借入借出状况,以便总体上浏览家庭的债权债务。
第三章系统设计
3.1概要设计
根据以上的分析和理财系统应该具备的功能。
采用VisualBasic6.0作为开发工具,采用MicrosoftOfficeAccess作为后台数据库,可满足一般家庭理财管理的需求。
3.1.1系统模块图(如图3.1)
图3.1
3.1.2系统E-R图(如图3.2)
图3.2
3.2系统详细设计
该系统是以VB连接Access数据库进行开发的家庭理财系统,力求与实际相结合具有家庭财政管理和统计等功能,旨在达到使家庭财产管理和人事数字化使之更加方便快捷以提高工作效率。
3.2.1系统模块设计
(1)系统设置模块主要包括:
项目管理模块包括:
家庭支入支出的项目记录。
添加家庭成员模块包括:
为系统添加新的家庭成员。
修改密码模块包括:
用于操作员更改自己的系统口令。
数据备份/恢复模块包括:
备份和恢复记录的数据。
(2)日常模块管理主要包括:
日常收入模块包括:
显示添加修改删除。
日常支出模块包括:
显示添加修改删除。
银行存款模块包括:
显示添加修改删除
借入款模块包括:
显示添加修改删除
借出款模块包括:
显示添加修改删除
3.3数据库设计
图3.3
3.3.1数据库表结构
(1)表名:
urser1表(见表3.1)
成员
类型
长度
是否允许为空
User
文本型
50
否
Pass
文本型
50
否
表3.1
(2)表名:
成员表(见表3.2)
成员
类型
长度
是否允许为空
称呼
文本
50
是
姓名
文本
50
是
生日
文本
50
是
格言
文本
50
是
Key
自动编号
长整型
否
表3.2
(3)表明:
定期存款表(见表3.3)
成员
类型
长度
是否允许为空
开户日期
文本
50
是
银行名称
文本
50
是
银行地址
文本
50
是
银行账号
文本
50
是
款额
货币
无
是
开户人
文本
50
是
得款人
文本
50
是
已取
文本
50
是
Key
自动编号
长整型
否
表3.3
(4)表名:
活期存款表(见表3.4)
成员
类型
长度
是否允许为空
账号
文本
50
是
存取
文本
50
是
数目
货币
无
是
日期
文本
50
是
姓名
文本
50
是
余额
货币
无
是
Key
自动编号
长整型
否
表3.4
(5)表名:
借出表(见表3.5)
成员
类型
长度
是否允许为空
得款人
文本
50
是
金额
货币
无
是
出借人
文本
50
是
日期
文本
50
是
借款原因
文本
50
是
已还
文本
50
是
表3.5
(6)表名:
借入表(见表3.6)
成员
类型
长度
是否允许为空
得款人
文本
50
是
金额
货币
无
是
出借人
文本
50
是
日期
文本
50
是
出借原因
文本
50
是
已还
文本
50
是
表3.6
(7)表名:
收入表(见表3.7)
成员
类型
长度
是否允许为空
日期
文本
50
是
方式
文本
50
是
金额
文本
50
是
项目
文本
50
是
来源
文本
50
是
人员
文本
50
是
备注
备注
无
是
Key
自动编号
长整型
是
表3.7
(8)表名:
收入项目表(见表3.8)
成员
类型
长度
是否允许为空
Value
文本
50
是
表3.8
(9)表名:
支出表(见表3.9)
成员
类型
长度
是否允许为空
日期
文本
50
是
方式
文本
50
是
金额
文本
50
是
项目
文本
50
是
去向
文本
50
是
人员
文本
50
是
备注
备注
无
是
Key
自动编号
长整型
否
表3.9
(10)表名:
支出项目表(见表3.10)
成员
类型
长度
是否允许为空
Value
文本
50
是
表3.10
第四章系统登录
打开系统时会弹出欢迎窗口(如图4.1),点击一下将自动进入到家庭理财系统登录界面。
系统登录界面如图4.2所示。
图4.1
4.1系统登录窗口
图4.2
4.1.1系统登录功能实现
部分代码:
IfMydb.EOFThen
MsgBox"你输入的用户名不存在,请重新输入!
",vbOKOnly+32,"注意"
L=L+1
txt_name.SetFocus
IfL=5Then
MsgBox"你已经多次输入错误的用户名,请查证后重新登陆!
",vbOKOnly+48,"注意"
End
EndIf
ExitSub
Else
SetMydb1=ExeCutesql("selectuser,passfromuser1whereuser='"&Str_name&"'",Str_text)
Str_username=Trim(Mydb1.Fields(0))
Str_userpassword=Trim(Mydb1.Fields
(1))
IfTrim(Str_password)=Str_userpasswordThen
frm_main.Show
Else
MsgBox"你输入的密码错误,请重新输入!
",vbOKOnly+32,"注意"
I=I+1
txt_password.SetFocus
IfI=3Then
MsgBox"你输入的密码三次都不正确,本系统将关闭!
",vbOKOnly+48,"注意"
End
EndIf
4.2主窗体
在主窗体可以进行多种操作
图4.3
4.2.1主窗体设计
对主窗体实行菜单编辑,建立多级菜单。
如图4.4所示。
图4.4
4.2.2常用功能显示设计实现
在主窗体上方用toolbar添加常用功能快捷方式,可以提高系统的方便程度。
如图4.5所示。
图4.5
第五章系统设置模块
系统设置主要用来完成理财系统内一些基本信息的编辑操作,其主要包括【项目管理】、【添加用户】、【修改密码】、【数据备份】等。
5.1项目管理
用户单击【系统设置】/【项目管理】项即可进入【项目管理】模块。
在项目管理模块中可实现家庭收入支出项目的添加、修改、删除操作。
项目管理模块的运行结果如图5.1所示。
图5.1
5.1.1收入、支出项目的添加
在框内写入想要添加的项目和金额,点击添加即可完成添加过程。
部分代码:
A=MsgBox("是否添加前记录?
",vbYesNo+32,"添加记录")
IfA=TrueThen
ExeCutesql"insertinto收入项目values('"&Text1.Text&"')",Str_text
Mydb1.MoveLast
CallDb1
MsgBox"收入项目添加成功!
",vbOKOnly+64,""
Text1.Text=""
EndIf
Else
A=MsgBox("是否添加前记录?
",vbYesNo+32,"添加记录")
IfA=TrueThen
ExeCutesql"insertinto支出项目values('"&Text1.Text&"')",Str_text
Mydb2.MoveLast
CallDb2
MsgBox"支出项目添加成功!
",vbOKOnly+64,""
Text1.Text=""
EndIf
5.1.2收入、支出项目的删除实现
在框内选择想要删除的项目,点击删除即可删除记录。
部分代码:
A=MsgBox("是否删除当前记录",vbYesNo+32+256,"删除记录")
IfA=TrueThen
Mydb3.Delete
Mydb3.MoveNext
IfMydb3.EOFThenMydb.MoveLast
Mydb3.Requery
CallDb1
EndIf
Else
SetMydb4=ExeCutesql("select*from支出项目wherevalue='"&Text1.Text&"'",Str_text)
A=MsgBox("是否删除当前记录",vbYesNo+32+256,"删除记录")
IfA=TrueThen
Mydb4.Delete
Mydb4.MoveNext
IfMydb4.EOFThenMydb2.MoveLast
Mydb4.Requery
CallDb2
EndIf
EndIf
5.2添加家庭成员
用户单击【系统设置】/【添加家庭成员】项即可进入【添加家庭成员】模块。
在添加家庭成员模块中可实现家庭成员的添加、修改、删除操作。
项目管理模块的运行结果如图5.2所示。
图5.2
5.2.1家庭成员的添加
填写家庭成员的基本信息后,点击添加就完成了添加过程。
部分代码:
DimA,B
B=1
SetCount1=ExeCutesql("select*from成员",Str_text)
Count1.MoveLast
B=Count1.Fields(4)+1
A=MsgBox("是否添加前记录?
",vbYesNo+32,"修改记录")
IfA=vbYesThen
ExeCutesql"insertinto成员values('"&Text1.Text&"','"&Text2.Text&"','"&Format(DTPicker1.Value,"yyyy-mm-dd")&"','"&Text3.Text&"',"&B&")",Str_text
CallDb
Mydb.MoveLast
MsgBox"数据已经保存!
",vbOKOnly+64,"成功"
EndIf
5.2.2家庭成员的删除
在上框内选择想要删除的成员,点击删除就完成了删除过程。
部分代码:
DimA
A=MsgBox("是否删除当前记录",vbYesNo+32+256,"删除记录")
IfA=vbYesThen
ExeCutesql"DELETEfrom成员wherekey="&txt_key.Text&"",Str_text
SetMydb=ExeCutesql("select*from成员",Str_text)
SetMSHFlexGrid1.DataSource=Mydb
EndIf
5.3修改密码
图5.3
填写旧密码以及新密码后点击确定,修改成功会填出成功修改密码的对话框。
(如图5.4所示)
图5.4
5.4数据备份/还原
用户单击【系统设置】/【数据备份/还原】项即可进行数据库的备份以及还原工作。
系统向自动将数据库储存为.mdb格式。
在备份和还原完成后会弹出成功导入/还原成功的对话框。
5.5更换使用者
用户单击后会自动返回登录界面。
第六章日常管理模块
家庭理财系统的日常管理主要用来对每日的收入、支出金额的详细记录还有活期和定期银行账户进行有效管理。
6.1日常收入管理
在主界面中单击【日常管理】/【日常收入】项。
日常收入管理主要实现对家庭收入记录的添加、删除功能。
日常收入功能模块的运行结果如图6.1所示。
图6.1
6.1.1添加收入信息
部分代码:
DimA,B
B=1
SetCount1=ExeCutesql("select*from收入",Str_text)
Count1.MoveLast
B=Count1.Fields(7)+1
A=MsgBox("是否添加前记录?
",vbYesNo+32,"添加记录")
IfA=vbYesThen
Iftxt_intake.Text=""Then
MsgBox"请填写来源!
",vbOKOnly+32,"注意"
txt_intake.SetFocus
Else
ExeCutesql"INSERTINTO收入VALUES('"&Format(DTPicker1.Value,"yyyy-mm-dd")&"','"_&Combo1.Text&"',"&txt_money.Text&",'"&Combo2.Text