家庭财政收支系统

合集下载

家庭财务管理系统—毕业设计论文

家庭财务管理系统—毕业设计论文

家庭财务管理系统摘要家庭理财管理系统是典型的管理信息系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。

对于前者要求建立起数据一致性和完整性强、数据安全性好的库。

而对于后者则要求应用程序功能完备,易使用等特点。

经过分析,我们使用 MICROSOFT公司的 VISUAL BASIC开发工具,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。

关键字:家庭理财管理信息系统 MIS Visual Basic目录第一章绪论41.1课题简介 (4)1.2开发的意义 (4)第二章开发环境及实现技术62.1开发环境 (6)2.2开发工具简介 (7)第三章系统设计 123.1概要设计 (12)3.1.1概要设计阶段的主要任务 (12)3.1.2概要设计的过程 (12)3.1.3概要设计的原则 (12)3.1.4系统功能分析 (12)3.2详细设计 (13)3.2.1详细设计的任务 (13)3.2.2详细设计的方法 (14)第四章数据库设计 164.1数据库A CCESS简介 (16)4.2表的详细结构说明 (20)第五章详细设计 265.1系统登录模块的设计与实现 (26)5.2主界面的设计与实现 (28)5.3日常收支与维护模块的设计与实现 (30)5.4银行卡收支与维护管理模块的设计与实现 (38)5.5银行往来统计模块的设计与实现: (45)5.6用户管理模块的设计与实现 (47)第六章设计心得 50第七章致谢51参考文献52第一章绪论1.1课题简介家庭理财管理系统是每一个家庭管理家庭财务收入和支出的不可缺少的一个管理信息系统,它的内容对于家庭的管理者来说是至关重要的,所以家庭理财管理系统应该能够为每一个家庭的管理者提供充足的信息和快捷的查询手段,大的方便家庭的管理者的合理理财。

个人理财家庭收支表

个人理财家庭收支表

个人理财家庭收支表家庭是每个人的温馨港湾,也是财务管理的重要领域。

一个合理的家庭收支表可以帮助我们清晰地了解家庭的财务状况,合理规划每一笔开支,保证生活的质量,并为未来的发展打下坚实的基础。

收入部分:1. 工资收入:我们全家人的主要收入来源是工资,我和配偶每月的工资总额约为1.2万人民币。

2. 其他收入:除了工资外,我们还有一些其他收入来源,包括利息、分红、租金等。

每月大约能额外获得500元。

支出部分:1. 生活开支:生活开支是我们最主要的支出项目之一。

包括房贷、水电费、燃气费、通讯费、食品杂货费等。

每月大约需要花费5000元。

2. 子女教育:为了给孩子一个良好的教育环境,我们每月为子女的学费、书籍费、课外活动费等支出约为2000元。

3. 医疗保健:我们非常重视健康,每年的医疗保健费用约为2000元。

4. 养老规划:为了未来的养老生活,我们每月会将一部分资金投入养老规划中,大约为1000元。

5. 娱乐休闲:适当的娱乐休闲对于身心健康非常重要,我们每月安排1000元用于娱乐休闲活动。

6. 其他支出:其他支出包括旅行、家居装修、购物等,每月约为1500元。

储蓄部分:1. 储蓄计划:为了应对紧急情况以及未来的投资机会,我们每月会将一部分资金进行储蓄。

目前每月储蓄额大约为2000元。

总结:通过仔细分析家庭收支表,我们可以看到每个月的收入和支出清晰明了。

我们的收入主要来源于工资,而支出方面主要包括生活开支、子女教育、医疗保健、养老规划、娱乐休闲等。

在合理规划家庭收支的基础上,我们还能有一定的储蓄计划,为未来的发展做好准备。

通过这样的家庭收支表,我们可以更加清晰地了解家庭财务状况,并做出相应的调整和决策,以保证家庭的经济稳定和幸福生活的持续发展。

案例四 家庭财务管理系统

案例四 家庭财务管理系统

案例四家庭财务管理系统4.1需求分析家庭财务系统主要对家庭的各项财务收支管理进行在计算机上的信息存储和处理,从而简化用户的工作量。

在需求分析过程中,概括描述了本软件能够为用户提供哪些服务、系统功能的整体框架,以及相应的业务流程。

4.1.1 系统概述家庭财务管理系统给家庭成员提供了一个管理平台,家庭成员可以对其成员编号、姓名以及收入、支出构成进行增加、删除、修改等管理操作。

同时,该系统还提供了家庭成员管理功能,根据家庭成员的分类,其拥有的权限也不同,系统可以判断登录家庭成员的用户名和密码,从而判断其是否可以使用该系统。

系统亦可登录家庭成员的权限信息,从而判断该家庭成员能够使用该系统的哪些特定功能,不同级别的家庭成员之间不能够越权使用系统功能。

家庭成员分家长和普通成员两类。

