基于Web服务的进销存系统设计与实现-毕业论文.doc_第1页
基于Web服务的进销存系统设计与实现-毕业论文.doc_第2页
基于Web服务的进销存系统设计与实现-毕业论文.doc_第3页
基于Web服务的进销存系统设计与实现-毕业论文.doc_第4页
基于Web服务的进销存系统设计与实现-毕业论文.doc_第5页
免费预览已结束,剩余54页可下载查看

下载本文档

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

文档简介

茂 名 学 院毕业设计说明书题 目 基于Web服务的进销存系统设计与实现 英文并列题目 Design and realization of stocking selling and storing system based on Web Services 学院:电子信息学院专业:计算机科学与技术 班级:计算机02-3学生: 余朝丰 指导教师(职称) 朱兴统(讲师) 完成时间: 2006 年 03 月 13 日至 2006 年 06 月 16 日系主任批准日期茂 名 学 院毕 业 设 计(论 文)任 务 书 计算机科学与技术 系 计算机科学与技术 专业 计算机02-3 班 学生 余朝丰 一、毕业设计(论文)课题 基于Web服务的进销存系统设计与实现 二、毕业设计(论文)工作自 2006 年 03 月 13 日起至 2006 年 06月 16 日止三、毕业设计(论文)进行地点 计算机专业实验室 四、毕业设计(论文)的内容要求 (一)总体要求: 结合自己的专业知识,运用自己熟悉的计算机软件设计制作一个C/S架构的进销存系统,系统应该具有系统管理,资料管理,采购管理,销售管理,库存管理,报表管理等功能。 (二)具体要求: 1.从整体上对系统进行规划与设计,做好各个模块的分析和设计实现。 2.最好采用三层结构来构造系统,数据层,业务逻辑层和用户界面层。数据层是数据库。业务逻辑层使用Web服务或Socket来构建,负责访问数据以及将数据分发到用户界面层。用户界面层是Windows应用程序或Web应用程序。 3.开发语言建议使用Visual C#.NET,数据库开发工具可以使用Microsoft SQL Server 2000,也可以使用其它熟悉的工具。 4.设计最好具有创新和创意。 教研室负责人 指导教师 接受设计论文任务开始执行日期 年 月 日学生签名 摘要通过实施进销存管理系统,可以实现管理工作系统化、规范化、自动化,正确的进货和库存控制及发货,减少管理费用,从而提高影响企业的竞争力。系统在设计上采用三层结构,数据层,业务逻辑层和用户界面层。数据层是Microsoft SQL Server 2000中的数据库。业务逻辑层使用Web服务来构建,负责访问数据以及将数据分发到用户界面层。用户界面层是Windows应用程序。在系统的实现过程中,采用自顶向下的设计方法指导各模块的具体实现过程,采用了存储过程分析各种数据,提高了运行速度。以Visual Studio .NET作为开发平台,利用Visual C#.NET作为主要的开发语言,结合.NET中可视化数据库工具开发后台数据库,Visio 2000作为面向对象的建模工具。系统具有系统管理,基本资料管理,采购管理,销售管理,库存管理,报表管理等功能。系统用户界面有好,操作灵活方便,可大大提高工作效率。关键词:Web服务; 三层结构; Visual C#.NET; 进销存AbstractStocking selling and storing management systems through the implementation, management can achieve systematic and standardized, automated, accurate inventory control and sales and purchase, reducing management costs, thereby enhancing the competitiveness of enterprises affected. The system adopts three layers of structure in the design, data layer, interface layer of business logic layer and user. The data layer is databases in Microsoft SQL Server 2000. Business logic layer use Web Services , come , construct , responsible for datum of visiting and distribute the data to users storey of interfaces. User interface layer is Windows application program. In systematic realization , adopt the top-down design method to guide realizing the course specifically of every module , have adopt the storing process to analyze various data, has improved the running speed. In Visual Studio DoNet as a development platform using Visual C#.NET as a major development language combination DoNet development tools, database visualization background database, Visio 2000 as object-oriented modelling tools. The system has system management, the basic materials are managed, procurement management, sell and manage, stock control, functions such as the management of the report form ,etc. There are the systematic users interfaces well, operate flexibly and conveniently , can improve working efficiency greatly .Keyword : Web Services; Three layers of structure;Visual C#.NET;Stocking selling and storingI目 录摘要IAbstractII第一章引 言11.1 进销存系统的发展历程11.2 进销存系统开发的意义1第二章系统技术支持32.1 系统的运行环境32.2 系统硬件支撑平台32.3 系统的几个关键开发技术32.3.1 Microsoft SQL Server 2000后台数据库管理系统32.3.2 Web服务42.3.3 Visual C#.NET数据访问6第三章需求分析103.1系统的分析103.2系统实现目标10第四章系统的概要设计124.1 服务器端的概要设计124.2 客户端的概要设计124.2.1 系统流程134.2.2 系统功能分析与模块划分134.3 数据库的设计164.3.1 需求分析174.3.2 概念结构设计184.3.3 逻辑结构设计18第五章详细设计与实现275.1数据库存储过程概述275.2各大模块设计285.2.1 系统两个关键算法285.2.2 登录窗口,切换用户窗口的基类设计285.2.3 主窗体类设计295.2.4 系统管理模块设计305.2.5 基本资料模块设计315.2.6 采购管理模块设计335.2.7 销售管理模块设计355.2.8 库存管理模块设计355.2.9 报表管理模块设计365.2.10 服务器端测试页面效果37第六章系统的调试386.1 调试计划386.2 程序调试内容386.3 调试中应用的方法39总结与展望40致谢42参考文献43附录441. 系统对DBMS,ADO.NET事务的使用442. 两个组件派生类463. TreeView生成树编码实现484.TreeView节点编码编码实现485. ListView数据导入Excel496.动态添加水晶报表列51第 一 章 引言第一章引 言1.1 进销存系统的发展历程由于市场竞争的需要,如何吸引和留住人才,激发员工的创造性、工作责任感和工作热情已成为关系商业兴衰的重要因素,人才已经成为商业最重要的资产之一。公正、公平、合理的商业管理理念和商业管理水平的提高,使社会对进销存管理系统有了更高的需求;同时由于个人电脑的普及,数据库技术、客户/服务器技术,特别是Internet/Intranet技术的发展,使得第三代进销存管理系统的出现成为必然。进销存管理系统的特点是从进销存管理的角度出发,用集中的数据库将几乎所有与商品相关的数据统一管理起来,形成了集成的信息源。友好的用户界面,强有力的报表生成工具、分析工具和信息的共享使得进销存管理人员得以摆脱繁重的日常工作,集中精力从战略的角度来考虑商业商品规划和政策。在过去,销售业的操作一般都靠人工操作,如靠人工登记卡片、填写表格资料,然后根据不同的分类入帐,销售额的日结算和每月的盘点都需花费大量的人力和物力来完成。即使前几年,有些商家开始使用电脑管理,但也只是进行一些简单的数据计算的操作。这是一项极其繁琐的工作。通过人手工计算不仅容易出错,而且不能够及时把数据之间的关系形象化表现出来,也就不能够进一步掌握市场的最新动态1。而通过本系统基本可解决以上问题,并且能够方便、灵活地对数据库的资料进行查询、统计、打印等操作,所有这些对数据库进行的操作都受到管理级别的限制,确保数据的安全性。另外,本系统从实用性方面考虑,在联机交换数据时,尽量使数据在必要时才进行传递,提高运行速度。传统的进销存系统是单机版或者通过Socket来实现,本系统试着从Web服务出发,客户端利用Web服务提供的可以产生所需结果集的服务程序,使用XML包在服务器之间来回传送数据库记录,对于数据的查询,插入,更新,删除基本是通过存储过程结合事务来实现。1.2 进销存系统开发的意义 随着电子商务的发展和市场竞争的加剧将企业推上了风口浪尖,中小企业除了积极迎接挑战而别无选择。网络的兴起与电子商务的发展带来了时空界限的突破,贸易方式的变革以及经济活动的革命,在某种意义上,这些变化为中小企业创造了同大企业,同国外企业平等竞争的有利条件。然而,管理水平的差异会弱化这种平等的实际意义。具体而言,中小企业在进,销,存等环节的管理上都存在着一定程度的不足,而这些不足无疑将使其在市场竞争中陷入举步维艰的境地2。显然在网络经济的时代背景下,进行有效的进销存管理已经成为中小企业存身立业的头等要事。然而对于一贯疏于管理的中小企业而言,实现有效的进销存管理必然存在着一定的难度,因此必须借助现代化的管理方法和管理技术计算机进销存管理系统。第51页 共52页第 二 章 系统技术支持第二章系统技术支持2.1 系统的运行环境 硬件环境的要求为: 要求586以上的微型机,内存为64MB,服务器是SQL的网络数据库。软件环境的要求为:安装WINDOWS 2000或更高的版本OS,安装SQL 2000版本或更高版本,必须装IIS(Internet Information Server 信息服务),同时必须装上.NET Framework 1.1(.NET框架)或更高版本。2.2 系统硬件支撑平台该系统采用C/S形式的三层分布式结构。在客户机/服务器应用框架中,客户机负责管理用户界面、接受用户数据,处理应用逻辑,生成数据库服务请求,然后把这些请求发送给服务器,并且接受服务器返回的XML结果集,最后再将这些结果按照一定的格式返回给用户。服务器接受客户机的请求,处理这些请求,返回处理结果集给客户机,这些处理结果集包括访问数据库的结果数据和执行状态,例如失败或成功。该多层分布式系统的结构如图2.1所示3:图2.1 分布式系统结构2.3 系统的几个关键开发技术2.3.1 Microsoft SQL Server 2000后台数据库管理系统本系统的开发选择了SQL数据库。SQL是MS SQL Server的简述,是世界上及国内比较流行的关系数据库管理系统。它适用于中小型事务处理及客户端/服务端结构的应用系统。,它功能强大操作简便,日益为广大数据库用户所喜爱。越来越多的开发工具提供了与SQL Server的接口。SQL Server 是一个关系数据库管理系统,它最初是由Microsoft、Sybase 和Ashton-Tate三家公司共同开发的。于1988 年推出了第一个OS/2 版本,在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本4。SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统的较新的版本,该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能、具有使用方便、可伸缩性好与相关软件集成程度高等优点。可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用。MSSQL Server不但可以应用于大中型数据库管理中,建立分布式关系数据库,并且也可以开发桌面数据库5。事实上,SQL Server数据库处理的基本结构,采取关系型数据库模式,尽管如此,相信大家都可以轻易的发现,在SQL Server的数据库处理方式,则是使用面向对象的操作方式与精神,也就是说,SQL Server的所有功能,都可以基于系统已经建立好的一些对象来达成,是相当OO(面向对象)的一个系统结构。SQL Server 企业管理器是 SQL Server 的主要管理工具,它提供了一个遵从 MMC 标准的用户界面,使用户得以6:定义 SQL Server 实例组。将个别服务器注册到组中。为每个已注册的服务器配置所有 SQL Server 选项。在每个已注册的服务器中创建并管理所有 SQL Server 数据库、对象、登录、用户和权限。在每个已注册的服务器上定义并执行所有 SQL Server 管理任务。通过唤醒调用 SQL 查询分析器,交互地设计并测试 SQL 语句、批处理和脚本。它支持中小型数据库,多用户的高性能和事物处理,支持分布式数据库和分布处理,能够实现安全性和完整性控制,具有可移植性、可兼容性和可联结性,它具有良好的数据管理能力和良好的开发性。2.3.2 Web服务(1) Web服务介绍Web服务是建立在XML数据交换基础上的软件模型,可以被看作是Internet上可访问,可编程的应用程序逻辑。它帮助应用程序,服务和设备一起工作。用XML进行共享的数据,彼此之间独立,同时又能耦合地连接到一个执行某特定任务的合作组。Web服务之间使用工业标准的协议定义了查询,相互通信和访问等操作。也就是说,Web服务是一种部署到Internet中,可利用的应用程序部件,是通用组件技术在Internet的延伸。所有应用只要能够连入Internet,就可以使用Web服务。Web服务基于XML的标准接口,这使得应用程序能够比以前更加快速,简单和低成本的进行集成。因此,Web服务引发了新商业模式,为企业,商业机构和消费者带来了很多好处,一个公司构建电子商务时,完全可以使用别的公司提供的Web服务,多种不同的Web服务可以轻易的集成新的商业应用。另外,Web服务使编程工作变得更加容易,为开发人员带来了的好处,传统上,开发人员在开发一个商务应用程序的过程需要自己创建所有的程序模块或者购买部分由别人开发的模块。而现在,开发人员可以创建能重用的Web服务,而不再是一个单一的程序;这些Web服务易于编程和调试,彼此之间相互独立,通过XML消息通讯及合作。所以对某一个服务的修改不会影响到其它的服务7。采用Web服务技术大大降低开发的代价,开发人员也无需与多种平台,多种分布式模型进行交互,只需要与一种组件即Web服务交互即可。同时,可以使用不同语言在不同平台上编写Web服务,这使开发人员无须抛弃原有的编程技术。使用HTTP协议来通信也是Web服务的一大优点,这是因为当前不少防火墙只配置为允许HTTP连接,使用其他方式连接往往会被防火墙阻隔。总之,Web服务在建立互操作性强的分布式应用新平台方面做出了巨大贡献,它使得应用程序无须考虑硬件操作系统,操作系统和编程语言就可以进行相互通信和共享数据,以达到信息的一致性。Web服务技术正在不断发展着,自身的定义也在不停的变化着,无论如何发展,其核心就是力求应用程序之间获得最佳的开放互操作性,这一宗旨是Web服务的核心理念。利用Web服务,能够创建出可供任何地方使用的功能强大的应用程序,它极大地拓展了应用程序的功能,并实现了软件的动态提供。Web服务主要包括SOAP(简单对象访问协议),WSDL(Web服务描述语言)和UDDI(统一描述,发现和集成协议)三个核心协议。简单来说,SOAP用于数据传输,WSDL用于描述服务,而UDDI用于获取可用的服务。VS.NET支持两种类型的服务,一类是通过因特网调用的服务;一类是在Windows的服务控制管理(Windows Service Contorl Management,SCM)监控下运行的服务,第一类叫做Web服务;第二类叫做Windows服务(以前叫做NT服务)。.NET平台和Web服务是紧密结合的,可以认为.NET平台就是用于开发Web服务的平台。使用.NET平台开发Web服务有以下优点:l 在Micrsoft .NET平台上,任何编程语言都可以用来编写Web服务,所以开发人员可以选择他们最熟悉的语言来编程,这大大提高了开发效率。l Microsoft .NET减少了程序员要写的代码量。一个Web服务能适用于各种设备,例如桌面电脑,智能终端等,从而不必再去为每一个设备编写一个不同的版本。(2) Web服务的使用要使用Web服务,必须添加对它的引用,系统将读入Web服务的WSDL文件,并随后添加到项目中。此外,系统还向项目添加静态的discovery文件,discovery文件的扩展名disco,它包含查找Web服务所需的全部信息,WSDL文档和.asmx文件的位置入口以及用于SOAP的绑定信息。添加引用所实现的最大功能是生成代理类。这个代理类是通过把WSDL文件中的消息转换为相应的类方法而生成的,客户端应用程序将使用这些类方法作为Web服务的代理8。这个代理类派生自.NET Framework中定义的SoapHttpClientProtocol类,该类执行客户端与Web服务之间的主要通信。在Windows Form代码中使用Web服务只需要简单的实例化一个对象并调用其方法。2.3.3 Visual C#.NET数据访问ADO.NET( ActiveX Data Objects )是在Microsoft .NET平台中加入的一种新的数据访问技术,它功能强大,使用方便。作为.NET Framework的重要组成部分,ADO.NET在ADO的基础上引入了一些重大的变化和革新,能够对绝大部分数据源进行高效的访问,是应用程序和数据库之间的一座重要桥梁。(1) ADO.NET概述ADO.NET是设计来彻底地支持像Web这样的分布式体系结构并利用XML在分布式组件中传送数据。而且.ADO.NET将各种逻辑条件进行组合来处理离散的记录集合,这些集合中包含了任意数据类型,因此可以为便携式设备开发应用程序,即使失去了和数据库的连接,这些设备也可以照样工作9。当断开时,用户可以利用结果集进行工作。ADO.NET将所做的变化都隐藏起来,只有当需要将对本地数据所所做的修改发回到数据库时,连接才有必要。连接只是暂时地利用该连接单向地发送对本地数据所做的添加,更新和删除。当在不同的ADO.NET组件和层次之间内部移动数据时,通常利用XML数据包来移动这些数据。结合分离模式,整个利用XML会显著地对多层客户服务器体系结构起作用,因为它使前端不需要安装大量的数据库客户端软件。利用XML和分离模式对Web应用程序有好处,因为它非常适合HTTP连接模式。(2) ADO.NET的结构ADO.NET提供两个核心组件:DataSet和.NET Framework数据提供程序10。.NET Framework数据提供程序包括Connection对象,Command对象,DataReader对象和DataAdapter,而DataSet包含DataTable对象集合和DataRelation对象(表示关系)集合。.NET Framework数据提供程序程序用于连接数据源,执行SQL语句命令以及检索数据,检索到的数据既可以直接处理,也可以放入DataSet对象中。.NET Framework数据提供程序通过在DataAdapter对象和DataSet之间建立联系,使DataSet对象可以获得来自多个数据源的数据。DataSet也可以独立于.NET Framework数据提供程序而使用,用于管理本地的数据源,如XML文档。ADO.NET两个核心组件的组成和它们之间的关系如图2.2所示。ConstraintDataColumnDataRowDataTableDataSet.NET FrameworkConnectionCommandDataAdapterDataReaderDataRelation图2.2 ADO.NET 结构图(3) ADO.NET的核心对象l 连接对象SqlConnection数据库应用程序与数据源(包括数据库和XML数据源等)进行交互首先必须建立与数据源的物理连接。在ADO.NET中,可以使用Connection对象来连接目标数据源。ConnectionString是Connection对象的关键属性11。Connection对象是通过ConnectionString属性的设置来连接数据库的(或者使用Connection带参构造函数)。ConnectionString是一系列由分号分隔的关键字和值,关键字和值之间使用等号连接。表2-1 ConnectionString中的关键字属性描述Data Source(数据源)或Server(服务器)要连接的SQL Server实例的名称或网络地址。如果连接的是本地服务器则可以写作“localhost”Initial Catalog(初始目录)或DataBase(数据库)即数据库的名称Integrated Security(集成安全性)或Trusted_Connection(信任连接)指明是否使用Windows集成安全身份认证,当其值为false时,将在连接中指定用户ID和密码。当为true时,将使用当前的Windows帐户凭据进行身份验证。有效值为true.false,yes,no以及与true等效的SSPI,默认值为false,推荐使用true或SSPI。User Id(用户标识)即SQL Server登录帐户。建议不要使用。为了维护最高级别的安全性,强烈建议改用Integrated Security或Trusted_Connection关键字Password或Pwd(用户密码)SQL Server帐户登录的密码。建议不要使用为了维护最高级别的安全性,强烈建议改用Integrated Security或Trusted_Connection关键字使用连接对象的各种方法可以完成如下操作: 使用Open和Close方法来建立和中断一个连接。 使用BeginTrans,Commit和Rollback方法来管理事务。l 命令行对象SqlCommand 在连接数据源之后,就可以对数据源执行一些命令操作。命令表示从数据存储区(数据库,数据文件等)检索或对数据存储区进行插入,更新,删除操作的指令。 使用命令行对象的各种属性和方法可以完成如下操作: 设置CommandText属性可以定义命令行的内容,比如SQL语句或存储过程。使用ExecuteScalar或ExecuteNonQuery方法执行命令。使用CommandType属性设置命令的类型l 命令生成器SqlCommandBuilder在配置了SqlDataAdapter的SelectCommand属性之后,利用SqlCommandBuilder自动生成用于单表更新的 Transact-SQL 语句,使对 DataSet 所做的更改与关联的 SQL Server 数据库相协调。l SqlDataAdapter对象数据适配器它是DataSet和数据源之间的桥梁,可以检索数据源并把数据填充在DataSet,也可以根据DataSet中的数据更新数据源。 使用数据适配器的各种方法可以完成如下操作: 通过Fill方法把数据添加到DataSet中。 通过Update方法实现添加,更新,删除数据源中的记录。(4) ADO.NET DataSet组件ADO.NET数据访问技术的一个非常突出的特点就是支持离线访问,而DataSet正是实现离线访问技术的核心。可以说ADO.NET和以前的数据访问技术之间的最大区别就是在于DataSet的存在。DataSet是在数据库中检索到的数据的一种内存驻留表示形式,因此它支持在断线状态下访问数据。无论数据来自什么数据源,都会提供一致的编程模型。除了可以使用SQL Server数据以及通过OLE DB公开的数据源来填充DataSet以外,也可以从XML数据源中加载数据。DataSet还可以这些数据的修改并更新相应的数据源。同时,DataSet可以被处理为XML形式的数据,从而任何两个组件或者应用程序都可以共享该数据。而且DataSet序列化的格式是XML,因此DataSet对象可以穿越防火墙。DataSet的这些特性使得编写需要与多个应用程序进行松耦合数据交换的数据库应用程序变得非常方便。(5) ADO.NET的编程模型ADO.NET通过下面的几步来完成对数据库的操作12:建立包含数据库连接细节的字符串。生成连接数据库的SqlConnection对象,将连接字符串传入构造函数;或者开始一个事务。生成SqlCommand对象,设置CommandText,CommandType。执行命令或者生成SqlDataAdapter对象。生成一个数据集用SqlConnecion对象的Open()方法打开数据库连接。用SqlDataAdapter对象的Fill()方法从表中取行,在DataSet对象的DataTable中存储。通过数据集对象对数据进行各种操作,包括修改,增加,删除等。更新数据源,如果使用事务,确认是否接受事务期间发生的数据变化。提交事务和关闭连接。第 三 章 需求分析第三章需求分析3.1 系统的分析当今的中小企业,一般应具有产品开发、生产、销售、服务的能力,为此企业都设有相应的机构,以管理各个环节的业务。在市场经济中,销售是企业运作的重要环节,一般采用分公司或代理制,通过分公司或代理把产品推向最终用户。销售情况是公司“进、销、存”系统的重要数据来源,以往的办法是通过手工方式把销售单据录入到“进、销、存”系统中(如果公司已经有单机或局域网的“进、销、存”系统)。纵观当前国内大多数中小企业的销售运作现状,不难看出存在着信息传输效率低,可靠、安全、保密性差,缺少全系统统一的数据资源和规范的商务文件运行手段许多信息分散随意存放,缺少一致性、易于丢失、不易重复使用。现在由于 Internet网的发展,这就要求相应开发软件应该从企业自身的实际情况出发,利用Internet 网技术,改善最需改善的商务活动条件,以此作为突破口,带动企业向现代化管理迈进。现在市面上有很多成熟的软件,但很多开发比较久了,有单机版的,或者网络版的,但是利用Web服务,结合.NET开发的目前还不是很多。本方案的任务就是在这样的背景之下提出的,结合先进的Web服务技术,利用ADO.NET数据接口。 3.2 系统实现目标设计本系统正是为了改善企业内部以及整个供应链各个环节的管理、调度及资源配置。在有限的时间内凭个人之力是很难实现所有的功能。因此系统有基本目标和长远目标。系统设计基本的目标是尽可能实现物流控制自动化,长远目标是实现ERP管理。 通过仓库进销存管理,实现仓库管理工作系统化、规范化、自动化,正确的进货和库存控制及发货,减少管理费用,从而提高影响企业的竞争力。进销存管理系统是对经销商的进货、销售和库存统计进行全面管理,满足如下要求:1基本销售商品维护2商品入库、销售3库存查询4销售情况查询统计一般而言,良好的进销存管理,有助于为商业达到以下的目标:一、协助组织达成发展目标与远景。二、有效地运用人员的能力与技术专才。三、促使组织成员的工作士气高昂且激发潜能。四、滿足组织成员的自我实现感与增加成员的工作成就感。五、发起且落实组织变革。六、提高组织成员的工作生活品质。七、协助商业负责人做出正确决策。系统投入使用后,将大大减少公司的管理部门的劳动量,改善了企业内部以及整个供应链各个环节的管理、调度及资源配置,使得管理合理规范。尽量合理的控制物流,尤其是材料库存的控制,将材料控制到只在需要的时候向需要的部门按需要的数量,提供所需要的物料,也就是说,它既防止物料供应滞后于对他们的要求,也防止了物料过早进货,以免增加库存,造成物资和资金的积压。根据以上需求,将使用面向对象的编程方法,使用编程语言设计界面,在界面上放置控件,通过控件连接数据库,开发出应用程序。第 四 章 系统的概要设计第四章系统的概要设计4.1 服务器端的概要设计服务器端属于系统的第二逻辑层,即业务逻辑层。它其实就是利用Web服务提供的Web方法来为客户端提供具体的服务接口。对于每个Web方法的具体实现可以分为两大类,一类是无返回值,另一类是有返回值的,返回DataSet类型的.虽然这类方法声明要返回一个数据集,但实际上它并不通过网络向客户机返回一个二进制的数据集。由于它是Web方法,编译器为传输返回的数据集对象生成代码,并将之转换为XML文档。基本上数据集被串行发送进XML数据流并返回到客户机。本系统在开发过程中,既考虑要使用DBMS的事务支持,也要考虑使用ADO.NET的事务支持,主要是体现在存储过程内部使用了事务,而应用程序又在ADO.NET事务中调用这个存储过程。在ADO.NET中,使用Connection对象,Transaction对象和Command对象来控制事务。事务的典型操作步骤如下:l 创建一个Connection对象,建立与数据库的连接。l 使用Connection.BeginTransaction方法创建一个Transaction对象,启动本地事务。即调用Connection对象的BeginTransaction方法来标记事务的开始。BeginTransaction方法会返回对Transaction对象的引用。l 创建一个Command对象。l 将Transaction对象分配给Comamnd对象的Transaction属性。l 执行数据库命令。l 根据数据库命令的执行情况,调用Transaction对象的Commit方法来提交事务,或者调用Rollback方法来取消事务,即回滚在数据源中所做的修改。4.2 客户端的概要设计 客户端是直接与用户交互的,数据的处理是对用户所隐藏的,实实在在的处理都是通过利用Web来实现的,用户感受得到的具体模块的应用。4.2.1 系统流程图4.1 系统流程4.2.2 系统功能分析与模块划分根据对进销存管理内容和进销存管理系统的分析,分为6大功能模块:系统管理,资料管理,采购管理,销售管理,库存管理,报表管理,工具,系统帮助l 系统管理:切换用户,权限设置,更改密码,注册用户,退出系统l 资料管理:商品资料,供货商资料,客户资料,业务员资料l 采购管理:进货单,进货付款, 进货单一缆,进货单查询l 销售管理:销售单,销售收款,销售单一缆,销售单查询l 库存管理:库存查询l 报表管理:客户详细资料,供应商详细资料,商品详细资料,业务员详细资料,仓库详细资料系统的结构和功能如图:图4.2 系统第一层功能模块 其中每个功能模块都由若干相关联的子功能模块组成。系统管理系统管理是每个系统都必须具备的功能,包括的功能模块如图4.3所示。图4.3 “系统管理”功能模块各功能模块实现的功能分别为: “切换用户”:用于更改当前操作的用户。 “修改密码”:供用户更改自己的密码。 “权限设置”:用于设置各操作员使用系统操作的权限。 “注册用户”:用于注册新用户。 “退出系统”:退出本系统。基本资料企业经营的基础资料是一个企业最基本和最重要的信息,包括商品资料,供货商资料和客户资料等,脱离了基础资料,进销存系统就无法运行。“基本资料”用于维护这些基础资料,包含的功能模块如图4.4所示。图4.4“基本资料”功能模块 各功能模块实现的功能分别为:“客户资料”: 用于维护(增加,修改,删除,查询)企业客户的基本信息。“供应商资料”: 用于维护企业供应商基本信息。“商品资料”: 用于维护企业经营商品的基本信息。“业务员资料”: 用于维护企业销售业务员的基本信息。“仓库资料”: 用于维护的仓库信息。采购管理“采购管理”: 用于管理企业的采购业务,包含的功能模块如图所示4.5所示。图4.5 “采购管理”功能模块 各功能模块实现的功能分别为:“进货单”: 用于录入企业的进货单。“进货付款”: 用于对进货单产生的应付款进行付款。“进货单一缆”: 用于显示所有进货单,包括已付款和未付款的。“进货单查询”: 通过多种不同的条件来查看相应的进货单。销售管理“销售管理”: 用于管理企业的销售业务,包含的功能模块如图4.6所示。图4.6 “销售管理”功能模块 各功能模块实现的功能分别为:“销售单”: 用于录入企业的销售单。“销售收款”: 用于对销售单产生的应收款进行收款。“销售单一缆”: 用于显示所有销售单,包括应收的和款收款的。“销售单查询”: 通过多种不同的条件来查看相应的销售单。库存管理“库存管理”: 用于管理企业的库存信息,包含的功能模块如图4.7所示。图4.7“库存管理”功能模块各功能模块实现的功能分别为:“库存查询”: 用于查询企业商品的库存,可以查询总库存和分仓库查询。报表管理“报表管理”: 用于汇总显示相关基本信息,包含的功能模块如图4.8所示。图4.8 “报表管理”功能模块各功能模块实现的功能分别为: “客户详细资料”: 可以有选择性显示客户相关信息,打印或导出数据。 “商品详细资料”: 可以有选择性显示商品相关信息,打印或导出数据。 “供应商详细资料”: 可以有选择性显示供应商相关信息,打印或导出数据。“业务员详细资料”: 可以有选择性显示业务员相关信息,打印或导出数据。“仓库详细资料”: 可以有选择性显示仓库商品相关信息,打印或导出数据。4.3 数据库的设计数据库是按一定的结构组织在一起的相关数据的集合;数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建设中的核心技术,具体说,数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)13。4.3.1 需求分析需求分析简单地说就是分析用户的要求。需求分析是设计数据库的起点,需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。使用本系统必须能够完成企业对各项基本信息(包括商品,供应商,客户等信息)的录入,输出,查询,更新,能产生各种报表,即采购,销售等报表。针对以上需求,设计如下的数据项和数据结构:l 用户清单( 用户编号,用户名,密码,部门号 )l 权限清单( 权限编号,用户编号,部门号 )l 商品清单( 商品编号,商品名称,拼音编码,单位,产地,类别,规格,进货价,销售价1,销售价2,最低售价 )l 客户清单( 客户编号,客户姓名,拼音编码,联系电话,传真,负责人,地址,邮编,开户银行,银行帐号,业务员编号,税号,地区编码,备注 )l 客户地区分类( 内部编码,地区名,地区编码,节点的绝对位置,节点的相对位置,节点所处的级别,节点的父节点,备注 )l 供应商清单( 供应商编号,供应商名称,拼音编码,联系电话,负责人,传真,地址,地区编码,开户银行,银行帐号,税号,备注)l 供应商地区分类( 内部编码,地区名,地区编码,节点的绝对位置,节点的相对位置,节点所处的级别,节点的父节点,备注 )l 库存清单( 商品编号,仓库编号,库存数量,单价,金额,最新进价 )l 业务员清单( 业务员编号,业务员姓名,身份证,性别,联系电话,地址,部门,备注 )l 进货清单( 进货单号,进货日期,制单人,业务员编号,供应商编号,验收员,税价合计,不含税价,税额,备注 )l 进货单历史( 编号 ,进货日期,制单人,业务员编号,供应商编号,验收员,税价合计,不含税价,税额,备注 )l 进货单明细( 编号,进货单编号,商品编号,数量,单价,仓库编号,税价合计,不含税价,税额,税率,备注 )l 进货单明细历史(编号,进货单编号,商品编号,数量,单价,仓库编号,税价合计,不含税价,税额,税率,备注 )l 销售单( 销售单编号,客户编号,销售日期,业务员编号,制单人,税价合计,不含税价,税额,备注 )l 销售单历史(销售单编号,客户编号,销售日期,业务员编号,制单人,税价合计,不含税价,税额,备注 )l 销售单明细(

温馨提示

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

评论

0/150

提交评论