《基于NET的企业进销存管理系统设计论文.docx》由会员分享,可在线阅读,更多相关《基于NET的企业进销存管理系统设计论文.docx(62页珍藏版)》请在三一办公上搜索。
1、 本科生毕业设计摘 要传统企业的管理模式大部分主要还是采用手工记账的模式,其管理效率比较低。随着社会的发展,人们的消费能力在提高,企业进货、销售和库存的信息量将会非常庞大。如果能对这些数据进行统计分析,对商品的进销存进行全面的管理,将会给企业管理带来很大的帮助。针对企业用手工完成进销存管理存在处理速度慢和容易出错等问题,本系统设计出集进货管理、销售管理、库存管理为一体的,基本上满足中小企业的进销存管理体统。本系统采用C#.NET作为开发环境,选用SQL Server 2008数据库为平台,采用三层架构中的隔离驱动模式,充分考虑到实际操作中出现的各种情况,结合计算机容量大、记忆力强和处理速度快等
2、优点,在提高公司管理效率的同时,增加了毛利的计算,也为进销存管理系统的设计与应用提供了借鉴意义。本文所设计的进销存管理系统,界面友好,操作方便、功能完整,使得企业管理合理规范,最大限度的满足了用户的需要。关键词:进销存管理;SQL Server数据库;C#.NET;隔离驱动模式ABSTRACTThe traditional enterprise management mode and most of the major or the use of manual accounting mode, the management efficiency is relatively low. With
3、the development of society, peoples consumption ability in raising, enterprise purchase, sales and inventory information will be very large. If the energy of these data for statistical analysis, to the commodity Invoicing comprehensive management, will be of great help to the enterprise management.I
4、n view of the enterprise with complete manually Invoicing management existence the processing speed is slow and prone to error and other problems, the system design a set of stock management, sales management, inventory management as a whole, basically satisfies the small and medium-sized enterprise
5、s Invoicing management system. This system uses C#.NET as a development environment, using SQL Server 2008 database as a platform, the three layer architecture of isolation driven pattern, give full consideration to the actual operation occurs in a variety of situations, combined with computer capac
6、ity, strong memory and processing speed, to improve management efficiency at the same time, increase the profit calculation, also for Invoicing management system design and application to offer draw lessons from a meaning.The design of the Invoicing management system, friendly interface, convenient
7、operation, complete functions, the management of enterprises has a reasonable standard, to maximize the satisfaction of user needs.Keywords:inventory management; SQL Server; C#.NET; isolation driven pattern.目 录1 绪论11.1课题的研究背景11.2课题研究意义11.3本课题主要研究内容21.4本文的结构安排22 开发的相关技术42.1.NET框架42.1.1.NET框架介绍42.2.2.
8、NET编译技术52.2ADO.NET技术62.2.1ADO.NET介绍62.2.2ADO.NET中的主要对象62.2.3用ADO.NET连接SQL Server数据库72.3隔离驱动模式82.4开发工具介绍82.4.1SQL Server 2008数据库系统82.4.2C#编程语言92.4.3Visual Studio 2010工具软件介绍93 系统功能的架构与设计113.1系统功能描述113.1.1系统总体功能结构113.1.2系统功能实现流程133.2数据库设计143.2.1业务逻辑编码规则143.2.2数据库创建153.2.3数据库逻辑结构设计163.2.4数据表逻辑关系203.3Vis
9、ual Studio 2010的设计223.3.1Visual Studio 2010项目的创建223.3.2添加模块223.3.3系统窗体汇总表234 系统功能模块实现264.1用户登录模块的实现264.2系统主窗体274.3进货模块的实现284.3.1进货单与退货单284.3.2进货分析304.3.3进货统计(不含退货)304.3.4单位往来对账314.4销售模块314.4.1销售单、销售退货货单、销售统计314.4.2销售状况324.4.3商品销售排行334.4.4销售成本344.4.5往来对账354.5库存模块364.5.1库存状况364.5.2库存商品上限、下限报警374.5.3库存
10、盘点384.6基础数据模块的实现394.6.1库存商品394.6.2往来单位404.6.3公司职员404.7系统维护404.7.1本单位信息设置404.7.2系统权限管理设置414.7.3数据库备份与恢复414.7.4系统数据清理425 总 结43参考文献:44翻译部分45英文原文45中文译文51致谢56进销存1 绪论1.1课题的研究背景随着企业规模的不断扩大,原始手工的管理方式已不能适应企业的发展现状,也无法满足企业高复杂、快速、准确的管理工作要求,企业的管理者并非固步自封,在现今竞争日趋激烈的市场环境下,企业的管理者在试图不断地巩固现有的资源基础上,一边摸索着管理经验,一边寻求可以帮助企业
11、在管理上突破的新管理方式和新方法,提高企业管理上的灵活性,实现企业的稳步发展,迎接日益激烈的市场竞争,信息技术为他们提供了最好的途径1。以计算机与通信技术为基础的信息技术已经进入了蓬勃发展的时期。信息技术为人们创造了一种全新的不受时间、地域和计算机本身约束而实现信息交流、共享和协作的方式,这种新的处理方式给企业带来了新的机遇和挑战。在企业信息化大背景的影响下,对企业经营活动中的进、销、存进行有效的控制和管理。要实现企业的信息化,关键是要实现企业信息的集成和共享。为了实现信息化,企业选择了进销存管理系统。此系统利用计算机对企业的进货、销售及库存进行一体化管理,对库存商品进行查询和汇总,让管理者时
12、刻对物资储做到心里有数;通过建立商品到货入库管理,对入库商品的采购时间、供应商及价格进行控制。销售管理帮助企业掌握销售动向。企业采用进销存系统来管理企业的进销存业务可以带来明显的经济效益和社会效益2。它的优点主要体现在以下几方面:极大提高了员工的工作效率,大大减少了以往到货商品入库到销售出库流程繁琐,杂乱的弊端;基于计算机技术的进销存管理系统,可以减少入库管理、出库管理及库存管理中的漏洞,可以减少管理成本,增加企业收入;进销存管理的操作自动化和信息的电子化,全面提高了企业的管理水平。因此,为进一步提高企业进销存业务处理效率,建立高效的进销存系统就变得十分重要。1.2课题研究意义信息管理是人类为
13、了有效地开发和利用信息资源,以现代信息技术为手段,对信息资源进行计划、组织、领导和控制的社会活动。简单地说,信息管理就是人对信息资源和信息活动的管理。信息管理的根本目的是控制信息流向,实现信息的效用与价值。进销存的系统是一个企业进货同销售工作的核心,它的内容对于企业的决策者和管理者来说都至关重要,所以进销存管理系统应该能够为用户提供充足的信息和快捷的查询手段。对一个从事商业活动的公司来说,都需要采购、存储、以及销售商品,对这样的工作流程,建立一个合适的信息管理系统,进行有效的管理和控制,是十分有必要的。本软件系统是根据化妆品公司的特点,集进、销、存、分析于一体,可以实现对管理员管理、供应商管理
14、、进货管理、销售管理、库存管理等管理,使得管理合理规范,实现对商品的进货、付款、销货、收款和库存统计等业务的计算机管理,大大减轻了公司工作员工的工作量,全面提高了管理的管理效率以及服务质量,使公司管理水平和业务水平跃上了一个新的台阶,系统操作方便及简单的界面给用户节省了不少宝贵的时间,提高了效率,也减少了人为出错的概率。系统采用计算机这一现代化管理工具,不但可以提高工作效率和工作质量,而且还可以节省大量的人力、物力和财力。计算机管理代替落后的手工管理后,原来几个人几天干的活,现在一个人就完全可以胜任。只要在配一台普通台式计算机和一个操作人员就可以实现,完成对公司信息的管理。1.3本课题主要研究
15、内容通过实际调查,要求本系统具有以下功能: (1)软件设计以方便和全面为宗旨,入手快,操作简单; (2)考虑到操作人员的计算机知识有限,因此本系统具有良好的人机界面; (3)对于系统的使用对象较多,设计了较好的权限管理;(4)方便的数据查询,支持多条件查询;(5)库存报警的基点是可变的并增加了库存的折损模块;(6)当外界环境(停电、网络病毒)干扰本系统时,系统可以通过备份和恢复来保护原始数据的安全。1.4本文的结构安排第一章介绍了本课题的背景及研究意义、课题设计任务。第二章介绍了基于.NET进销存系统开发的相关技术分析。第三章介绍了企业进销存管理系统的总体结构设计。第四章详细介绍进销存管理系统
16、的实现,如系统主页面界面、进货、销售、库存等模块的实现。第五章总结了整个设计过程,并给出系统的改进方案。2 开发的相关技术2.1.NET框架2.1.1.NET框架介绍.NET框架(Framework)简称.NET,是由微软开发,一个致力于敏捷软件开发(Agile softwaredevelopment)、快速应用开发(Rapidapplication development)、平台无关性和网络透明化的软件开发平台。.NET是微软为下一个十年对服务器和桌面型软件工程迈出的第一步。NET包含许多有助于互联网和内部网应用迅捷开发的技术。.NET框架定义了.NET应用程序的开发和运行环境,包括可在.N
17、ET应用程序中使用的类库,类类似与java的虚拟机。开发人员可以在次平台或环境下为各种平台和设备编写应用程序。.NET框架功能非常强大,主要体现在一下几个方面3:提供了一个面向对象的编程环境,完全支持面向对象的编程。在软件的可复用性、和扩展性、可维护性、灵活性方面都有很大是提高;提供了支持多中编译语言的编译器,使应用程序可以在多种设备(从台式机到移动电话)上运行;提供了许多开发人员可重复的基础类,包括线程、文件输入输出、数据库支持、XML数据分析、安全控制等,这些类库可用于所有.NET平台支持的语言;对Web应用的强大支持。可编写识别Internet并在Internet上也支持的应用程序,并且
18、这些应用程序也接受诸如XML、HTTP、SOAP这样的开发标准。.NET框架包括公共语言运行库(CLR)和统一的类库集两个主要组件4。其中公共语言运行库是.NET框架的基础,它提供内存管理、线性管理和远程处理等核心服务。公共语言运行库提取.NET应用程序.将其编译成本机的处理代码,同时进行安全性检查。它能够自动处理对象布局,并管理对象应用,当不再使用对象时,释放它们。这样有助于消除内存泄露和其他常见的编译错误。.NET框架的另一个重要组件类库集,它是一个综合性的、面向对象的可重用类型集合,包括类、接口和值类型组成的库,是建立.NET框架应用程序、组件和控件的基础。如图2-1显示了.NET框架的
19、组件及其要素。图2-1 .NET的组件极其架构2.2.2.NET编译技术为实现多语言开发,.NET所有编程都不是被直接编译为本地代码,而是编译成微软中间语言MSIL(Microsoft Intermediate Language)代码,再有即时编译器(JIT)转换成机器码5。如图2-2。图2-2 .NET编译原理 C#和.NET支持用其他语言编写代码的代码通过各自的编译器编译成MSIL,再通过JIT编译器编译成相应的额操作专用代码6。这种编译方式实现了代码托管,提高了程序的运行效率。2.2ADO.NET技术2.2.1ADO.NET介绍ADO.NET是由一系列的数据库相关类和接口组成的,它的基石
20、是XML技术,所以通过ADO.NET不仅能访问关系型数据库中的数据,而且还能访问层次化的XML数据7。ADO.NET提供了两种数据访问的模式8:一种是为连接模式(Connected),另一种为非连接模式(Disconnected)。后一种模式是ADO.NET中才具有的。相比于传统的数据库访问模式,非连接的模式提供了更大的可升级性和灵活性。在该模式下,一旦应用程序从数据源中获得所需的数据,它就断开与原数据的连接,并将获得的数据以XML的形式存放在主存中。在应用程序处理完数据后,它再取得与原数据的连接并完成数据的更新工作。ADO.NET中的DataSet类是非连接模式的核心,数据集对象(DataS
21、et)以XML的形式存放数据9。我们既可以从一个数据库中获取一个数据集对象,也可以从一个XML数据流中获取一个数据集对象。而从用户的角度来看,数据源在哪里并不重要,也是无须关心的。这样一个统一的编程模型就可被运用于任何使用了数据集对象的应用程序。ADO.NET有效地从数据操作中将数据访问分解为多个可以单独使用或一前一后使用的不连续组件。ADO.NET包含用于连接到数据库、执行命令和检索结果的.NET Framework数据提供程序。用户可以直接处理检索到的结果,或将其放入ADO.NET DataSet对象,以便与来自多个源的数据或在层之间进行远程处理的数据组合在一起,以特殊方式向用户公开。AD
22、O.NET DataSet对象也可以独立于.NET Framework数据提供程序使用,以管理应用程序本地的数据或源自XML的数据。2.2.2ADO.NET中的主要对象ADO.NET的对象主要包括DataSet,DataTable,DataColumn,DataRow和DataRelation10。(1)DataSet这个对象是一个集合对象,它可以包含任意数量的数据表,以及所有表的约束、索引和关系。所有这些信息都以XML的形式存在,可以处理、遍历、搜索任意或者全部的数据。(2)DataTable这个对象可以在DataSet对象内找到所有表。通过“Table”属性可以访问DataTable的集合
23、。类似地,通过DataSet的“Relations”属性可以访问到所有已经建立的数据集关系。(3)DataColumn表包含与列有关的信息,包括列的名称、类型和属性。它在从一个数据表中得到数据的过程中起着重要的作用。它还可以用来用于创建DataTable的架构的基本构造块,通过向DataColumnCollection中添加一个或多个DataColumn对象来生成这个架构。每个DataColumn都有DataType属性,该属性确定DataColumn所包含的数据的种类。 (4)DataRow要填充一个表,可以使用命令的自动数据绑定功能,或者也可以手工添加行,方法是:创建DataRow对象,把
24、DataRow对象插入到表,然后为该记录的各个字段填写数据。可以通过Rows集合导航DataTable的元素,利用Rows集合实现一个顺序导航器,或者通过搜索或直接定位跳转到特定的记录。DataRelationDataRelation相当于数据表之间的关系,它作为整体和DataSet相关联,Relations集合中的每个DataRelation对象都包括了DataSet的Tables集合中两个DataTable的连接信息。所以只要指定每一个表中用于连接的列,就可以连接到DataTable,这个关系比较类似于在指定关系数据库的关系时把一个表的外键关联起来。2.2.3用ADO.NET连接SQL S
25、erver数据库从ADO.NET连接到SQL Server数据库有三种方法,这里主要介绍在服务器资源管理器中连接到SQL Server。打开.NET工作环境,在服务器资源管理器中的数据连接上单击鼠标右键,选择“添加连接”,弹出“数据连接属性”对话框。提供程序默认为Microsoft OLE DB Provider for SQL Server,在“连接”选项卡中直接输入数据库名称或从自动检测到的结果中选择,输入用户名和密码,单击“测试连接”按钮,如果测试成功,则弹出“测试连接成功”对话框。测试成功后,既“在数据库上选择数据库”的下拉列表中会出现这个连接所对应的所有数据库,选择指定的数据库,即完
26、成了连接数据库。2.3隔离驱动模式进销存管理系统的现实,主要用到三层架构中的隔离驱动模式,这在系统各个模块中都得到了体现。通常所说的三层架构是指陈述(UI)、业务逻辑层(BLL)、数据访问层(DAL),其中陈述层负责界面的显示,用于显示数据和接收用户输入的数据,为用户提供交互式操作界面;业务逻辑层是表示层和数据访问层之间的桥梁,主要负责数据的传递和处理;数据访问层主要实现对数据的保存和读取操作11。所谓隔离驱动模式,就是在开发项目时,陈述层和数据访问层被独立开发,常常平行开发。这两层在设计时没有任何干扰,所以不会存在人为的约束和有害的设计元素。当两层的设计都独立完成后,在设计业务逻辑层,业务逻
27、辑层的责任就是在没有对数据层和陈述的需求变化的基础上完成所有的转换。因为陈述层和数据访问层是完全独立的,当逻辑业务层需求改变的时候,它们都可以做相应的修改而不影响对方。改变两个物理上不相邻的层不会直接对其他层产生影响或发生冲突,这就允许数据访问层结构的调整或者陈述层根据用户的需要做相应的变化,而不需要系统做更大调整或修改。隔离驱动模式的设计图如2-3所示。图2-3 隔离驱动模式2.4开发工具介绍2.4.1SQL Server 2008数据库系统在毕业设计中我用到了Microsoft公司的SQL Server 2008。SQL Server 2008 是Microsoft公司推出的SQL Ser
28、ver数据库管理系统的最新版本该版本继承了SQL Server 2000版本的优点同时它推出了许多新的特性和关键的改进,使得它成为至今为止的最强大和最全面的SQL Server版本。这个平台新功能有以下特点12:(1)可信任的使得公司可以以很高的安全性、可靠性和可扩展性来运行他们最关键任务的应用程序。(2)高效的使得公司可以降低开发和管理他们的数据基础设施的时间和成本。(3)智能的提供了一个全面的平台,可以在你的用户需要的时候给他发送观察和信息。2.4.2C#编程语言Microsoft是这样描述C#的:“C#是从C和C+派生来的一种简单、现代、面向对象和类型安全的编程语言。C#主要是从C/C+
29、编程语言家族移植过来的,C和C+的程序员会马上熟悉它。C#试图结合Visual Basic的快速开发能力和C+的强大灵活的能力。”13Microsoft C#是微软退出的与JAVA语言香抗衡的一种支持网络编程新的编程语言,它是为生成运行在.NET Framework14上的、广泛的企业级应用程序而设计的。C#是专门用于.NET的编程语言,用C#编写的代码总是在.NET框架中运行15。C#为开发者提供了以下主要方便特点16:简便性不管是成员、类、名字空间还是引用,都统一简化到用点来表达;一致性每种数据类型都视为一个对象,统一了类型系统;面向对象抛弃了全局函数、变量和常量了概念;可升级性类型声明和
30、定义综合在一起,去掉无C和C+编译中需要的各种各样的头文件。2.4.3Visual Studio 2010工具软件介绍Visual Studio 2010是微软公司推出的开发环境。是目前最流行的Windows平台应用程序开发环境。其集成开发环境(IDE)的界面被重新设计和组织,变得更加简单明了。除了Microsoft SQL Server,它还支持 IBM DB2和Oracle数据库。与Visual Studio 2008相比新功能还包括17:(1)C# 4.0中的动态类型和动态编程:C# 4.0的主题就是动态编程(Dynamic Programming)。虽然C#仍然是一种静态语言,但是对象
31、的意义开始变得越来越“动态”。它们的结构和行为无法通过静态类型来捕获,或者至少编译器在编译程序时无法得知对象的结构和行为。C#引入了一种新的静态类型“dynamic”,当你拥有了一个dynamic类型的对象后,你“对它做的事情”只会在运行时进行解析。(2)多显示器支持:“一夫多器”,随着现代应用程序规模越来越大,开发工具越来越复杂,需要同时处理的信息也越来越多,多显示器已经成为我们开发工作的实际需要了。常常我们希望能够一边编写代码,一边能够直观地看到界面的变化,同时我们还想开着搜索引擎查找资料等等。(3)使用Visual Studio 2010的特性支持TDD:TDD(Test-Driven
32、Development)测试驱动开发:开始流行于20世纪90年代,是极限编程中倡导的程序开发方法之一,其主要思想就是先写测试程序,然后再实现代码使其通过测试。无法高效地编写测试程序;困难:测试程序写好后,无法自动生成代码框架,开发人员还要用大量的时间来编写实现代码。VS2010的“即用即产生”特性,可以让我们根据测试程序,根据代码的使用情况,快速地反向生成相应的代码。(4)支持Office:动态编程C# 4.0中引入了一种新的静态类型dynamic,这使得我们在使用COM进行Office开发的时候,无需再进行复杂而繁琐的对象类型转换。可选参数Office函数有很多参数,C# 3.0不支持可选参
33、数,每次调用函数都必须给定全部参数;C# 4.0支持参数使用默认值。No-PIA部署以前Office开发要求目标机器(用户机器)安装特定版本Office,在VS2010的No-PIA部署中,将真正使用到的程序集嵌入到应用程序中。(5)Quick Search特性:在VS2010中,我们可以通过在任何代码文件中使用快捷键“Ctrl + ”,(Ctrl键加上逗号键)调出“Quick Search”窗口,在搜索框中输入任意的字符作为搜索条件,VS就会替我们在项目中搜索相关联的符号,类型,成员名称等等,同时将搜索结果动态地显示在窗口下方的搜索结果列表中。我们可以不断地更换搜索条件,直到找到我们想要的结
34、果为止。(6)C+ 0x新特性:C+的新标准C+0x已经进入了feature freeze的阶段。Visual Studio 2010引入了TR1包含的部分特性外,还引入了4个重要的C+新特性:Lambda表达式,静态断言static_assert,auto关键字,右值引用。(7)IDE增强:VS2000之后,VC+的IDE效率越来越低下。VS2010中VC+增强主要包括:改进的项目系统支持,改进的VS用户体验,增强的MFC,VC+程序的发布与部署。(8)使用Visual C+ 2010创建Ribbon界面:随着Office 2007的发布,它改变了以往传统的下拉式菜单用户界面,取而代之的是全
35、新的被称之为“Ribbon”的固定式工具栏界面。(9)新增基于.NET平台的语言F#:F#是由微软发展的为微软.NET语言提供运行环境的程序设计语言。它是基于Ocaml的,而Ocaml是基于ML函数程序设计语言的,用于显示.NET在不同编程语言间互通的程序设计。微软计划将慢慢整合F#至.NET平台并使F#最终成为.NET平台的顶峰语言。3 系统功能的架构与设计作为一个企业进销存管理信息系统,其功能是实现公司进销存信息管理的系统化、规范化和自动化。3.1系统功能描述本系统属于中小型企业的数据库系统,可以对中小型企业的进销存进行有效控制。通过本系统可以达一下目标:(1)采用人机对话方式,界面友好美
36、观信息查询灵活、方便,数据存储安全可靠。(2)与供应商和代理商账目清晰。(3)功能强大的营业额分析(4)实施强大的后台监控功能。(5)实现商品的进货分析与统计、销售分析与统计、商品销售成本明细等功能(6)强大的库存警告功能,尽可能的减少商家不必要的损失。(7)系统对用户输入的数据进行严格的数据检查,尽可能的排除人为的错误。 3.1.1系统总体功能结构“进销存管理系统”的实现框图如图3-1所示。主要功能包括以下六个方面:(1)进货管理功能进货管理模块是进销存管理系统中不可缺少的重要组成部分,它主要负责为系统记录进货单及其退货信息,相应的进货商品会添加到库存管理中。进货管理包括:1)进货单:进货单
37、据的填写;2)进货退货单:进货后退货单据的填写;3)进货分析:查看分析进货的数量、价格、折合的金额;4)进货统计:通过供应商、经手人或时间的选择对进货商品进行的统计;5)单位往来对账:查看所有往来单位,并显示与单位的账目。(2)销售管理功能销售管理模块实现对商品销售过程进行全方位管理和全程监控。进货管理包括:1)销售单:销售单据的填写;2)销售退货单:销售后退货单据的填写;3)销售统计:对商品进行详细统计和所有综合统计;4)销售状况:商品的销售状况进行详细统计,并可查询单月的销售和销售退货的明细账本;5)商品销售排行:通过供应商、经手人或时间的选择对销售商品进行的排序;6)商品销售成本表:查看
38、销售商品的成本和毛利;7)往来对账:进货和销售进行详细的对账(包括批量进价的差额)。(3)库存管理功能库存管理模块实现对商品库存进行全方位管理和全程监控。库存管理包括:1)库存状况:查看库存信息和进行库存商品的上下限报警设置;2)库存商品上限报警:显示库存超过上限的商品;3)库存商品下限报警:显示库存超过下限的商品;3)库存盘点:查看并设置库存商品状况和损件数量。(4)基础数据管理功能基础数据管理模块实现对企业的基础数据进行管理。基础数据管理包括:1)库存商品:查看、修改和添加企业的所有商品的信息;2)往来单位:查看、修改和添加单位的代理商和供应商的信息;3)公司职员:查看、修改和添加公司员工
39、的信息。(5)系统维护功能系统维护模块实现对系统进行全方位管理。系统维护包括:1)本单位信息:查看和修改企业的信息;2)系统权限管理设置:实现登录本系统的用户进行权限设置;3)系统数据备份/恢复:实现系统内数据的备份和数据的恢复功能;4)系统数据清理:实现系统内的数据的清空。(6)辅助功能辅助功能模块实现对商品库存进行全方位管理和全程监控。库存管理包括:1)登录主页:快捷的登录公司的主网页;2)登录播客:快捷的登录公司品牌的播客;3)启动Word:快捷的启动Word,进行文档编辑;4)启动Excel:快捷的启动Word,进行表格编辑;5)计算器:快捷的启动计算器,进行数学运算。图3-1 系统功
40、能结构图3.1.2系统功能实现流程功能实现流程就是系统功能实现的过程。系统的流程分析如图3-2所示。(1)本系统是从用户登录模块开始的,用户进入登录界面,对用户的身份进行认证。身份认证可以分为以下两个过程:1)确认用户是否是有效的系统用户:当用户名和密码错误,或不一致时,系统会出现错误提示对话框;当输入正确时则进入进销存管理系统。2)确定用户的权限:在有效系统用户的情况下确定用户的使用权限,从而决定用户可以进入界面时可操作的模块。(2)进入系统后,是四大模块(细化功能七大模块)的设计,基础数据、系统维护、辅助功能和退出。其中,基础数据是进销存企业的重中之重,它存放企业的基础数据。在它的基础上,
41、才实现了进货管理、库存管理和销售管理,完成企业日常运营的进销存这些功能的功能数据。(3)退出模块设有退出按钮,直接关闭本系统。图3-2 系统功能流程图3.2数据库设计3.2.1业务逻辑编码规则编码设计是数据库系统开发的前提条件,是系统不可缺少的重要内容18。编码是指与原来名称对应的编号、符号或记号。它是进行信息交换、处理、传输和实现信息资源共享的关键。编码也用于指定数据的处理方法、区别数据类型,并指定计算机处理的内容等。本系统内部信息编码采用了统一的编码方式情况。(1)单据编号1)进货单据编码号为系统的当前日期、“进货”的拼音简码和七位数字的编码组合,例如,20120405JH0000001。
42、2)进货退货单据编码号为系统的当前日期、“退货”的拼音简码和七位数字的编码组合,例如,20120405TH0000001。3)销售单据编码号为系统的当前日期、“销售”的拼音简码和七位数字的编码组合,例如,20120405XS0000001。4)销售退货单据编码号为系统的当前日期、“销售退货”的拼音简码和七位数字的编码组合,例如,20120405XSTH0000001。(2)商品编号商品编号为字母“T”和4位数字编码的组合,例如,T0001。(3)往来单位编号往来单位编号为字母“U”和4位数字编码的组合,例如,U0001。(4)职员编号职员编号为字母“E”和4位数字编码的组合,例如,E0001。
43、3.2.2数据库创建数据库的创建过程:(1)单击“开始”“程序”Microsoft SQL Server 2008SQL Server Management Studio,启动SQL 2008;(2)连接到服务器,本系统用的是Windows登录,所以直接点“确定”;(3)找到在资源管理器下的“数据库”文件夹右击“新建数据库”在弹出的窗体中输入数据库的名称db_EMS“确定”。图如3-3。图3-3数据库的创建3.2.3数据库逻辑结构设计系统进销存管理系统主要用来记录一个企业中所有的进货、销售、库存等信息,因此数据量比较大,为了实现系统的各个功能,实现数据的清晰,本系统供设计了14张数据表。详细信息见表3-4。表3-4 数据库表汇总(1)tb_currentaccount(往来单位对账明细表)列名描述类型允许空值主键billdate录单日期datetime否否billcode商品编号varchar(20)否否addgathering销售应收float是否factaddfee销售实收float是否reducegath