4.1.2 系统运行环境一、硬件环境●处理器:Intel Pentium 166 MX或更高●内存:32MB●硬盘空间:1GB●显卡:SVGA显示适配器二、软件环境●操作系统:Windows 98/ME/2000/XP4.1.3 功能需求描述家庭财务管理系统软件是为用户对家庭成员的收支构成及信息进行辅助管理的应用软件,功能需求描述如下。

1.用户登录:系统获取的家庭成员用户名和密码判断该家庭成员能否成功登录系统,并且当用户登录后根据权限判断该家庭成员是家长还是普通成员,可以使用哪些对应功能。

普通用户只能管理财务信息,而家长还可以管理用户信息。

2.给家庭成员提供功能选择界面:不同级别的家庭成员对应不同的功能选择界面。

功能选择界面包括输入功能选项、调用相应程序两大需求。

3.创建收支信息文件:用户根据提示输入家庭成员序号、姓名、各项财务信息,如收入、支出、合计。

可一次性输入多条家庭成员的收支信息。

并将家庭成员收支信息存储在系统磁盘文件中,以便进行管理、查找和备份。

4.增加家庭成员收支信息:可在原有收支信息文件的基础上增加新的家庭成员财务信息,并保存至磁盘,5.删除家庭成员收支信息:提示用户输入要删除的家庭成员序号,如果在文件中有该家庭成员的收支信息,则将该序号对应的信息在文件中删除。

家庭财务管理系统源代码

家庭财务管理系统源代码

