管理信息系统课程设计0002_第1页
管理信息系统课程设计0002_第2页
管理信息系统课程设计0002_第3页
管理信息系统课程设计0002_第4页
管理信息系统课程设计0002_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

管理信息系统课程设计报告设计题目:家庭财务小助手院系:经济管理学院专业班级:***************学生姓名:***、***、***2011年1月14日

指导教师评语指导教师:年月日成绩评定学号姓名任务分工成绩TOC\o"1-5"\h\z\o"CurrentDocument"系统规划1\o"CurrentDocument"1.1问题的提出1\o"CurrentDocument"1.2研究路线1\o"CurrentDocument"1.3战略规划说明书3\o"CurrentDocument"系统分析5\o"CurrentDocument"2.1可行性分析报告5\o"CurrentDocument"2.2业务流程分析6\o"CurrentDocument"2.3数据流程分析8\o"CurrentDocument"2.4数据字典8\o"CurrentDocument"2.5主要数据处理的描述11\o"CurrentDocument"系统设计12\o"CurrentDocument"3.1代码设计12\o"CurrentDocument"3.2功能结构图设计123.3信息系统流程图设计133.4输出设计133.5输入设计15\o"CurrentDocument"3.6数据存储设计20\o"CurrentDocument"3.7处理流程图设计22\o"CurrentDocument"系统实施25\o"CurrentDocument"4.1用户登录功能的实现25\o"CurrentDocument"4.2多窗体切换功能的实现28\o"CurrentDocument"4.3“收支项目管理”功能的实现30\o"CurrentDocument"4.4“日常收入”的添加、修改、删除功能的实现32\o"CurrentDocument"“实用查询”功能的实现34\o"CurrentDocument"“每月明细”功能的实现35\o"CurrentDocument"“收支统计”功能的实现36\o"CurrentDocument"4.8“工具箱”功能的实现37\o"CurrentDocument"4.9系统测试38\o"CurrentDocument"总结42\o"CurrentDocument"参考文献46系统规划1.1问题的提出多年以来人们都使用传统的人工方式记录和管理家庭或自己财务情况。这种管理和记录方式不仅不便于长期保存,也存在着不可避免的缺点,如效率太低、保密性太差。时间一长,伴随着居民收入水平的提高和居民各种消费和收入的多样性,家庭理财所需要管理的信息就会越来越多,就会产生大量的文件和数据,这样就会对查阅、更新、保存等方面都产生不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已逐渐被人们认识并掌握。使用计算机对家庭理财信息进行管理具有传统的手工管理所没法比拟的优点。例如:统计方便、查找容易、可靠性高、保密性好、更新方便等。这些优点能够极大地提高家庭理财信息管理的效率,大大降低居民在信息管理精力上的投入。家庭理财管理系统,它利用计算机应用技术,使家庭理财逐步信息化,从而形成由家庭成员与计算机共同构成服务于家庭的人机信息财务管理系统。随着计算机发展,家庭理财信息系统已经成为很多家庭财务管理的一个重要途径。计算机的最大优点在于利用它能够高效准确地进行财务信息管理。使用计算机进行信息财务管理,不仅提高了工作效率,而且大大的提高了其安全性。1.2研究路线

1.3战略规划说明书1、系统名称:家庭财务小助于2、系统目标:通过该系统,一个家庭可以进行家庭成员基本信息的增加、修改、删除;完成日常生活中收入支出、借入借出、定期银行账户、活期银行账户的管理;完成每月的收支统计、每月的明细;并提供基本的日常收支的查询功能。通过上述功能来实现管理家庭的日常财务活动,提供查询、分析功能,更方便用户管理家庭的财务。3、系统结构:本次开发的系统共分为六个子系统,分别是系统设置、日常管理、实用查询、统计分析、工具箱、帮助;系统设置主要实现的功能是收支项目的添加、删除,家庭成员的添加、成员信息的编辑,数据备份。日常管理主要实现的功能是日常收支、借入借出款、定期银行账户、活期银行账户信息的添加、修改、删除。实用查询主要实现日常收支的查询。统计分析主要实现每月明细和收支统计。工具箱主要提供一些有益于用户使用该系统的小工具,比如:计算器、记事本。帮助主要介绍一下系统的功能、如何使用等等。4、新系统的开发方法采用的是原型法,其原因如下:(1)原型法采用的是“自下而上”的开发策略,更容易被普遍的家庭用户所接受,也适合像“家庭财务小助手”这样的小系统;(2)在整个系统的开发中,不是一劳永逸的,需要根据平常的调查不断地改进系统,以使得所开发出的系统让用户更满意;(3)用此方法开发出的“家庭财务小助手”更能符合普遍家庭用户的要求,实现日常家庭财务管理的基本功能。5、系统的总体实施进度

