当前位置:文档之家› 财务凭证管理系统 综合实践例子

财务凭证管理系统 综合实践例子

财务凭证管理系统综合实践例子数据库课程设计报告财务凭证管理系统班级:软件083姓名:史晓蒙学号:2008023078指导教师:吴迪完成日期:2010年11月18日数据库课程设计评分表分90~100为优,80~89为良,70~79为中,60~69为及格,60分以下为不及格。

目录第1章系统简介 (1)1.1课题背景 (1)1.2系统开发的意义 (1)1.3系统开发及运行环境 (1)第2章需求分析 (3)2.1财务凭证管理系统的可行性分析 (3)2.11技术水平分析 (3)2.12经济效益分析 (4)2.13市场分析 (4)2.2财务凭证管理系统的需求分析 (4)第3章总体设计 (6)3.1项目规划 (6)3.2系统业务流程分析 (6)3.3系统功能结构 (7)第4章详细设计 (8)4.1数据库设计 (8)4.11数据表概要说明 (8)4.12部分数据表E-R图 (9)4.13.数据表的结构 (10)4.2系统主要功能模块设计与实现 (13)4.21系统登录模块的设计与实现 (13)4.22主窗体的设计与实现 (14)4.23凭证信息录入窗体的设计与实现 (18)4.24管理员信息窗体的设计与实现 (21)第5章测试与总结 (23)5.1程序调试与错误处理 (23)5.11如何实现总账查询 (23)5.12科目编号的生成错误 (24)5.2总结 (25)第1章系统简介1.1课题背景凭证是记录账簿的依据,它的完整与否将直接影响到财务的核算结果。

早期的财务凭证是由人工管理的,不仅容易出错,而且不易保存。

随着计算机的不断普及和软件技术的不断发展,加上企业财务管理的迫切需要,财务凭证管理系统应运而生。

随着我国市场经济的快速发展,财务凭证管理系统在企业的日常财务管理中发挥着越来越重要的作用。

这个财务凭证管理系统,不仅实现了基本的凭证管理和会计科目管理等功能,而且可以根据需要按凭证编号和会计科目对查询结果进行打印。

1.2系统开发的意义本系统属于小型的数据库系统,可以对中小企业财务凭证进行有效的管理。

通过本系统可以达到以下目标:灵活的录入数据,使信息传递更快捷。

系统采用人机交互方式,界面美观友好,信息查询灵活、方便,数据存储安全可靠。

实现后台监控功能。

实现各种查询。

实现企业财务的信息化管理。

对用户输入的数据,进行严格的数据检验,尽可能避免人为错误。

系统最大限度地实现了易安装性、易维护性和易操作性。

从而更方便财会人员对账目进行统计、录入、审核,提高了操作效率和准确性,为企业的日常财务管理提供了便利。

1.3系统开发及运行环境系统开发平台:Microsoft Visual Studio 2008系统开发语言:C#数据库管理系统软件:SQL Server 2005运行平台:Windows XP(SP2)/Windows 2000(SP4)/Windows Server 2003(SP1)运行环境: Framework SDK v2.0分辨率:最佳效果1024*768像素第2章需求分析2.1财务凭证管理系统的可行性分析2.1.1技术水平分析本软件采用Microsoft Visual Studio 2005为前台开发工具,SQL Server 2005 数据库作为后台数据库支持。

本软件专为中小型企业设计,在我国中小型企业信息化水平目前还处在比较初级阶段,随着我国市场条件下竞争压力的不断加剧、企业组织观念的变革以及业务流程标准化的不断完善,中小型企业信息化建设的热情近几年来有了显著的提高。

本软件可在Windows 2000/XP 上运行,不用专业人士去配制服务器可以直接安装使用,具有很好的可移植性,有良好的中文界面,操作简便,适合企业财会人员使用。

2.1.2经济效益分析作为企业的决策管理层,希望能对企业的整个流程状态、企业状况发展了如指掌,并为决策管理提供科学依据;工作人员期望能够避免繁琐的手工操作,甩掉陈旧的手工计帐方式,达到事半功倍的效果。