#include<stdio.h>#include<stdlib.h>#include<conio.h>#include<string.h>#define LEN sizeof(struct financial)#define FFORMAT "%-8d%-15s%-10d%-10d%-12.2f%-12.2f%-12.2f\n"#define DATA member[i].num,member[i].name,member[i].month,member[i].year,member[i].inco me,member[i].output,member[i].totalstruct financial //定义家庭成员信息{int num; //编号char name[15]; //家庭成员姓名int month; //月份int year; //年份float income; //收入float output; //支出float total; //总金额};struct financial member[50]; //定义结构体数组void menu(); //主界面void in(); //录入家庭成员收支信息void show(); //显示家庭成员收支信息void del(); //删除家庭成员收支信息void modify(); //修改家庭成员收支信息void total(); //计算家庭成员总收入void search(); //查找家庭成员收支信息int main(){int n;menu();scanf("%d",&n); //输入数字选择功能while(n){switch(n){case 1:in(); //调用录入家庭成员信息函数break;case 2:search(); //查找家庭成员信息函数break;case 3:del(); //调用删除家庭成员信息函数break;case 4:modify(); //调用修改家庭成员信息函数break;case 5:total(); //调用汇总函数break;default:break;}printf("按任意键返回主菜单:\n");getch();menu(); //执行完功能再次显示菜单界面scanf("%d",&n);}return 0;}void menu(){system("cls");printf("|-------------------------------------------------|\n");printf("|--------------------家庭财务信息系统-------------|\n");printf("| 0. 退出|\n");printf("| 1. 录入信息|\n");printf("| 2. 查找信息|\n");printf("| 3. 删除信息|\n");printf("| 4. 修改信息|\n");printf("| 5. 统计信息|\n");printf("|-------------------------------------------------|\n");printf("选择(0-5):");}void in() //录入家庭成员信息{int i,m=0;char ch[2];FILE *fp;if((fp=fopen("家庭财务管理系统","ab+"))==NULL){printf("不能打开文件!\n");return;}while(!feof(fp)){if(fread(&member[m] ,LEN,1,fp)==1)m++; //统计当前记录条数}fclose(fp);if(m==0)printf("没有找到!\n");else{//system("cls");show(); //调用show函数,显示原有信息}if((fp=fopen("家庭财务管理系统","wb"))==NULL){printf("不能打开文件!\n");return;}for(i=0;i<m;i++)fwrite(&member[i] ,LEN,1,fp); //向指定的磁盘文件写入信息printf("是否输入?(y/n):");scanf("%s",ch);while(strcmp(ch,"Y")==0||strcmp(ch,"y")==0) //判断是否要录入新信息{printf("编号:");scanf("%d",&member[m].num); //输入家庭成员编号for(i=0;i<m;i++)if(member[i].num == member[m].num){printf("该记录已经存在,按任意键继续!");getch();fclose(fp);return;}printf("家庭成员姓名:");scanf("%s",member[m].name); //输入家庭成员姓名printf("请输入月份:");scanf("%d",&member[m].month); //输入月份printf("请输入年份:");scanf("%d",&member[m].year); //输入年份printf("请输入收入:");scanf("%f",&member[m].income); //输入收入printf("请输入支出:");scanf("%f",&member[m].output); //输入支出member[m].total=member[m].income - member[m].output;//汇总if(fwrite(&member[m],LEN,1,fp)!=1)//将新录入的信息写入指定的磁盘文件{printf("不能保存!");getch();}else{printf("%s 已经保存!\n",member[m].name);m++;}printf("是否继续?(y/n):");scanf("%s",ch);}fclose(fp);printf("OK!\n");}void show(){FILE *fp;int i,m=0;fp=fopen("家庭财务管理系统","ab+");while(!feof(fp)){if(fread(&member[m] ,LEN,1,fp)==1)m++;}fclose(fp);printf("编号成员月份年分收入支出总金额\t\n");for(i=0;i<m;i++){printf(FFORMAT,DATA);}}void del(){FILE *fp;int snum,i,j,m=0;char ch[2];if((fp=fopen("家庭财务管理系统","ab+"))==NULL){printf("不能打开文件\n");return;}while(!feof(fp))if(fread(&member[m],LEN,1,fp)==1) m++;fclose(fp);if(m==0){printf("没有记录!\n");return;}printf("请输入编号:");scanf("%d",&snum);for(i=0;i<m;i++)if(snum==member[i].num)break;if(i==m){printf("没有找到!");return;}printf("已经找到该记录,是否删除?(y/n)");scanf("%s",ch);if(strcmp(ch,"Y")==0||strcmp(ch,"y")==0)//判断是否要进行删除{for(j=i;j<m;j++)member[j] = member[j+1]; //将后一个记录移到前一个记录的位置m--; //记录的总个数减1printf("成功删除!\n");}if((fp=fopen("家庭财务管理系统","wb"))==NULL){printf("不能打开!\n");return;}for(j=0;j<m;j++) //将更改后的记录重新写入指定的磁盘文件中if(fwrite(&member[j] ,LEN,1,fp)!=1){printf("不能保存!\n");getch();}fclose(fp);}void search(){FILE *fp;int snum,i,m=0;char ch[2];if((fp=fopen("家庭财务管理系统","ab+"))==NULL) {printf("不能打开文件\n");return;}while(!feof(fp))if(fread(&member[m],LEN,1,fp)==1)m++;fclose(fp);if(m==0){printf("没有记录!\n");return;}printf("请输入编号:");scanf("%d",&snum);for(i=0;i<m;i++)if(snum == member[i].num){printf("已经找到该记录,是否显示?(y/n)");scanf("%s",ch);if(strcmp(ch,"Y")==0||strcmp(ch,"y")==0){printf("编号成员月份年份收入支出总金额\t\n");printf(FFORMAT,DATA);break;}elsereturn;}if(i==m)printf("没有找到相应的记录!\n");}void modify(){FILE *fp;int i,j,m=0,snum;char ch[2];if((fp=fopen("家庭财务管理系统","ab+"))==NULL) {printf("不能打开文件!\n");return;}while(!feof(fp))if(fread(&member[m],LEN,1,fp)==1)m++;if(m==0){printf("没有记录!\n");fclose(fp);return;}printf("请输入要修改的记录信息的编号!\n");scanf("%d",&snum);for(i=0;i<m;i++)if(snum==member[i].num) //检索记录中是否有要修改的信息{printf("已经找到该记录,是否修改?(y/n)\n");scanf("%s",ch);if(strcmp(ch,"Y")==0||strcmp(ch,"y")==0){printf("家庭成员姓名:");scanf("%s",member[i].name); //输入家庭成员姓名printf("请输入月份:");scanf("%d",&member[i].month); //输入月份printf("请输入年份:");scanf("%d",&member[i].year); //输入年份printf("请输入收入:");scanf("%f",&member[i].income); //输入收入printf("请输入支出:");scanf("%f",&member[i].output); //输入支出member[i].total=member[i].income - member[i].output; //汇总printf("保存成功!");}elsereturn;}else{printf("没有找到!");return;}if((fp=fopen("家庭财务管理系统","wb"))==NULL){printf("不能打开文件!\n");return;}for(j=0;j<m;j++) //将新修改的信息写入指定的磁盘文件中if(fwrite(&member[j] ,LEN,1,fp)!=1){printf("不能保存!");}fclose(fp);}void total() // 统计{FILE *fp;int m=0;if((fp=fopen("家庭财务管理系统","ab+"))==NULL){printf("不能打开记录!\n");return;}while(!feof(fp))if(fread(&member[m],LEN,1,fp)==1)m++; //统计记录个数if(m==0){printf("没有记录!\n");fclose(fp);return;}printf("一共有%d 条记录!\n",m); //将统计的个数输出fclose(fp);}。

家庭财务管理系统开题报告

家庭财务管理系统开题报告

青岛工学院毕业论文(设计)开题报告题目家庭财务管理系统设计与实现学院信息工程学院年级2012 级专业软件工程姓名高正森学号201202505109指导教师苏爱玲报告日期2016.03.01青岛工学院教务处制表课题来源、选题依据和背景情况;课题研究目的、学术价值或实际应用价值。

1、课题来源:家庭财务管理系统是把适合家庭化管理的各种理财手段及家庭日常收支管理实现计算机化管理,使对家庭及家庭成员的收支活动更好地进行记录并加以统计分析成为可能,也使家庭理财变得方便,快捷,全面。