系统分析2.1可行性分析报告对于家庭财务管理信息系统的设计开发是否可行,我们从管理、技术和经济三个方面进行可行性分析。首先在管理方面,鉴于近年来随着国内外社会经济和科学技术的不断改革和发展,各种各样的开销与收入也越来越多,很多人对于日常帐目的管理感到越来越力不从心,收支管理已刻不容缓,在大多数家庭里,由于计算机知识的缺乏,人们还采用手写记帐的方法,这种管理方法存在跟多缺陷,如:效率低、保密性差,另外时间一长,将产生大量的冗余文件和数据,这对于查找、更新和维护工作都带来了很大的困难。家庭理财系统就是通过计算机对人们日常的收支进行管理,具有相关的收支情况查询和录入,以及有关数据的打印输出,有计算机统计可使人们从繁重的劳动中解脱出来,通过一些简单的输入操作,及时、准确地获得需要的信息。这反映了大部分家庭对于该软件需求的迫切性。其次在技术方面,近年来,计算机技术飞速发展几乎超出了人们的想象,硬件的更新换代速度更是以级数进行。计算机在处理对象、处理方法上都发生了很大的变化。作为计算机科学的重要分支一一数据库技术,也被越来越多的应用领域采用来存储和处理他们的信息资源。作为一款小巧实用的家庭财务管理软件,对于硬件的要求要远远低于当今市场的主流配置,在开发的方法方面,可以借助面向对象的开发方法,利用vb编程语言与系统自带的数据库软件就可以满足。几乎所有拥有电脑的家庭,在不更换任何设备的前提下,就可以自己开发(如果自己具有一定的开发小软件的能力)或者下载安装实用本软件。因此在技术方面不存在任何问题。最后在经济方面,对于这样一款面向广大家庭的理财软件,低配置的要求,注定可以满足大家经济方面的要求。本软件的开发成本很低,投入使用后,可以大大方便用户的日常家庭财务管理工作,给用户带来新的生活体验。综上所述。得出可行性分析结论为,可以立即开发。2.2业务流程分析组织结构图:管理功能图:家庭理财管理信息系统包括基本的信息管理、理财管理和数据统计等主要攻能,具体功能应该有:基本信息的添加、修改、删除和查询。基本信息包括银行信息、收入分类和支出分类等内容,此功能为理财管理和数据统计模块提供依据。理财信息的添加、修改、删除和查询。理财信息包括日常收支、银行交易和银行账户等内容。数据统计模块包括收支统计,银行交易统计和家庭资产统计等功能。由此作出该系统的管理功能图如下:银行信收入类、支出类常收银行往银行账常收m行交庭资家庭成Cm户信修改自息型型支来户支易产员息身管管管管管管统统统管管密理Jg理LUi理jHJ理J1理JLU管理业务流程图:2.3数据流程分析该家庭管理信息系统的数据流程图:P1.2统计处理收入支出差额单2.4数据字典P1.2统计处理收入支出差额单对数据流程图中的数据项、数据结构、数据流、处理逻辑、数据存储和外部实体六个方面进行具体定义。数据项的定义数据项编号:I02-01数据项名称:收入编号别名:收入编码简述:某位家庭成员的收入类型及宽度:整型取值范围:0〜32767数据结构定义数据结构编号:DS03-01数据结构名称:存款单简述:某个家庭成员去某家银行存款的信息数据结构组成:DS03-02+DS03-03数据流的定义数据流编号:D03-02数据流名称:工资单简述:某位家庭成员的工资单数据流来源:工作单位数据流去向:家庭成员数据流组成:工作单位名称+工资数额+家庭成员名称+日期数据流量:2000元/月高峰流量:2700元/月处理逻辑的定义处理逻辑编号:P02-03数据逻辑名称:计算每月家庭收入支出结余简述:计算家庭所有成员的收入与支出的代数和输入的数据流:每位家庭成员本月的收入和支出。处理:计算所有成员的收入之和,所有成员的支出之和,然后用收入减去支出。输出的数据流:得出收入支出之差,然后计入数据存储账目文件处理频率:每个月一次数据存储的定义数据存储编号:F02-02数据存储名称:银行存款帐简述:存放在某家银行的现金数目数据存储组成:银行名称+银行编号+存款数额关键字:银行编号相关联的处理:P02外部实体的定义外部实体编号:S03-01外部实体名称:用户简述:某位家庭成员的信息输入的数据流:D03-02输出的数据流:D03-01