使用企业财务凭证管理系统可大大提高企业现代化管理水平,实现减员增效。

这样,一个可以规范化、自动化的财务系统就显得非常的必要。

2.1.3市场分析企业必须加强自身的信息基础设施建设,通过企业基础数据的信息化、基本业务流程和事务处理的信息化、企业内部控制及实施控制过程的信息化、人的行为规范管理等企业基础管理的信息化工程建设,确保企业的规模不断扩大、业务迅速提升,促进企业的可持续发展。

2.2财务凭证管理系统的需求分析通过实际了解,要求本系统具有以下功能:由于操作人员的计算机知识普遍偏低,一次要求系统具有良好的人机界面。

方便的添加和修改数据。

方便的数据查询。

方便的数据打印功能。

在相应的窗体中,可方便的删除数据。

数据计算自动完成,尽量减少人工干预。

财务凭证管理系统的用例图,如下图2.1所示。

图2.1第3章总体设计3.1项目规划财务凭证管理系统主要由系统管理、凭证管理、科目信息、账目查询、报表和退出等模块组成,具体规划如下。

系统管理模块该模块主要用于实现公司基本信息、初始化使用时间、初始化科目金额、管理员基本信息设置和修改密码等功能。

凭证管理模块该模块主要用于实现凭证录入、凭证审查、凭证结算、凭证汇总和凭证查询等功能。

科目信息模块该模块主要用于实现科目信息和科目查询功能。

账目查询模块该模块主要用于实现总账预览、总账目查询、凭证查询、科目查询和账目余额查询等功能。

报表模块该模块主要用于实现凭证查询打印和按科目打印等功能。

3.2系统业务流程分析财务凭证管理系统的业务流程图如图3.1所示。

图 3.1 财务凭证管理系统的业务流程图3.3系统功能结构系统功能结构图如图3.2所示。

图 3.2 系统功能结构图第4章详细设计4.1数据库设计本系统采用SQL Server 2005作为后台数据库,数据库名称为db_credence,其中包含5张数据表。

下面分别介绍:4.1.1数据表概要说明为了对本系统后台数据库中的数据表有一个更清晰的认识,在此设计了一个数据表树形结构图,该结构图包括系统所有数据表,如图4.1所示。

图4.1 数据表树状结构图4.1.2部分数据表E-R图本里中规化出的实体主要有公司基本信息实体、科目信息实体、凭证信息实体、管理员信息实体和操作日志信息实体。

其中部分实体的E-R图如下所示。

公司基本信息实体E-R图,如图4.2所示。

图 4.2 公司基本信息实体E-R图会计科目信息实体E-R图,如图4.3所示。

图4.3 会计科目信息实体E-R图图,如图4.4所示。

凭证信息实体E-R4.1.3.数据表的结构tb_UserJob(公司基本信息表)表tb_UserJob用于保存用户所在单位的基本信息,该表的结构如图4.7所示。

图4.7 公司基本信息表tb_subjectInfo(会计科目信息表)表tb_subjectInfo用于保存会计科目的详细信息,该表的结构如图4.8所示。

图4.8 会计科目信息表tb_warrantInfo(凭借信息表)表tb_warrantInfo用于保存企业内部的财务凭证信息,该表的结构如图4.9所示。

图4.9 凭借信息表tb_admInfo(管理员信息表)表tb_admInfo用于保存本系统的用户基本信息,表的结构如图4.10所示。

图4.10 管理员信息表tb_logInfo(操作日志信息表)表tb_logInfo用于保存操作员使用该系统的日志记录,表的结构如图4.11所示。

图4.11 操作日志信息表4.2系统主要功能模块设计与实现4.2.1系统登录模块的设计与实现系统登录主要用于对进入财务凭证管理系统的用户进行安全性检查,以防止非法用户进入该系统。

在登录时,只有合法的用户,才可以进入该系统。

系统登录窗体如图4.12所示。

图4.12 系统登录代码设计单击【确定】按钮,程序调用公共类中的相关方法,判断用户输入的用户名和密码是否正确,如果正确,则成功登录财务凭证管理系统,并将用户名传到主窗体中,同时使用全局变量M_strName接受。