为了更好的对家庭财富进行科学、系统的管理,拟开发一款适用于以家庭为单位的理财管理系统,由此选择本课题。

2、选题依据和背景情况家庭财务管理,即管理家庭的财富,进而提高财富的效能的经济活动。

人类社会是由一个个家庭组成的,每个家庭的正常运行都离不开收入和支出,因此不得不面对如何正确理财这个问题。

因为拥有了正确的理财方法,才能达到开源节流的标准,才会有安定愉快的生活。

有不少家庭因为经济困难而造成消费阻塞,也有不少家庭虽然资产累累却积攒不足,这都是没有一个合理的理财手段造成的后果。

因此,家庭理财系统的广泛应用迫在眉睫。

随着社会的进步,生活的富裕,电脑已经成为家庭必备的工具之一,利用计算机系统进行家庭理财不失为一种行之有效的方法,同时也给用户带来了极大的便利,达到足不出户就能管理财富的目的。

3、课题研究目的当前社会,有很多家庭不善于财务管理,甚至不进行财务管理,这样就造成了财富的不合理运用,或是资源浪费;而有的家庭善于财务管理,对自己的收入和支出都一清二楚。

对于前者,应用家庭财务管理系统可以让他们清楚看到自己的财务状况,从而做出合理的规划;对于后者,应用家庭财务管理系统可以使他们放弃传统的纸张记账方式,只需点击鼠标,键盘输入,就可一目了然,非常方便。

目前,软件产业逐步兴盛,市面上也存在了一些家庭财务管理系统,实现着各种不同的功能,但从方便、实用、美观、高效的角度来看,都有着或多或少的缺点。

家庭财务管理系统毕业论文终稿

家庭财务管理系统毕业论文终稿

家庭财务管理系统毕业论文终稿本文作者将探讨家庭财务管理系统的开发与应用,旨在提高家庭理财水平,避免过度消费和债务,在经济上取得长期可持续的稳定收益。

本文首先介绍了家庭财务管理系统的背景和现状,其次探讨了家庭理财的重要性以及影响因素,接着分析了家庭财务管理系统开发的需求和设计思路,最后阐述了系统优点和实现方法。

一、家庭财务管理系统的背景与现状随着经济发展和社会变化,人们的消费观念也发生了转变。

许多人更加注重及时、便捷地掌握自己的收支状况,实现家庭财务管理的精细化和科学化。

然而,目前市场上的家庭财务管理软件种类繁多,而且往往不够智能化和个性化,难以满足用户的实际需求。

此外,由于家庭理财知识和技能的匮乏,许多人往往存在消费决策不合理、开支过度等问题,导致财务困境、债务累积等后果。

因此,通过建立易用、实用的家庭财务管理系统,帮助用户更好地管理自己的财务,具有极为重要的现实意义和市场前景。

二、家庭理财的重要性及影响因素家庭理财对于个人和家庭经济具有重要的影响,能够帮助人们理财风险,提高生活品质。

正确的家庭理财有助于保障经济安全和稳定性,避免因意外事故、突发疾病等造成的经济压力和后果。

此外,良好的家庭财务管理还可以促进家庭关系、增进幸福感和生活质量,从而实现家庭幸福指数的提升。

家庭理财不仅受到个人收入、家庭结构和风险偏好等因素的影响,还受到宏观经济情况、产业发展、社会政策等多方面的影响。

在此基础上,进行理性思考和决策,选择合适的投资方式和消费方式,是进行家庭理财的基本要求。

三、家庭财务管理系统的开发需求和设计思路1.开发需求(1)安全性家庭财务管理系统必须确保用户的隐私安全,如账号密码、财务记录等涉及到用户的敏感信息必须进行保密和加密处理,防止数据泄漏和安全漏洞。

(2)用户友好性家庭财务管理系统必须简单易用、符合用户习惯,避免繁琐的输入步骤、页面跳转等问题,使用户能够轻松快捷地处理财务事项。

(3)智能化家庭财务管理系统需要具有一定的智能化和数据分析能力,能够根据用户的消费习惯、收支情况等,给予适当的财务建议和咨询,以便更好地指导用户进行理财决策。

家庭财务管理系统的设计与实现

家庭财务管理系统的设计与实现