2.5主要数据处理的描述处理日常收支管理的判断表:决策规则号123条件总收入大于总支出NYY银行利率上升YN应采取的行动增加银行存款寸减少银行存款寸寸系统设计3.1代码设计本信息系统采用顺序码设计。举例,存款处理中,状态【已取】设计为1,状态【未取】设计为0。3.2功能结构图设计3.3信息系统流程图设计3.4输出设计实用查询界面:日常收入日常支出口按日期从■到口按方式口按金额1元口按项目统计分析——每月明细界面:统计分析一一收支统计界面:

收入情况日期支出情况方式金额项目来源人员共收入****元,共支出****元关闭3.5输入设计系统设置——-项目管理界面:收入项目支出项目顼目1添加项目:添加删除保存取消系统设置——-添加家庭成员界面:

日常收入界面(见下一页):

日常支出界面:活期存款界面:

活期账户的存取款界面:账户信息取款记录开户日期:开户人:开户金额:元银行账号:银行名称:共有:0个账户银行地址:下一个上一个新开账户修改信息开户日期:银行名称:银行地址:银行账号:删除账户开户日期:银行名称:银行地址:银行账号:确定开户人:元开户金额:开户金额:定期储蓄界面:编辑栏存款日期银行名称银行地址银行账号开户日期银行名称银行地址银行账号款额开户人得款人已取添加修改删除关闭借入借出款界面(见下一页):3.6数据存储设计数据库设计数据库中包含11个表,即用户信息表,家庭成员信息表,定期存款信息表,活期存取信息表,活期帐号信息表,借出信息表,借入信息表,收入信息表,支出信息表,收入项目信息表,支出项目信息表。下面分别介绍这些表的结构1、用户信息表(Userl)用来保存系统用户信息,结构如表所示编号字段名数据类型说明1User文本用户名,主键2Pass文本密码2、家庭成员信息表(成员)用来保存家庭成员信息,结构如表所示编号字段名称数据结构说明1Key自动编号记录编号,主键2姓名文本,长度50姓名3称呼文本,长度10性别4生日文本,长度50生日5手机文本,长度50手机3、定期存款信息表(定期存款):编号字段名称数据结构说明1Key自动编号记录编号,主键2银行名称文本,长度503银行地址文本,长度504银行账号数字/长整型5款额货币定期存款数额6开户人文本,长度507得款人文本,长度508已取文本判断是否已经取款4、活期存取信息表(活期存取):

