财务管理系统设计报告_第1页
财务管理系统设计报告_第2页
财务管理系统设计报告_第3页
财务管理系统设计报告_第4页
财务管理系统设计报告_第5页
已阅读5页,还剩72页未读 继续免费阅读

下载本文档

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

文档简介

目 录1. 前言-12. 需求分析 -13. 概要设计(特殊功能) -14. 详细设计 -95. 源代码及可执行程序 -146. 特殊问题解决方法 -746.1. 问题 1 -746.2. 问题 2 -747. 使用说明及测试结果 -748. 结论 -74参考书目 -7511.前言随着经济的发展,社会的进步,计算机越来越深入到我们日常的工作学习及生活中,成为我们日常生活中不可缺少的辅助工具。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。它已经深入到日常工作和生活的方方面面,比如文字处理、信息管理、辅助设计、图形图像处理、教育培训以及游戏娱乐等。各行各业的人们无须经过特别的训练就能够使用电脑完成许许多多复杂的工作。然而,虽然现在世界上已经充满了多如牛毛的各种软件,但它们依然不能满足用户的各种特殊需要,人们还不得不开发适合自己特殊需求的软件。以前开发 Windows 应用软件是专业人员的工作,需要掌握许多专业知识和经过特殊的培训才能胜任。现在不同了,即使你没有接受过严格的程序设计训练,使用 VB 编程软件也能制作出对人们有帮助的系统。2.需求分析通用财务管理系统是用计算机管理企事业单位财务运转的一种计算机应用技术的创新,在计算机还未普及之前财务管理都是由工作人员人工书写,调阅的方式来操作的.现在一般的企事业单位完全拥有实施计算机化财务管理的条件.所以财务管理系统的开发和使用是符合时代发展的需要,采用计算机作为工具的实用的计算机智能化程序来帮助前台管理员进行更有效的财务管理工作。通用财务管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。制作一个财务管理系统,这首先要求我们要对所使用的开发工具有一定的知识基础。其次,我们要根据市场需要来设计系统的板块,还要考虑整个系统的可行性。系统详细设计在系统架构的基础上对系统功能和结构进行了细化。根据系统架构,自上而下整个系统被划分成若干层,每一层又被划分成不同的功能模块。系统的业务层被划分成若干独立的功能模块,而系统的功能层又被细分,划分成了小的独立模块。详细描述本小组的财务管理系统的设计思路与过程,让用户更好了解系统以便做出更好的进一步开发。3.概要设计(特殊功能)3.1 系统总体结构财务管理系统的用例图2系统的主要流程图如下所示:开始登陆是否登陆系统主界面是否管理员管理工资管理固定资产管理流动资产管理财务管理系统系统主要流程图管理员登录成功后进入系统主页面流程图,管理员登录成功后,管理员进入系统主页面,对系统主要功能进行操作,登录失败后,退出系统。33.2 系统各个功能模块的设计财务管理系统主要有管理员管理、工资管理、固定资产管理、流动资产管理四大功能模块,系统的四大功能模块如图。管理员管理固定资产管理流动资产管理财务管理系统工资管理财务管理系统的基本功能模块 管理员管理由添加管理员,更改管理员密码,管理员注销,管理员注销,退出系统组成。结构图如下:添加管理员更改管理员密码管理员注销退出系统管理员管理工资管理由增加考勤记录、修改考勤记录、查询考勤记录、计算工资、增加工资记录、修改工资记录、查询工资记录、删除工资记录组成。结构图如下:4查询考勤记录查询工资记录工资管理增加考勤记录增加工资记录修改工资记录修改考勤记录删除工资记录计算工资固定资产管理由增加固定资产记录、修改固定资产记录、固定资产查询、固定资产记录删除组成。结构图如下:修改固定资产记录固定资产查询固定资产管理增加固定资产记录固定资产记录删除流动资产管理由增加报销记录、查询报销记录、导出报销记录组成结构图如下:增加报销记录查询报销记录导出报销记录成财务指标流动资产管理53.3 数据库设计3.3.1 创建表数据库 finance 包含管理员登录,报销管理,报销类别,固定资产管理,部门管理,月工资管理,职务管理,职工奖惩,职工详细信息,职工工作状态10 个表,下面分别介绍这些表的结构。(1) 管理员登录(TBL_ADMIN)管理员登录表用来保存用户信息编号 字段名称 数据结构 说明1 ADMIN_ID 文本 管理员登录名关键字2 ADMIN_PASSWORD文本 登录密码(2) 报销管理(TBL_CUR)报销管理表用来保存报销信息编号 字段名称 数据结构 说明1 CUR_ID 文本 报销单号关键字2 CUR_TYPE 数字 报销类别编号3 CUR_MONEY 数字 报销金额4 CUR_USER 文本 报销人编号5 CUR_DATE 文本 报销日期6 CUR_PART 数字 报销部门7 CUR_REMARK 文本 报销说明(3) 报表类别(TBL_CURTYPE)报表类别表用于保存报表资料编号 字段名称 数据结构 说明1 CURTYPE_ID 自动编号 报销类别编号关键字2 CURTYPE_NAME 文本 报销类别名称(4) 固定资产管理(TBL_FIXED)固定资产管理表用来储存相关固定资产编号 字段名称 数据结构 说明1 FIXED_ID 文本 固定资产编号关键字2 FIXED_NAME 文本 固定资产名称3 FIXED_NUM 数字 固定资产数目4 FIXED_MONEY 数字 固定资产单价5 FIXED_PART 数字 购买部门6 FIXED_USER 文本 经手人7 FIXED_DATE 文本 购买日期8 FIXED_PHONE 文本 联系电话69 FIXED_REMARK 文本 资产说明(5) 部门管理(TBL_PART)部门管理表储存部门管理信息编号 字段名称 数据结构 说明1 PART_ID 自动编号 部门编号关键字2 PART_NAME 文本 部门名称(6) 月工资管理(TBL_PAY)月工资管理表是用来储存月工资信息编号 字段名称 数据结构 说明1 PAY_USER 文本 月工资结算职工姓名关键字2 PAY_DATE 文本 月工资结算日期关键字3 PAY_MONEY 数字 月工资数目(7) 职务管理(TBL_ROLE)职务管理表是用来储存职务信息编号 字段名称 数据结构 说明1 ROLE_ID 自动编号 职务编号关键字2 ROLE_NAME 文本 职务中文名称3 ROLE_MONEY 数字 职务基本工资(8) 职工奖惩(TBL_TYPE)职工奖惩表是用来储存职工奖惩信息的编号 字段名称 数据结构 说明1 TYPE_ID 自动编号 工作状态 ID 关键字2 TYPE_NAME 文本 工作状态类型3 TYPE_MARK 是/否 加分还是扣分(9) 职工详细信息(TBL_USER)职工详细信息表用来储存职工信息编号 字段名称 数据结构 说明1 USER_ID 文本 职工 ID 关键字2 USER_NAME 文本 职工姓名3 USER_PART 数字 所在部门4 USER_ROLE 数字 职工职务7(10)职工工作状态(TBL_WORT)职工工作状态表是用来职工工作状态的信息编号 字段名称 数据结构 说明1 WORK_ID 文本 迟到【加班】人的ID2 WORK_DATE 文本 当天日期3 WORK_TIME 数字 迟到【加班】时间(分钟为单位)4 WORK_TYPE 数字 工作状态 ID(是迟到还是加班)3.3.2 设定表关系Access 作为关系型数据库管理系统,指定表之间的关系是很重要的,财务管理系统数据库的所有表与字段创建完成后,就需要设定表关系了,access 将来会凭借表关系来链接两个表或查询中的数据。表与表之间的关系如下:3.3.3 链接数据库首先我们应该在 windows 的 odbc 数据库源管理器中注册数据库。在系统中注册数据库完毕后,就可以在程序中链接数据库了,我们使用了VB 当中的 adoc 控件来连接数据库,同时我们还专门设计了一个模块处理数据库的连接具体代码如下:Option Explicit8Public DbFinance As New ADODB.Connection 设置 ADODB 连接对象的公共变量Public Function DbConnection() 打开数据库Dim e As ADODB.ErrorDbConnection = True ConnectDB 为真时表示打开数据库无误On Error GoTo errorhandle 出现任何错误将执行 errorhandle 进行错误处理DbFinance.Errors.ClearDbFinance.CommandTimeout = 30 执行 SQL 命令的缺省等待时间DbFinance.ConnectionTimeout = 30 连接数据库的缺省时间DbFinance.ConnectionString = “DSN=Finance“ 打开 DSN 名为 Finance 的 odbc 数据源On Error GoTo Unconnect 出现数据库连接错误时将进行处理DbFinance.Open 打开数据库Exit Functionerrorhandle:If DbFinance.Errors.Count ChkPass.Text Then 新密码和验证密码要相同MsgBox “新密码不一致!“, vbCriticalNewPass.SetFocusExit SubEnd IfIf User = “ Then 密码和用户 ID 输入框不能为空MsgBox “管理员 ID 不能为空!“, vbCriticalUser.SetFocusExit SubEnd IfIf OldPass.Text = “ ThenMsgBox “管理员密码不能为空!“, vbCriticalOldPass.SetFocusExit SubEnd IfIf DbHandle.DbConnection Thensql = “TBL_ADMIN“ 打开管理员表,查看是否要添加的管理员 ID 已经存在rs.CursorType = adOpenDynamicrs.LockType = adLockOptimisticrs.Filter = “ADMIN_ID=“ & User.Text & “rs.Open sql, DbFinanceIf DbHandle.resultcount(rs) OldPass.Text Then 不一致要求重新输入原是密码MsgBox “管理员密码错误!“, vbExclamationrs.CloseOldPass.SetFocusExit SubEnd Ifrs(“ADMIN_PASSWORD“) = NewPass.Text 一致就设置新的管理员密码rs.Updaters.CloseEnd IfMsgBox “管理员密码成功修改!“Unload MeElse 数据库打开失败退出MsgBox “数据库错误!“, vbExclamationDbHandle.DbCloseEndEnd IfEnd SubPrivate Sub Command2_Click()Me.Hide 返回主窗体End SubPrivate Sub Form_Load()Me.Left = (Screen.Width - Me.ScaleWidth) / 2 窗体居中显示Me.Top = (Screen.Height - Me.ScaleHeight) / 2End SubPrivate Sub Form_Unload(Cancel As Integer)On Error Resume Next 对话框关闭时候关闭数据库连接DbHandle.DbCloseEnd Sub5.2 工资管理界面设计工资管理是由考勤情况和工资记录两部分组成的。考勤情况添加考勤记录当用户点击增加考勤记录时进入界面如下:24用户可以添加新的考勤记录,具体实现代码如下:Option ExplicitPrivate Sub Command1_Click()Dim sql As StringDim rs As New ADODB.RecordsetIf TypeCombo.ListIndex = -1 Then 验证用户输入数据完整性和有效性MsgBox “考勤类别不能为空!“, vbCriticalTypeCombo.SetFocusExit SubEnd IfIf User.Text = “ ThenMsgBox “员工 ID 不能为空!“, vbCriticalUser.SetFocusExit SubEnd IfIf EvtTime.Text = “ ThenMsgBox “考勤时间长度不能为空!“, vbCriticalEvtTime.SetFocusExit SubEnd IfIf Not IsNumeric(EvtTime.Text) ThenMsgBox “考勤时间必须是数字!“, vbCriticalEvtTime.SetFocusExit SubEnd IfIf DbHandle.DbConnection Thensql = “TBL_USER“ 查询职工表中是否存在和输入职工的 ID 号相同的记录rs.CursorType = adOpenDynamicrs.LockType = adLockOptimistic25rs.Filter = “USER_ID=“ & User.Text & “rs.Open sql, DbFinanceIf DbHandle.resultcount(rs) 1 Then 不存在显示错误窗体,并且关闭数据库退出MsgBox “错误,不存在的考勤记录!“, vbExclamationUser.SetFocusrs.CloseSet rs = NothingDbHandle.DbCloseExit SubEnd IfChangeEvent2.TypeCombo.Clear 存在考勤记录,设置修改考勤记录对话框的窗体元素属性For i = 0 To TypeCombo.ListCount - 1 设置考勤类别下拉列表ChangeEvent2.TypeCombo.AddItem (TypeCombo.List(i)ChangeEvent2.TypeCombo.ItemData(ChangeEvent2.TypeCombo.NewIndex) = TypeCombo.ItemData(i)Next iChangeEvent2.TypeCombo.ListIndex = TypeCombo.ListIndex 设置默认值为记录中各个字段的原始值ChangeEvent2.User.Text = rs(“WORK_ID“)28ChangeEvent2.EvtTime.Text = rs(“WORK_TIME“)ChangeEvent2.DTPicker1.Value = DTPicker1.ValueChangeEvent2.Cancel = True 修改考勤记录对话框是否按确定退出ChangeEvent2.Show 1 显示模式修改考勤记录对话框If ChangeEvent2.Cancel Then 如果修改考勤记录对话框是按确定退出就修改当前考勤记录rs(“WORK_ID“) = ChangeEvent2.User.Textrs(“WORK_DATE“) = ChangeEvent2.DTPicker1.Valuers(“WORK_TIME“) = Val(ChangeEvent2.EvtTime.Text)rs(“WORK_TYPE“) = ChangeEvent2.TypeCombo.ItemData(ChangeEvent2.TypeCombo.ListIndex)rs.UpdateMsgBox “考勤记录成功修改!“End Ifrs.Close 关闭数据库结果集,返回主窗体Unload MeElse 数据库连接打开失败则退出MsgBox “数据库错误!“, vbExclamationDbHandle.DbCloseEndEnd IfEnd SubPrivate Sub Command2_Click()Me.Hide 返回主窗体End SubPrivate Sub Form_Load()Dim sql As StringDim rs As New ADODB.RecordsetMe.Left = (Screen.Width - Me.ScaleWidth) / 2 窗体居中显示Me.Top = (Screen.Height - Me.ScaleHe

温馨提示

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

评论

0/150

提交评论