谢谢观看
一、系统需求分析
在家庭财务管理系统的设计中,我们需要满足以下需求: 1、用户可以方便地记录家庭的收入和支出;
2、用户可以按日期、类别等对收支情况进行查询和统计;
3、具备预算设置和预警功能,当家庭支出超过预设的预算时,系统应给予提 醒;
4、提供报表生成功能,用户可以通过报表了解家庭的收支情况; 5、提供数据导入导出功能,方便用户进行数据备份和迁移。
3、交互处理:通过JavaScript处理用户操作事件,如点击按钮、提交表单等。
四、测试与优化
完成家庭财务管理系统的设计和实现后,我们需要进行测试和优化,确保系统 的稳定性和性能。我们可以采取以下措施:
1、单元测试:对每个模块进行单元测试,确保每个模块的功能正常; 2、集成测试:将所有模块集成在一起进行测试,确保系统整体功能的正常;
3、API接口:提供RESTful API接口,方便前端进行数据请求和提交。
2、前端实现
家庭财务管理系统的前端可以采用HTML5、CSS3和JavaScript等技术进行开发。 在前端开发中,我们需要实现以下功能:
1、数据展示:通过HTML和CSS将数据展示在网页上; 2、数据输入:通过HTML表单等元素接收用户输入的数据;
1、用户表(User):存储用户信息,如用户名、密码等;
2、收入表(Income):存储家庭的收入信息,如日期、金额、来源等; 3、支出表(Expenditure):存储家庭的支出信息,如日期、金额、类别等;
4、预算表(Budget):存储家庭的预算信息,包括预算金额和预算类型等。
2、系统架构设计
3、性能测试:对系统进行压力测试和性能测试,确保系统在高负载下的稳定 性和性能;
4、安全性测试:对系统进行安全性测试,确保系统对各种攻击的防御能力。

家庭预算表2024

家庭预算表2024

家庭预算表20241. 引言1.1 概述家庭预算表是一种记录家庭收入和支出的工具,旨在帮助家庭实现财务稳定、控制支出并实现目标。

通过制定家庭预算表,我们可以清晰地了解自己的资金状况,并有效地分配和管理有限的资源。

家庭预算表可以帮助我们规划未来的开支和储蓄计划,以便实现理想生活。

1.2 文章结构本文将以"家庭预算表2024"为主题,系统介绍了制定家庭预算表的重要性以及步骤,并详细列举了2024年度的具体内容。

通过阅读本文,读者将能够全面了解如何建立一个符合自己需求的家庭预算表,并学会合理管理和利用财务资源。

1.3 目的本文旨在向读者介绍家庭预算表,并提供制定2024年度家庭预算表所需的基本知识和技巧。

通过学习本文提供的内容,读者将能够更好地规划自己的财务目标,并通过有效地管理收入和支出,获得财务稳定并逐渐实现自己的理想生活。

以上是"1. 引言"部分的内容,希望对您撰写长文有所帮助。

如需更多内容或其他部分的内容撰写,请继续提问。

2. 家庭预算表的重要性家庭预算表在每个家庭的财务管理中都扮演着至关重要的角色。

下面将介绍家庭预算表的三个重要性方面。

2.1 财务稳定性一个合理的家庭预算可以帮助家庭实现财务稳定。

通过详细记录和分析家庭的收入来源和支出项目,可以清晰地了解每个月的经济状况,并及时发现潜在的财务问题。

如果支出超过收入,预算表将提醒我们需要采取相应措施来调整支出或增加收入,以避免陷入债务困境。

同时,通过制定长期储蓄计划和投资规划,家庭可以为未来打下坚实的经济基础。

2.2 支出控制通过制定家庭预算表,可以更好地管理支出并控制开支。

首先,明确列出每月固定开支项目(如房租、水电费等),然后合理分配剩余收入到其他可变开支项目(如食品、交通、休闲等)。

此外,在评估当前支出时,也能更容易识别不必要或可减少的消费项目,并建立相应的节约措施。

通过预算表,家庭成员可以更好地自律和规划开支,并在必要时做出合理的调整。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

家庭财政收支系统随着社会经济发展,人们生活水平提高,经济收入提高,利用计算机对家庭收支管理势在必行!过去,人们收入还没有达到要用计算机来计算,但是今非夕比,不可能就单单靠一个头脑或一支笔就可以实现对家庭收支管理在这个高度发达社会,家庭财政收支管理系统建立,实现了家庭财务信息化管理,可以为整个家庭带来很大经济效益。

科学、高明理财手段可以给一个家庭带来丰厚回报。

而现代社会可以提供给家庭理财项目也是五花八门,如果没有一个功能强大理财软件来管理这些信息,光靠手写脑记是远远不能满足要求,所以在家庭管理信息系统中开发家庭财务模块也是势在必行本系统是针对个人家庭用户为主进行开发,所以考虑最多就是在保障安全前提下,最大限度满足个人用户使用需求。

开发系统不但可以实现从微观角度数据录入、删除、查找等基本功能,而且从宏观角度对于整个财务状况进行分析。

家庭管理信息系统家庭管理可以对收支信息进行统计。

家庭财政收支管理系统可以实现对用户管理,实现了添加、修改、删除用户,设置用户权限,是否启用。

家庭财政收支管理系统中可以实现对个人信息管理,可以修改登录用户个人信息,修改密码。

二、设计任务可行性分析技术可行性分析家庭财政收支管理系统发展虽然还处于初级阶段,但是它发展前途是无限光明。

它开发平台有很多,可以采用各种技术来开发,本系统实现是采用VB开发语言,数据库采用Access。