编号字段名称数据结构说明1Key自动编号记录编号,主键2帐号文本,长度50银行账号3存取文本,长度50是否存取4数目货币存取数额5日期文本存取日期6姓名文本,长度50存取人姓名7余额货币账户内余额5、活期帐户信息表(活期帐户)编号字段名称数据结构说明1Key自动编号记录编号,主键2银行账号文本,长度50银行账号3银行名称文本,长度504银行地址文本5开户日期日期/时间存取日期6开户人文本,长度507开户金额货币6、借出信息表(借出)编号字段名称数据结构说明1得款人文本2金额货币3出借人文本4日期文本5借款原因文本6已还文本7、借入信息表(借入)编号字段名称数据结构说明1得款人文本2金额货币3出借人文本4日期文本5出借原因文本6已还文本8、收入信息表(收入)

编号字段名称数据结构说明1Key自动编号记录编号,主键2日期文本3方式文本4金额文本5项目文本6来源文本7人员文本8备注备注9、支出信息表(支出)编号字段名称数据结构说明1Key自动编号记录编号,主键2日期文本3方式文本4金额文本5项目文本6去向文本7人员文本8备注备注10、支出项目信息表(支出项目)编号字段名称数据结构说明1项目文本11、收入信息表(收入项目)编号字段名称数据结构说明1项目文本3.7处理流程图设计系统设置:日常管理:实用查询与统计分析:系统实施系统各主要功能的界面实现及相应的主要源代码,系统的测试方法,测试数据的选取等。本系统的开发采用VB6.0(程序设计工具)和Access2003(数据库设计工具),一般采用ADO来访问数据库。若用ADO进行连接、操作数据库。在VB6.0中使用ADO对象,首先要将ADO对象加入到工程中的“引用”对话框,加入的方法如下:(1)在VB6.0窗口中单击“工程”菜单,选择“引用”子菜单;I..1(2)在弹出的“引用对话框中单击“MicrosoftActiveXDataObject2.1”选项,如下图所示:I..1引用-家庭收支苣理至统,vbp可用的引用(A):〈VisualBasicForApplicaAiurLE5ViEu:alBasicriiritimeubjectsand.prucedure~yVisu:dlEasicubjects:aridprucedureeMicroEuftActiveXDataObisets2.1LibrarOLEAntomatMicroEuftActiveXDataObisets2.1Librar/MicruEoftDataBindingCollectionVB6.0(.:在上述完成后,就可以在工程中引用ADO了。4.1用户登录功能的实现1、用户登录的界面通过输入用户名和密码,然后访问数据库检验用户名和密码是否有误,若没输入内容或输入的内容不符合格式规定,给予提示。若无误则登录到主程序界面,否则给予提示信息。点击退出后,会自动退出系统。若三次输入的密码都不正确,也会自动退出系统。点击小问号,会弹出初次使用的小提示。可用下图表示:1、用户登录的界面DimMydbAsNewADODB.RecordsetDimMydblAsNewADODB.RecordsetDimStr_textAsStringPrivateSubCommand1_Click()'登录按钮OnErrorResumeNextStaticIAsInteger记数器StaticLAsInteger记数器DimStr_nameAsStringDimStr_passwordAsStringDimStr_usernameAsStringDimStr_userpasswordAsStringDimRemaindayAsLongStr_name=txt_name.TextStr_password=txt_password.TextSetMydb=ExeCutesql("selectuserfromuserlwhereuser='"&Str_name&"'",Str_text)IfMydb.EOFThenMsgBox"你输入的用户名不存在,请重新输入!",vbOKOnly+32,"提示"L=L+1txt_name.SetFocusIfL=5ThenMsgBox”你已经多次输入错误的用户名,请查证后重新登陆!”,vbOKOnly+48,”提示"EndEndIfExitSubElseSetMydbl=ExeCutesql("selectuser,passfromuserlwhereuser='"&Str_name&"'",Str_text)Str_username=Trim(Mydb1.Fields(0))Str_userpassword=Trim(Mydb1.Fields(1))IfTrim(Str_password)=Str_userpasswordThenfrm_main.ShowMydb.CloseMydb1.CloseSetMydb=NothingSetMydb1=NothingUnloadMeElseMsgBox"你输入的密码错误,请重新输入!",vbOKOnly+32,"提示"I=I+1txt_password.SetFocusIfI=3ThenMsgBox”你输入的密码三次都不正确,本系统将关闭!”,vbOKOnly+48,"提示”EndEndIfExitSubEndIfEndIfEndSubPrivateSubCommand2_Click(),退出按钮UnloadMeEndSub4.2多窗体切换功能的实现下面一个图是系统的主界面:1、通过点击菜单或工具栏的一些按钮来实现不同功能子系统的切换,主要用到两种窗体两种方法.Show1、通过点击菜单或工具栏的一些按钮来实现不同功能子系统的切换,主要用到两种窗体两种方法.Show和首先是点击菜单后菜单的切换UnloadMe,其部分的程序代码如下:PrivateSubmnu_rcgl_jr_Click()frm_borrowin.Show0,frm_mainEndSubPrivateSubmnu_rcgl_sr_Click()frm_intake.Show0,frm_mainEndSubPrivateSubmnu_rcgl_zc_Click()frm_expend.Show0,frm_main'切换到“借入款”功能窗体'切换到“日常收入”功能窗体'切换到“日常支出”功能窗体EndSub2、通过点击菜单栏下面的工具栏来调用不同的子系统,在制作工具栏是需要添加两个控件:ImageList和Toolbar控件,,这两个控件属于ActiveX控件,需要添加,在“工程”中打开“部件”对话框,选中“MicrosoftWindowsCommonControls6.0”项。单击“确定”按钮即被添加到VB6.0左侧的工具栏中。点击Toolbar1后添加代码:PrivateSubToolbar1_ButtonClick(ByVilButtonAsMSComctlLib.Button)SelectCaseButton.IndexCase1'点击后弹出“收支项目”窗体Callmnu_xt_xu_ClickCase2'点击后弹出“添加家庭成员”窗体Callmnu_cx_ClickCase8,点击后弹出“退出”对话框,退出系统MsgBox"非常感谢您使用本系统!",,"家庭收支管理系统"UnloadMeEndSelectEndSub3、主系统界面的状态栏的添加,在这里需要StatusBar控件,该控件也是“MicrosoftWindowsCommonControls6.0”组控件中的一个,而且还要在窗体中放置一个Timer控件,来获取系统时间:PrivateSubForm_Load(),状态栏显示当前操作用户frm_main.StatusBar1.Panels(1).Text="当前操作用户:"+CnameEndSubPrivateSubTimer1_Timer(),状态栏显示当前系统时间frm_main.StatusBar1.Panels(2).Text=Format(Now,"yyyy年mm月dd日hh:mm:ss")EndSub4.3“收支项目管理”功能的实现在该功能子系统中需要添加一个SSTab控件和两个MSHFlexGrid、在“MicrosoftWindowsCommonControls6.0”组控件中。截图如下:点击“添加”,“添加项目”中输入要添加的收支项目,然后点击保存就会保存数据库和上面的表中,在表中选中一个项目,然后点击“删除”就会删除该收支项目。部分程序代码如下:DimMydblAsADODB.RecordsetDimMydb2AsADODB.RecordsetDimMydb3AsADODB.RecordsetDimMydb4AsADODB.RecordsetDimStr_textAsStringPrivateSubcmd_save_Click()'“保存”按钮,实现保存添加的项目OnErrorResumeNextDimAAsBooleanIfSSTab1.Tab=0ThenA=MsgBox("是否添加前记录?",vbYesNo+32,"添加记录")IfA=TrueThenExeCutesql"insertinto收入项目values("'&Text1.Text&"')",Str_textMydb1.MoveLastCallDb1MsgBox”收入项目添加成功!”,vbOKOnly+64,""Text1.Text=""EndIfElseA=MsgBox("是否添加前记录?”,vbYesNo+32,”添加记录")IfA=TrueThenExeCutesql"insertinto支出项目values^"&Text1.Text&"')",Str_textMydb2.MoveLast

CallDb2MsgBox"支出项目添加成功!",vbOKOnly+64,""Textl.Text=""EndIfEndIfEndSub4.4“日常收入”的添加、修改、删除功能的实现首先在编辑框内添加所需要的信息,然后点击“添加”按钮,会将该记录天机到后台数据库,并且显示在编辑框上面的MSHFlexGrid控件中;在MSHFlexGrid中选中一天记录,就会在下面的编辑框内显示该条记录,用户可通过修改记录,然后点击“修改”按钮,就会将修改的记录保存到数据库和上面MSHFlexGrid控件中,程序截图如下ft日常收入人员:|V]备■注:日常收入部分程序代码如下:添加修改删除关闭DimMydbAsNewADODB.Recordset添加修改删除关闭DimStr_textAsString