否则,弹出“用户名或密码错误”信息提示。

【确定】按钮的Click事件代码如下:private void btnOK_Click(object sender, System.EventArgs e)//确定{try{GetLogin log = new GetLogin();admInfo adm = new admInfo();adm.setadmName(this.txtUser.Text);adm.setadmPassword(this.txtPasword.Text);string result = log.loginDen(adm);// 调用方法if (result == "adminOK"){frmMain main = new frmMain(this.txtUser.Text.Trim());main.Show();this.Hide();}// end block ifif (result == "adminNO"){DialogResult a = MessageBox.Show("用户名或密码错误", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Error);this.txtUser.Text = "";txtPasword.Text = "";txtUser.Focus();}// end block ifif (result == "ConClose"){MessageBox.Show("数据库没有打开", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Error);}// end block if}catch(Exception ee){MessageBox.Show(ee.Message);}}4.2.2主窗体的设计与实现在正确验证用户的用户名和密码以后,就显示出财务凭证管理系统的主窗体。

主窗体主要用于显示系统所具有的功能,例如菜单栏里显示了系统管理、凭证管理、科目信息、账目查询等几个功能模块。

用户可以点击相应的按钮对系统进行不同的操作,凭证管理系统的主窗体如图4.13所示。

图4.13 主窗体主窗体实现的主要实现代码如下:系统管理按钮的实现代码:private void公司信息ToolStripMenuItem_Click(object sender, EventArgs e){frmComnpty cpy = new frmComnpty();cpy.MdiParent = this;cpy.Show();}private void初始化使用时间ToolStripMenuItem_Click(object sender, EventArgs e){frmSystemDatTime sydate = new frmSystemDatTime(M_strName);sydate.MdiParent = this;sydate.Show();}private void初始化科目资金ToolStripMenuItem_Click(object sender, EventArgs e) {frmSubjectMoney suMoney = new frmSubjectMoney();suMoney.MdiParent = this;suMoney.Show();}private void管理理员信息ToolStripMenuItem_Click(object sender, EventArgs e) {frmAdmInfo adm = new frmAdmInfo();adm.MdiParent = this;adm.Show();}private void密码修改ToolStripMenuItem_Click(object sender, EventArgs e){frmAdminPassWord password = new frmAdminPassWord(M_strName);password.MdiParent = this;password.Show();}凭证管理按钮的实现代码:private void凭证录入ToolStripMenuItem_Click(object sender, EventArgs e){frmWarrantInfo war = new frmWarrantInfo();war.MdiParent = this;war.Show();}private void凭证审核ToolStripMenuItem_Click(object sender, EventArgs e){frmWarrantSheng sheng = new frmWarrantSheng();sheng.MdiParent = this;sheng.Show();}private void凭证结算ToolStripMenuItem_Click(object sender, EventArgs e){GetWarInfo getWinfo = new GetWarInfo();int p_int_Select = getWinfo.GetCount();if (p_int_Select == 1){MessageBox.Show("还没有通过审核的记录\n" + "请审核凭证后再结算", "结算提示", MessageBoxButtons.OK, rmation);return;}// end block ifelse{string P_str_balnd = getWinfo.GetWarrbalance();//调用结算方法if (P_str_balnd == "updateOk"){MessageBox.Show("结算完毕\n" + "请继续操作", "结算提示", MessageBoxButtons.OK, rmation);return;}// mendthod}// end block}private void凭证总汇ToolStripMenuItem_Click(object sender, EventArgs e){frmWarrantlSun wsun = new frmWarrantlSun();wsun.MdiParent = this;wsun.Show();}private void凭证ToolStripMenuItem_Click(object sender, EventArgs e){frmWarrantFind find = new frmWarrantFind();find.MdiParent = this;find.Show();}private void凭证修改ToolStripMenuItem1_Click(object sender, EventArgs e){frmWarrantUpdate frmupdat = new frmWarrantUpdate();frmupdat.MdiParent = this;frmupdat.Show();}注:其他代码详见系统设计文档。

相关主题