经济可行性分析家庭对信息化要求目前还不是很高,但这终究是一种趋势,从目前技术发展分析,从目前技术发展分析,采用vb作为开发平台是较为理想平台,并且有不少关于管理信息系统成功案例,而且开发成本较低,因此采用此平台在实际开发中具有很高可行性。

因此开发家庭财政收支管理系统在经济上也是可行。

操作可行性分析目前家用电脑操作系统大多数为Windows,故本系统在操作上是可行。

开发工具:1.设计语言VB:Visual Basic 6.0 是一种32位系统开发开发环境,是一种现代化编程语言,提供了完善指令控制语句、类与对象支持及丰富数据类型,能方便编程人员设计出高内聚,低耦合程序出来。

2.Access数据库:一种有结构数据集合,是不同于一般数据文件一串文字或数字流,数据中对象可以是文字,图像,声音,关系式数据库由一系列表组成,表又由一系列行和列组成,每一行是一个记录,每一列是一个字段,每个字段有一个字段名,字段名在一个表中不能重复。

它由六种对象组成:表,查询,窗体,报表,宏,模块。

表(Table) ——是数据库基本对象,是创建其他5种对象基础。

表由记录组成,记录由字段组成,表用来存贮数据库数据,故又称数据表。

查询(Query)——查询可以按索引快速查找到需要记录,按要求筛选记录并能连接若干个表字段组成新表。

窗体(Form)——窗体提供了一种方便浏览、输入及更改数据窗口。

还可以创建子窗体显示相关联表内容。

窗体也称表单。

报表(Report)——报表功能是将数据库中数据分类汇总,然后打印出来,以便分析。

宏(Macro)——宏相当于DOS中批处理,用来自动执行一系列操作。

模块(Module)——模块功能与宏类似,但它定义操作比宏更精细和复杂,用户可以根据自己需要编写程序。

模块使用Visual Basic编程。

数据库需求分析在需求分析中,首先要理解需求。

理解需求是在问题及其最终解决方案之间架设桥梁第一步。

开发者只有和客户沟通充分理解了需求之后才能开始设计系统,否则,对需求定义任何改进,在设计上都必须进行大量返工。

需求分析是从客户需求中提取出软件系统能够帮助用户解决业务问题,通过对用户业务问题分析,规划出系统功能模块。

1.收支记录表信息,包括数据项有:自动编号,收支分类(如收入类型有:工资、补贴、股票收入等,反映经济来源详细情况。

如支出类型有:电话费、伙食、购物、水电费等,详细反映资金花费去向,花费时间,发生金额等。

)姓名,日期,金额,备注,创建人用户名,创建日期。

2.用户表信息,包括数据项有:自动编号,称呼,姓名,出生日期,创建日期,备注(用户管理:即使用者资料管理,主要功能为登录系统用户名和密码修改,用户基本资料设置。

)3.对于银行账务统计,包括存款、提款、贷款和银行账户信息。

4.在汇总方面可以进行功能更加强大设计,比如说对于总财产统计功能,以及按照时间进行查询。

5.在程序中能够自动修改界面显示和输入显示。

6.查询功数能:该功能根据标签当有显示是收支明细还是转账明细判断查询功能。

查询条件可根据收入/支出、收支类型、转入/转出、发生金额、发生日期、录入日期查询。

查询结果显示在标签相应数据表格中,以便对其进行操作维护。

其中发生日期和录入日期以及发生金额可根据区间查询。

三、设计内容系统概要设计:通过以上分析,家庭财政收支管理系统架构也就一目了然,如图则为系统结构层次图,通过该图我们可以清楚看到系统各个模块及其相互之间关系。

系统结构层次图:具体功能模块如下:用户信息模块——(基本信息+增加用户)登录模块——(正常登录+登录错误处理)借款模块——(借入款+结出款)存取款模块——(定期存款+活期存款)收入模块——(具体收支情况,包括时间,地点,金额,人员,来源,方式)支出模块——(具体收支情况,包括时间,地点,金额,人员,用途,方式)查询模块——(可以以多种方式查询具体收/支情况)其他模块——(密码修改)汇总模块——(饼图形象化体现,)数据流程图通过该图可以了解系统整个运行过程。

ER图该ER图实体类型为:家庭成员(称呼,姓名,生日,格言)收支记录(日期,方式,金额,项目,来源,人员,备注)借/出款人(姓名,电话,住址)数据库结构设计要将上述数据库概念结构转化为Access 数据库系统所支持实际数据模型,即数据库逻辑结构。

家庭财政收支管理系统数据库中各个表设计结构如所示。

字段名称数据类型长度是否为空用户文本可变长否密码文本可变长是表1 用户密码(2)表2是用户信息图,用来说明本系统用户信息情况。

字段名称数据类型长度是否为空称呼文本可变长否姓名文本可变长否生日文本可变长否格言文本可变长否表2 收支信息(3)表3是用来说明存储款信息。