PrivateSubcmd_edit_Click(),"修改”按钮OnErrorResumeNextDimAA=MsgBox("是否修改当前记录?",vbYesNo+32,"添加记录")IfA=vbYesThenExeCutesql"Update收入Set日期='"&Format(DTPicker1.Value,"yyyy-mm-dd")&"',方式="'&Combo1.Text&"',金额="&txt_money.Text&",来源='"&txt_intake.Text&"',人员='"&Combo3.Text&"',备注='"&txt_mome.Text&"'Wherekey="&txt_note.Text&"",Str_textCallDbMsgBox”数据修改成功!”,vbOKOnly+64,”成功"EndIfEndSubPublicFunctionDb()„“Db”函数,MSHFlexGridl显示Mydb的内容SetMydb=ExeCutesql("select*from收入orderbykey",Str_text)SetMSHFlexGridl.DataSource=MydbEndFunctionPrivateSubMSHFlexGrid1_Click()'将选中的记录显示到编辑框内OnErrorResumeNextDTPickerl.Value=MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row,1)Combol.Text=MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row,2)txt_moneyText=MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row,3)Combo2.Text=MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row,4)

txt_intake.Text=MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row,5)Combo3.Text=MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row,6)txt_mome.Text=MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row,7)txt_note.Text=MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row,8)EndSub4.5“实用查询”功能的实现该部分主要实现日常收支的查询,查询可分四种方式的查询:按时间查询,按方式查询,按金额查询,按项目查询,当用户查询数据时,只需在该项前面的的复选框内打上勾号即可,然后点击“查询”按钮,就会在|日常支出]卜面的|日常支出]曰常收入ZII元ZII元I2环按方式厂按金额日期方式金额项目来源人员备注m“ff常0收入〃中按日期查询的程序,代码如下:全家2011-01-05现金1000工资&司11厂按I页目DimMydbAsNewADODB.RecordsetPrivateSubChk_date1_Click()‘激活按日期进行查询IfChk_date1.Value=1Then4|Chk_mode1.Value=0二Chk_money1.Value=0杏询关闭

