C#程序设计财务收支管理系统姓名杨宗坤学院信息与电气工程学院专业计算机科学与技术年级2012学号20122212694指导教师周树森2015年12月12财务收支管理系统杨宗坤(信息与电气工程学院,计算机科学与技术,2012级2班,20122212694)摘要:当今社会越来越朝着信息化和数字化方向发展,计算机的应用领域使我们的生活越来越方便和快捷,可以说我们的每个人生活都离不开计算机的帮助了。越来越多的个人应用软件成为了人们重要的助手,也在潜移默化的改变着我们的生活。财务管理系统是每一个单位管理财务收入和支出的不可缺少的一个管理信息系统,市场上的财务管理软件大多数都面向企业并价格昂贵,或是专门偏向于某一特殊领域,免费的财务管理软件更是少之又少,为了满足中小企业及个体经营者的需求,利用C#语言、ASP.NET、VisualStudio和数据库等开发软件和工具,设计开发了一个具有简单收支管理、登帐统计和查询等基本功能的财务管理系统,经过测试表明,系统可以较为稳定的实现这些基本功能。关键词:财务管理系统;ASP.NET;SQLServer;程序设计;Abstract:Financialmanagementisanimportantworkofthecompany,usingcomputertomanagethecompanyfinancial,notonlycansavetimeandmanpower,morefully,effectivelygraspthebasicsituationofcorporatefinance,timelyaccesstothelatestaccuratedataandinformation.Thissystemisfortheusertoprovidepowerfuldatamanipulationfunctions,friendlyinterface,simpleandconvenienttouse,basedon(client/server)mode,Thedesignisreasonable,functionrelativelycomplete,thetestrunstability,canmeettheneedofthework。Keywords:C#.net,Financialmanagementsystem,SQLServer。1引言信息化的飞速发展,促使电脑和网络已经日益影响到了人们的日常和工作过程中,给我们带来了很大的方便,也使人们对电脑依赖性越来越强。各种各样的应用软件系统成为了人民的重要助手和有效工具,明显改变着人民的生活。随着网络的普及,通过手写的方式在纸张上记录一些收支的做法已经逐渐被淘汰,已逐渐被在电脑上记录自己的收支情况的做法所取代。通过VisualStudio2010工具的使用和面向对象C#语言等知识,对财务管理系统的设计慢慢了解,深入学习,从而达到熟练掌握.NET基本结构以及C#语言的基本知识和技能;基本掌握面向对象程序开发的基本思路和方法;根据课题的要求,给出解决问题的方案,通过分析问题、分解问题来解决问题,最终达到熟练掌握C#语言的运用和VisualStudio2010工具的使用。2系统分析2.1系统需求财务收支管理工作随着我国市场经济的发展,在各个企业的管理中扮演着越来越重要的角色,渐渐起到不可替代的核心作用。对于大型企业集团来说,财务管理显得更为重要,财务管理系统的建立将直接受到企业集团管理方式的影响,并直接影响企业的管理效率与经济效益。如何在现有经营环境下选择最佳的财务管理模式,使用最优的财务管理系统,实现企业的管理目标,适应企业信息化发展的需要,是一个值得研究和探讨的问题。Microsoft公司的C#是Windows应用程序开发工具,是目前广泛的、易学易用的面向对象的开发工具。Visual2010提供了大量的控件,并且这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。因此实现本系统Visual2010是一个相对较好的选择。关系型数据库的实现:SQLServer2008就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。SQLServer2008的优点在于它能使用数据表示图或自定义窗体收集信息,并能对相关系的表进行视图连接,建立视图后可屏蔽一些数据使数据更为安全,并可以建立存储过程以便能够简化前台程序的编写。数据表示可以使数据库一目了然。另外,SQLServer2008用户设定自已的密码保护数据的安全性。SQLServer2008提供对各种数据的约束,使用户输入的数据符合正规的逻辑,并提供各种数据与数据之间的相关性连接,能够级联更新一些相关的数据,更特别的是提供了触发器功能。SQLServer2008是一种关系数据库工具,关系数据库是已开发的最通用的大型数据库之一,运行在服务企上更加安全。如上所述,SQLServer2008作为关系数据库开发具备了许多优点。(2)技术可行性随着国内软件开发的日益发展壮大,各种中小企事业单位已具备独立开发各种类型的软件的能力,能够满足不同行业的特别的需求。而这个系统尽管其在组织关系上存在着很大的复杂性,繁琐性,但是就整个系统的技术构成上来看,它还是属于一个数据库应用类的系统。其基本操作还是对存在数据库进行添加、删除、查询、修改等。所以就单纯的数据库应用来看,暂不存在太大的技术问题。(3)经济可行性对于整个系统而言,在系统未运行之前,初期投资比较大,花费相对而言比较多。各部门必须配置电脑、服务器、打印机、传真机及相关的网络设备,但是在整个系统投入运行之后,因为现在计算机已经普及了,相关的人员培训费可以减少很多。而同时又减少了数据的流通环节,不必要花费那么多的时间,也就是说最重要的是就是提高了效率,而又保证了各项数据的准确性,也避免了工作人员的流动造成的收据丢失等问题,适应了当前的发展形式。(4)管理可行性随着时代的发展,人员素质己逐步提高,不论是对于电脑系统的基本操作还是对于系统的维护都有了一定的基础。同时还可以配置专业的电脑维护人员来维护电脑,不必担心电脑故障问题。2.2用户需求企业管理模式的选择应当是在对整体发展战略、经营情况、企业类型和子公司进行系统分析的基础上进行的,同时企业应充分根据自身发展的需要设计财务管理模式。设计时必须应当遵循以下原则:1.安全性安全性分为系统内部安全、访问安全及与其他系统对接时的安全性。内部安全体现在系统数据库的安全以及非法数据屏蔽等,可通过防火墙、划分网段来防范非法程序对数据库的破坏,对数据库做计划,进行备份,对录入数据进行核查,对不满足条件的内容提示修改,对非法数据进行屏蔽。访问安全体现在对各个部门、各个用户按管理人员的安全策略进行分组管理、控制各组的访问权限以及信息的流向。与其他系统连接时,既要保证内部数据的安全,隔离内外部的信息通道,又要对外部信息资源进行访问控制。为保证整个系统的正常运行,必然要保证系统信息的绝对安全和可靠。2.实用性财务信息管理系统是一个工程项目,而不是研究或实验课题。系统建设的最终目的是服务于财务管理的需要,服务于企业在许可范围内对财务信息的需求。系统的建设应为应用服务。因此,系统的设计和建设应能满足需求并正确无误地高效地运行。3.灵活性系统应设计任意组合的模糊查询功能,提供多方面的查询,以满足各个时期的报表。对复杂数据结构应实现修改一表的数据即可自动修改相关表中的数据,删除一表的数据即可自动删除与之相关的其他表数据,保证数据库中无冗余数据。2.3系统功能通过用户需求分析,根据企业财务工作流程分析,本着模块划分的原则,把系统抽象为3个模块,分别文件系统、用户管理、财务管理。下面是各模块的功能:1.文件系统:显示登录信息,存储登陆日志,修改密码,退出系统。2.用户管理:显示用户列表,添加和修改用户,公司部门管理,角色管理,工作性质介绍。3.财务管理:账单列表,添加和修改账单,显示收支信息以及账单性质。3系统设计3.1模块流程图模块流程图采用结构化程序设计的思想,其有以下优点:(1).自顶向下逐步求精的思想与人类求解复杂问题的思维规律相符,有助于软件系统的分析与设计。(2).采用先抽象后具体、先宏观后微观、先总体后细节的开发过程,使得程序的层次结构清楚,可读性好。(3).单入口、单出口的控制结构,可以保证程序的静态结构与其动态执行流登陆程序主窗口文件系统用户管理财务管理登陆日志修改密码员工信息部门管理账单列表登录信息收支明细账单性质程基本相似,程序的可维护性好。(4).良好的模块化特性支持软件部件的重用。3.2模块功能说明1.登录窗口:验证用户后打开程序管理窗口;2.程序管理主窗口:为父窗体,在此窗体内显示财务管理及主要功能模块;3.程序管理子窗口:主窗口各模块下的子功能窗体;4.登陆信息修改窗口:对用户信息进行修改。4系统模块4.1登陆设计模块图1登陆界面本界面是用户登录系统的界面,当用户提交登录信息,对用户进行身份及权限判断,再转入不同的页面。当用户名或密码、权限输入错误,会提示错误。输入用户名或密码错误后会显示如下界面:图2登陆界面4.2主界面模块窗口设计图3主窗口该窗口为父窗体,可以在此窗口内显示财务管理系统三个主要模块信息.用户在登陆界面按了输入正确账号密码的登陆按钮就可以转到此界面。4.3登录信息窗口图4登录信息窗口该窗口为用户登陆信息显示窗口,能显示用户登陆的时间,员工账号,上次登陆时间等信息。4.4用户管理窗口图5用户列表窗口该窗口显示员工信息,部们编号,职位等信息。图6修改员工信息窗口该窗口可以修改员工用户各种信息。图7员工性质查询窗口该窗口可以查询员工的性质名称,类别以及显示工作性质列表。图8收支列表窗口该窗口显示公司以及各员工收支明细,包括收支人,时间地点,以及增删查改等操作。能够清楚的显示该公司的收支情况。图9财务性质管理窗口该窗口可以对公司财务收支性质信息进行管理。4.4修改用户密码窗口图10密码修改窗口该窗口可以修改用户密码。5核心代码描述5.1c#连接数据库的方式:(1)配置文件链接。利用VS.NET开发平台进行开发的时候将会经常遇到要和数据库打交道,存取数据。这就涉及到和数据库的连接问题,.NET开发平台为我们提供了一种简单的方式来定义和数据库连接的字符串。这就是在Web.Config文件中添加连接字符串。(2)代码连接。#是一个语言,ASP.NET是一个平台,上面支持用C#或者VB.NET写代码。连接Access,SQLServer,Oracle,还有Excel数据库。本程序采用第一种连接方式,下面是主要源代码:?xmlversion=1.0encoding=utf-8?configurationconfigSections/configSectionsconnectionStringsaddname=ConnectionStringconnectionString=DataSource=OHU0SRPYXFXPE5O;InitialCatalog=MySystem;UserID=sa;Password=123456providerName=System.Data.SqlClient//connectionStrings/configuration其中,name的值ctionStrings代表字符串的名称,DataSource代表数据库的实例名,UserID和Password分别代表用户名和密码。如果有多个数据库的连接,还可以在appSettings标签之下添加多个add.......节。这样只需在配置文件中定义一次就可以在之后的数据库存取中多次重复利用这个设置。5.2登陆界面主要代码namespaceWinForm{publicpartialclassFrmLogin:Form{MySystem.DAL.Employeedal=newMySystem.DAL.Employee();MySys