表3 存取款信息(4)表4是说明用户信息表4 用户信息(5)表5是说明系统借还款基本信息表5 借还款信息四、测试与评价家庭财政收支管理系统实现用户可以在其输入用户名,密码即可登入系统到该系统。

家庭财政收支管理系统家庭管理是对家庭中所有信息统计。

(1) 在进入系统之前,必须要有符合本系统用户以及每个用户对应密码。

如果没输入用户名,点击登入将会提示请输入用户名。

如果用户名错误和用户密码不符合也将会有错误提示。

具体界面如图所示。

用户名和初始密码都是vb,当用户连续输入错误三次时候,系统将关闭。

登录界面(2) 用户和密码正确后,将进入系统主界面。

在这个界面里将实现本系统所有功能,用户一看便会使用,如图所示本系统主界面(3) 进入主界面以后,点击菜单中基础数据管理中家庭成员管理,会出现如图所示可以对家庭成员进行管理。

家庭成员信息(4)点击基础数据库管理中项目管理,出现如图所示,即可对支入支出项目进行管理,可对其进行添加,删除操作。

(5)点击菜单栏中借还钱管理可以对借还钱进行管理,如图所示,可对其进行添加,删除操作。

借入借出款模块(6) 这里提供了添加资金收入类型,分为现金和信用卡两种,还有日期、金额、方式和备注等,方便用户详细记录资金收入情况。

添加完以后,就会在查询记录里面找到用户想要找收入记录。

日常收入支出模块(7)点击菜单中银行存储管理,可以看到活期账户,定期存储两种类型存储方式,可以对银行账户进行管理,当中有账户信息,取款记录,可对其进行操作哦。

存取款信息(8)通过这个模块用户可以轻松查询到自己想要信息。

查询方式有四种,分别是按日期,按方式,按金额,按项目。

查询模块(9)点击菜单栏中理财分析中理财报告,可以看到当月收入支出情况,通过运用饼图查看当月具体收支情况。

汇总模块五、结论整个应用程序调试通过,编译生成可执行文件了。

Visual Basic一般生成是单个可执行文件,可以使用任何一种在Windows下执行常规可执行文件方法来执行它。

可执行文件运用不再需要工程文件与各个模块文件,但是需要有Visual Basic运行时动态链接库(.dll)支持。

一台安装了Visua l Basic计算机中会有所需动态链接库文件。

如果要在没有安装过Visual Ba sic计算机上运行,最好使用Visual Basic安装盘生成程序来制作安装盘。

在这次毕业设计过程中我查找了大量资料,同时对自己专业知识进行了融汇贯通,使自己实践能力有了很大提高,这对以后工作做了准备。

由于时间比较仓促,再加上本人能力有限,目前好管家家庭管理信息系统只能对家庭图书和家庭收支进行基本管理。

故系统功能还比较单一。

如果能对其进行扩充,加上各个方面功能实现,使家庭各个事务都可以使用自动化和无纸化方式进行信息管理,这样才可以更好使用于各个家庭中。

随着科技发展,经过扩展后家庭管理信息系统可以通过各种方式服务于各个家庭。

相信这只是一个开始,我以后肯定会努力做出更好作品来。

六、致谢本次设计彭三城老师精心指导下,终于如期完成。

在整个设计过程和撰写设计说明书过程中,彭三城老师定时定点对我进度进行了了解并尽力帮助我们决问题,并严格督促我们完成任务,任何人不得例外。

在这种高压下,我们最终完成了任务。