Chk_project1.Value=0EndIfEndSubPrivateSubCommand1_Click()IfChk_date.Value=1ThenCallCriqiEndIfEndSubPrivateFunctionCriqi()'按日期查询的函数Riqi=Format(CDate(DTPicker1.Value),"yyyy-mm-dd")Riqi1=Format(CDate(DTPicker2.Value),"yyyy-mm-dd")SetMydb=ExeCutesql("select*from收入where日期between#"&Riqi&"#"&"and"&"#"&Riqi1&"#",Str_text)SetMSHFlexGrid1.DataSource=MydbEndFunction4.6“每月明细”功能的实现通过该功能可以实现每月收支情况的统计,包括总支出金额、总收入金额和两者的差额,还可查看其他月份的收支情况。部分截图如下:'本月收入情只丫本月支出情况〕[本月收入:1000日期方式金额项目来源人员奇注^011-01-05现金1LILILI工资袤司11

“本月收支情况”的部分程序代码如下:DimMydbAsNewADODB.RecordsetDimMydblAsNewADODB.RecordsetPrivateSubForm_Activate()OnErrorResumeNextDimA,B,CAsIntegerDimDAsStringDimYear1,Month1,Riqi,Riqi1,Riqi3,Riqi4SetMydb=ExeCutesql("select*from收入where日期between'"&Cdate1&"'and'"&Cdate2&"'","")SetMSHFlexGrid1.DataSource=Mydb‘显示本月的收入情况SetMydb1=ExeCutesql("select*from支出where日期between'"&Cdate1&"'and'"&Cdate2&"'”,"")SetMSHFlexGrid2.DataSource=Mydb1'显示本月的支出情况EndSub4.7“收支统计''功能的实现该功能主用是统计所有的收入和支出,并给出总金额。截图如下:该功能主用是统计所有的收入和支出,并给出总金额。截图如下:DimMydbAsNewADODB.RecordsetDimMydblAsNewADODB.RecordsetDimMoneyAsNewADODB.RecordsetDimMoney1AsNewADODB.RecordsetPrivateSubForm_Load()OnErrorResumeNextDimA,BAsSingleSetMydb=ExeCutesql("select*from收入","")SetMSHFlexGridl.DataSource=Mydb'显示所有的收入条目SetMoney=ExeCutesql("selectsum(金额)from收入","")A=MoneyFields(0)Label1.Caption="共收入"&A&"元",统计总金额EndSub4.8“工具箱''功能的实现该部分的实现主要利用一个Shell函数,通过Shell函数来调用计算器和记事本:其程序代码如下:PrivateSubjsb_Click(),调用记事本Shell"notepad",vbNormalFocusEndSubPrivateSubjsq_Click(),调用计算器Shell"calc",vbNormalFocusEndSub4.9系统测试1、程序调试(以“添加家庭成员”子功能为例)(1)用正常的数据测试分别在编辑框内添加内容分别为“hehe”,“呵呵”,“1988/08/08”,13553,然后点击“添加”按钮,提示已成功添加。(2)用错误数据进行测试日常生活中,手机号一般全为数字,若输入字母或其他不合法的字符后,程序就应该报错。依次添加“heihei”,“happy”,“1988/08/08”,rr,点击“添加”,程序不会报错,这说明源代码修要修改。解决措施:在程序中添加如下代码,来避免此情况发生。IfIsNumeric(Text3.Text)=FalseThenMsgBox"手机号应为数字。若没有手机,请填写0!",48,"提示"Text3.SetFocusExitSubEndIf在运行后,如在输入上述数据,就会报错“手机号应为数字”:[手机号应为数字.肴没有手机r请埴写0!«确.正(3)再添加成员信息时,所添加的信息必须完全,以保证一条记录的完整性和价值性。在编辑栏内不添加任何内容,程序因给予信息不完全的提示。但点击“添加”按钮后不报错,需要对程序进行改进。添加如下代码:IfTextl.Text=""OrText2.Text=""OrText3.Text=""ThenMsgBox"您填写的信息上不完全,请完善!",48,"提示"Textl.SetFocusExitSubEndIf由此保证所输入信息的完整性。若没填写内容就会报错:测试操作错误时是否报错。在信息编辑框内填满内容,点击“添加”后,后将信息添加到数据库,但若是再点击“添加”后,程序没报错。解决措施:在程序内添加代码,如下DimCount2AsNewADODB.RecordsetSetCount2=ExeCutesql("select*from成员where姓名='"&Text2.Text&"'",Str_text)IfCount2.RecordCount>0ThenMsgBox"对不起,该成员已存在!",48,"提示”ExitSubEndIf经过此语句的处理就会避免重复记录的添加,增强系统的容错性。2、功能调试按F5运行程序,进入登录界面,输入正确的用户名和密码,进入到系统的主界面。在分调中,首要进行调试的系统的主界面。依次点击菜单栏中的每一项,检查系统是否能按要求弹出相应的子系统界面。在点击“统计分析”菜单下的“收支统计”时,程序没用反应。解决措施:找到主窗体frm_main,右键点击“查看代码”,发现该菜单没有写相应的程序,主窗体中添加如下代码:PrivateSubmnu_bg_tj_Click()frm_sztj.Show0,frm_main'参数,让frm_main为主窗体打开多个子窗体EndSub再运行程序即可弹出该子系统。在逐一测试每个子系统是,发现“实用查询”模块下“按日期查询”不能按规定好的日期显示所查询到的记录,在“MSHFlexGridl”没有可显示内容:(截图)解决措施:查看代码,并参考其他程序代码,发现按日期查询的代码有问题。原代码:Riqi=Format(CDate(DTPicker1.Value),"yyyy-mm-dd")Riqil=Format(CDate(DTPicker2.Value),"yyyy-mm-dd")SetMydb=ExeCutesql("select*from收入where日期between„Riqi5and„Riqi1',Str_text)(*)SetMSHFlexGridl.DataSource=Mydb*标记的语句格式不正确,正确代码如下:Riqi=Format(CDate(DTPicker1.Value),"yyyy-mm-dd")Riqil=Format(CDate(DTPicker2.Value),"yyyy-mm-dd")SetMydb=ExeCutesql("select*from收入where日期between#"&Riqi&"#"&"and"&"#"&Riqi1&"#",Str_text)SetMSHFlexGrid1.DataSource=Mydb5.总结在家庭财务小助手(又称家庭财务管理系统)规划、分析、设计、实施的过程中,我负责的主要是程序设计、运行、调试等方面的内容。通过本次的系统的开发,从中学到了很多新知识。对VB6.0和Access2003的理解和应用更进了一步。在程序设计过程中,由于吸取了上次的课程设计中失败的经验,本次在程序设计中,特别注重了程序的容错性,一般不会再出现上次那种输入不合法的内容后,整个系统就会崩溃,在一定程度上增强系统的可靠性。另一方面,增强了系统的易用性,使软件的用户界面人性化,更方便用户的使用。整个系统的设计主要采用的开发工具主要是VB6.0和Access2003,用ADO技术来访问数据库和操作数据库。不得不说,彻底的掌握这种技术比较难,有时一天都开发不出一个项目,但是随着技术的逐渐掌握,后面的开发也水到渠成。通过本次系统的程序设计,真的学到了很多东西:一、在用VB6.0开发系统过程中,学会了使用模块来进行软件的开发,模块化开发用很多好处,简化了代码,提高了系统的运行效率。二、其实在编写程序的代码时,真正处理符合要求的数据的代码是比较少的,不少部分的程序代码主要用来容错性检验和各种可能出现的错误、异常的处理,提高系统的容错性和易用性,不轻易让系统崩溃,三、学会了在程序设计中使用函数来简化代码,通过各种函数来完成系统中一些重复的工作,提高系统的运行效率。四、学会用自己周围的资源来解决自己在编程过程中遇到的问题。在编程过程,自己一个人对着计算机编程,运行、调试中错误是不可避免的,有的错误、异常通过查书、上网查资料一般都可以解决,但也有那种一整天都找不出的错在哪的错误,就学着使用其他技术来实现系统所要求的功能。这个过程有点苦,但通过自己的努力解决后,真的很高兴,也有一种小小的成就感。五、增强了我的把握细节的能力。程序设计对细节有要求,如果有一点不注意,程序就会报错,其原因有可能是一个符号、一条语句、一个空格。只有在程序设计过程中,把握好每一个细节,才能使程序更好的运行,减少错误的发生。六、增强了团队协作能力,在开发中,遇到了很多问题,技术上、系统的整体实施中,组内成员给了不少帮助,通过团队的努力,才使得“家庭财务小助手”能比较顺利的开发出来。***为期十周的管理信息系统课就这样结束了,说心里话,对于课堂上的内容,确实显得枯燥了些,一堂课听下来,可能当时有点印象,可是很快新的知识就淹没了旧的知识,唯有考试前的那一周,我觉得在这门课上,才有了一个整体清晰的把握,背诵有的时候真的可以加深对理论知识的理解。课程设计工作是对我们所学理论知识应用情况的一个检验,理论应用于实践似乎总会遇到各种各样让人很头疼的问题

温馨提示

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

评论

0/150

提交评论