附录源代码清单:主界面代码Private Sub mnu_bg_yue_Click()frm_list.Show 0, frm_main '参数,让frm_main为主窗体打开多个子窗体End SubPrivate Sub mnu_cx_shouru_Click()frm_query.Show 0, frm_mainEnd SubPrivate Sub mnu_bz_zt_Click()End SubPrivate Sub mnu_cx_Click()frm_query.Show 0, frm_mainEnd SubPrivate Sub mnu_rcgl_dq_Click()frm_fix.Show 0, frm_mainEnd SubPrivate Sub mnu_rcgl_hq_Click()frm_live.Show 0, frm_mainEnd SubPrivate Sub mnu_rcgl_jc_Click()frm_borrowgo.Show 0, frm_mainEnd SubPrivate Sub mnu_rcgl_jr_Click()frm_borrowin.Show 0, frm_mainEnd SubPrivate Sub mnu_rcgl_sr_Click()frm_intake.Show 0, frm_mainEnd SubPrivate Sub mnu_rcgl_zc_Click()frm_expend.Show 0, frm_mainEnd SubPrivate Sub mnu_xt_shz_Click()frm_login.ShowUnload MeEnd SubPrivate Sub mnu_xt_xg_Click()frm_password.Show 0, frm_mainEnd SubPrivate Sub mnu_xt_xu_Click()frm_project.Show 0, frm_mainEnd SubPrivate Sub mnu_xy_family_Click()frm_family.Show 0, frm_mainEnd SubPrivate Sub mnuexit_Click()Unload MeEnd SubPrivate Sub mnuinput_Click()Call FileInEnd SubPrivate Sub mnuout_Click()Call FileGoEnd SubPrivate Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Butt on)Select Case Button.IndexCase 1Call mnu_xt_xu_ClickCase 2Call mnu_xy_family_ClickCase 3Call mnu_xt_xg_ClickCase 5Call FileGoCase 6Call FileInCase 8Call mnu_rcgl_sr_ClickCase 9Call mnu_rcgl_zc_ClickCase 10Call mnu_rcgl_hq_ClickCase 11mnu_bg_yue_ClickCase 13Call mnu_cx_ClickCase 15Unload MeEnd SelectEnd SubPrivate Function FileGo()On Error GoTo 1Dim A, B As StringCommonDialog1.ShowSaveA = CommonDialog1.FileNameB = App.Path & "\" & "database\MoneyMIS.mdb"Set fs = CreateObject("Scripting.FileSystemObject")fs.CopyFile B, AMsgBox "数据库导出成功!", vbOKOnly + 64, "成功"Exit Function1:MsgBox "数据库导出失败!", vbOKOnly + 64, "失败"End FunctionPrivate Function FileIn()On Error GoTo 1Dim A, B, C, D As StringC = MsgBox("是否真导入数据库,导入新数据库后,将覆盖原来所有录?", vbYesNo + 48 + 256, "警告")If C = vbYes ThenCommonDialog1.ShowOpenA = CommonDialog1.FileNameB = App.Path & "\" & "database\MoneyMIS.mdb"'D = CurDir() & "\" & "MoneyMIS.mdb"Set Fs1 = CreateObject("Sfcripting.FileSystemObject")'Fs1.DeleteFile D, TrueFs1.CopyFile A, BMsgBox "数据库导入成功!", vbOKOnly + 64, "成功"ElseMsgBox "数据库导入失败!", vbOKOnly + 64, "失败"End IfExit Function1:MsgBox "数据库导入失败!", vbOKOnly + 64, "失败"End Function家庭成员信息模块Dim Mydb As New ADODB.RecordsetDim Mydb1 As New ADODB.RecordsetDim Count1 As New ADODB.RecordsetDim Str_text As StringPrivate Sub cmd_add_Click()On Error Resume NextDim A, BB = 1Set Count1 = ExeCutesql("select * from 成员", Str_tex t)Count1.MoveLastB = Count1.Fields(4) + 1A = MsgBox("是否添加前记录?", vbYesNo + 32, "修改记录")If A = vbYes ThenExeCutesql "insert into 成员values('" & Text1.Text & "','" & Text2.Text & "','" & Format(DTPicker1.Value, "yyyy-mm-dd") & "','" & Text3.Text & "'," & B & ") ", Str_textCall DbMydb.MoveLastMsgBox "数据已经保存!", vbOKOnly + 64, "成功"End IfEnd SubPrivate Sub cmd_close_Click()Unload MeEnd SubPrivate Sub cmd_del_Click()On Error Resume NextDim AA = MsgBox("是否删除当前记录", vbYesNo + 32 + 25 6, "删除记录")If A = vbYes ThenExeCutesql "DELETE from 成员where key=" & tx t_key.Text & "", Str_text'Mydb.Requery'If Mydb.EOF Then Mydb.MoveLast'Call DbSet Mydb = ExeCutesql("select * from 成员", Str_te xt)Set MSHFlexGrid1.DataSource = MydbEnd IfEnd SubPrivate Sub cmd_edit_Click()On Error Resume NextDim AA = MsgBox("是否修改前记录?", vbYesNo + 32, "修改记录")If A = vbYes ThenExeCutesql "Update 成员set 称呼='" & Text1.Text & "',姓名='" & Text2.Text _& "',生日='" & DTPicker1.Value & "',格言='" & Te xt3.Text & "'where key=" & txt_key.Text & "", Str_textMsgBox "数据已经修改成功!", vbOKOnly + 64, "成功"Call DbEnd IfEnd SubPrivate Sub Form_Load()Call DbDTPicker1.Value = DateEnd SubPrivate Function Db()Set Mydb = ExeCutesql("select * from 成员", Str_text)Set MSHFlexGrid1.DataSource = MydbEnd FunctionPrivate Sub MSHFlexGrid1_Click()On Error Resume NextText1.Text = MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 1)Text2.Text = MSHFlexGrid1.TextMatrix(MSHFlexGrid1.R ow, 2)DTPicker1.Value = MSHFlexGrid1.TextMatrix(MSHFlex Grid1.Row, 3)Text3.Text = MSHFlexGrid1.TextMatrix(MSHFlexGrid1.R ow, 4)txt_key.Text = MSHFlexGrid1.TextMatrix(MSHFlexGrid1. Row, 5)End Sub。

相关文档
最新文档