基于Web服务的进销存系统设计与实现毕业论文文档格式.docx
《基于Web服务的进销存系统设计与实现毕业论文文档格式.docx》由会员分享,可在线阅读,更多相关《基于Web服务的进销存系统设计与实现毕业论文文档格式.docx(51页珍藏版)》请在冰豆网上搜索。
四、毕业设计(论文)的内容要求
(一)总体要求:
结合自己的专业知识,运用自己熟悉的计算机软件设计制作一个C/S架构的进销存系统,系统应该具有系统管理,资料管理,采购管理,销售管理,库存管理,报表管理等功能。
(二)具体要求:
1.从整体上对系统进行规划与设计,做好各个模块的分析和设计实现。
2.最好采用三层结构来构造系统,数据层,业务逻辑层和用户界面层。
数据层是数据库。
业务逻辑层使用Web服务或Socket来构建,负责访问数据以及将数据分发到用户界面层。
用户界面层是Windows应用程序或Web应用程序。
3.开发语言建议使用VisualC#.NET,数据库开发工具可以使用MicrosoftSQLServer2000,也可以使用其它熟悉的工具。
4.设计最好具有创新和创意。
教研室负责人
指导教师
接受设计论文任务开始执行日期年月日
学生签名
摘要
通过实施进销存管理系统,可以实现管理工作系统化、规范化、自动化,正确的进货和库存控制及发货,减少管理费用,从而提高影响企业的竞争力。
系统在设计上采用三层结构,数据层,业务逻辑层和用户界面层。
数据层是MicrosoftSQLServer2000中的数据库。
业务逻辑层使用Web服务来构建,负责访问数据以及将数据分发到用户界面层。
用户界面层是Windows应用程序。
在系统的实现过程中,采用自顶向下的设计方法指导各模块的具体实现过程,采用了存储过程分析各种数据,提高了运行速度。
以VisualStudio.NET作为开发平台,利用VisualC#.NET作为主要的开发语言,结合.NET中可视化数据库工具开发后台数据库,Visio2000作为面向对象的建模工具。
系统具有系统管理,基本资料管理,采购管理,销售管理,库存管理,报表管理等功能。
系统用户界面有好,操作灵活方便,可大大提高工作效率。
关键词:
Web服务;
三层结构;
VisualC#.NET;
进销存
Abstract
Stockingsellingandstoringmanagementsystemsthroughtheimplementation,managementcanachievesystematicandstandardized,automated,accurateinventorycontrolandsalesandpurchase,reducingmanagementcosts,therebyenhancingthecompetitivenessofenterprisesaffected.Thesystemadoptsthreelayersofstructureinthedesign,datalayer,interfacelayerofbusinesslogiclayeranduser.ThedatalayerisdatabasesinMicrosoftSQLServer2000.BusinesslogiclayeruseWebServices,come,construct,responsiblefordatumofvisitinganddistributethedatatouser'
sstoreyofinterfaces.UserinterfacelayerisWindowsapplicationprogram.Insystematicrealization,adoptthetop-downdesignmethodtoguiderealizingthecoursespecificallyofeverymodule,haveadoptthestoringprocesstoanalyzevariousdata,hasimprovedtherunningspeed.InVisualStudioDoNetasadevelopmentplatformusingVisualC#.NETasamajordevelopmentlanguagecombinationDoNetdevelopmenttools,databasevisualizationbackgrounddatabase,Visio2000asobject-orientedmodellingtools.Thesystemhassystemmanagement,thebasicmaterialsaremanaged,procurementmanagement,sellandmanage,stockcontrol,functionssuchasthemanagementofthereportform,etc..Therearethesystematicuser'
sinterfaceswell,operateflexiblyandconveniently,canimproveworkingefficiencygreatly.
Keyword:
WebServices;
Threelayersofstructure;
VisualC#.NET;
Stockingsellingandstoring
第一章引言
进销存系统的发展历程
由于市场竞争的需要,如何吸引和留住人才,激发员工的创造性、工作责任感和工作热情已成为关系商业兴衰的重要因素,人才已经成为商业最重要的资产之一。
"
公正、公平、合理"
的商业管理理念和商业管理水平的提高,使社会对进销存管理系统有了更高的需求;
同时由于个人电脑的普及,数据库技术、客户/服务器技术,特别是Internet/Intranet技术的发展,使得第三代进销存管理系统的出现成为必然。
进销存管理系统的特点是从进销存管理的角度出发,用集中的数据库将几乎所有与商品相关的数据统一管理起来,形成了集成的信息源。
友好的用户界面,强有力的报表生成工具、分析工具和信息的共享使得进销存管理人员得以摆脱繁重的日常工作,集中精力从战略的角度来考虑商业商品规划和政策。
在过去,销售业的操作一般都靠人工操作,如靠人工登记卡片、填写表格资料,然后根据不同的分类入帐,销售额的日结算和每月的盘点都需花费大量的人力和物力来完成。
即使前几年,有些商家开始使用电脑管理,但也只是进行一些简单的数据计算的操作。
这是一项极其繁琐的工作。
通过人手工计算不仅容易出错,而且不能够及时把数据之间的关系形象化表现出来,也就不能够进一步掌握市场的最新动态[1]。
而通过本系统基本可解决以上问题,并且能够方便、灵活地对数据库的资料进行查询、统计、打印等操作,所有这些对数据库进行的操作都受到管理级别的限制,确保数据的安全性。
另外,本系统从实用性方面考虑,在联机交换数据时,尽量使数据在必要时才进行传递,提高运行速度。
传统的进销存系统是单机版或者通过Socket来实现,本系统试着从Web服务出发,客户端利用Web服务提供的可以产生所需结果集的服务程序,使用XML包在服务器之间来回传送数据库记录,对于数据的查询,插入,更新,删除基本是通过存储过程结合事务来实现。
进销存系统开发的意义
随着电子商务的发展和市场竞争的加剧将企业推上了风口浪尖,中小企业除了积极迎接挑战而别无选择。
网络的兴起与电子商务的发展带来了时空界限的突破,贸易方式的变革以及经济活动的革命,在某种意义上,这些变化为中小企业创造了同大企业,同国外企业平等竞争的有利条件。
然而,管理水平的差异会弱化这种平等的实际意义。
具体而言,中小企业在进,销,存等环节的管理上都存在着一定程度的不足,而这些不足无疑将使其在市场竞争中陷入举步维艰的境地[2]。
显然在网络经济的时代背景下,进行有效的进销存管理已经成为中小企业存身立业的头等要事。
然而对于一贯疏于管理的中小企业而言,实现有效的进销存管理必然存在着一定的难度,因此必须借助现代化的管理方法和管理技术――计算机进销存管理系统。
第二章系统技术支持
系统的运行环境
硬件环境的要求为:
要求586以上的微型机,内存为64MB,服务器是SQL的网络数据库。
软件环境的要求为:
安装WINDOWS2000或更高的版本OS,安装SQL2000版本或更高版本,必须装IIS(InternetInformationServer信息服务),同时必须装上.NETFramework(.NET框架)或更高版本。
系统硬件支撑平台
该系统采用C/S形式的三层分布式结构。
在客户机/服务器应用框架中,客户机负责管理用户界面、接受用户数据,处理应用逻辑,生成数据库服务请求,然后把这些请求发送给服务器,并且接受服务器返回的XML结果集,最后再将这些结果按照一定的格式返回给用户。
服务器接受客户机的请求,处理这些请求,返回处理结果集给客户机,这些处理结果集包括访问数据库的结果数据和执行状态,例如失败或成功。
该多层分布式系统的结构如图所示[3]:
图分布式系统结构
系统的几个关键开发技术
MicrosoftSQLServer2000后台数据库管理系统
本系统的开发选择了SQL数据库。
SQL是MSSQLServer的简述,是世界上及国内比较流行的关系数据库管理系统。
它适用于中小型事务处理及客户端/服务端结构的应用系统。
它功能强大操作简便,日益为广大数据库用户所喜爱。
越来越多的开发工具提供了与SQLServer的接口。
SQLServer是一个关系数据库管理系统,它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的。
于1988年推出了第一个OS/2版本,在WindowsNT推出后,Microsoft与Sybase在SQLServer的开发上就分道扬镳了,Microsoft将SQLServer移植到WindowsNT系统上,专注于开发推广SQLServer的WindowsNT版本[4]。
SQLServer2000是Microsoft公司推出的SQLServer数据库管理系统的较新的版本,该版本继承了SQLServer版本的优点,同时又比它增加了许多更先进的功能、具有使用方便、可伸缩性好与相关软件集成程度高等优点。
可跨越从运行MicrosoftWindows98的膝上型电脑到运行MicrosoftWindows2000的大型多处理器的服务器等多种平台使用。
MSSQLServer不但可以应用于大中型数据库管理中,建立分布式关系数据库,并且也可以开发桌面数据库[5]。
事实上,SQLServer数据库处理的基本结构,采取关系型数据库模式,尽管如此,相信大家都可以轻易的发现,在SQLServer的数据库处理方式,则是使用面向对象的操作方式与精神,也就是说,SQLServer的所有功能,都可以基于系统已经建立好的一些对象来达成,是相当OO(面向对象)的一个系统结构。
SQLServer企业管理器是SQLServer的主要管理工具,它提供了一个遵从MMC标准的用户界面,使用户得以[6]:
·
定义SQLServer实例组。
将个别服务器注册到组中。
为每个已注册的服务器配置所有SQLServer选项。
在每个已注册的服务器中创建并管理所有SQLServer数据库、对象、登录、用户和权限。
在每个已注册的服务器上定义并执行所有SQLServer管理任务。
通过唤醒调用SQL查询分析器,交互地设计并测试SQL语句、批处理和脚本。
它支持中小型数据库,多用户的高性能和事物处理,支持分布式数据库和分布处理,能够实现安全性和完整性控制,具有可移植性、可兼容性和可联结性,它具有良好的数据管理能力和良好的开发性。
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用于获取可用的服务。
支持两种类型的服务,一类是通过因特网调用的服务;
一类是在Windows的服务控制管理(WindowsServiceContorlManagement,SCM)监控下运行的服务,第一类叫做Web服务;
第二类叫做Windows服务(以前叫做NT服务)。
.NET平台和Web服务是紧密结合的,可以认为.NET平台就是用于开发Web服务的平台。
使用.NET平台开发Web服务有以下优点:
●在Micrsoft.NET平台上,任何编程语言都可以用来编写Web服务,所以开发人员可以选择他们最熟悉的语言来编程,这大大提高了开发效率。
●Microsoft.NET减少了程序员要写的代码量。
一个Web服务能适用于各种设备,例如桌面电脑,智能终端等,从而不必再去为每一个设备编写一个不同的版本。
(2)Web服务的使用
要使用Web服务,必须添加对它的引用,系统将读入Web服务的WSDL文件,并随后添加到项目中。
此外,系统还向项目添加静态的discovery文件,discovery文件的扩展名disco,它包含查找Web服务所需的全部信息,WSDL文档和.asmx文件的位置入口以及用于SOAP的绑定信息。
添加引用所实现的最大功能是生成代理类。
这个代理类是通过把WSDL文件中的消息转换为相应的类方法而生成的,客户端应用程序将使用这些类方法作为Web服务的代理[8]。
这个代理类派生自.NETFramework中定义的SoapHttpClientProtocol类,该类执行客户端与Web服务之间的主要通信。
在WindowsForm代码中使用Web服务只需要简单的实例化一个对象并调用其方法。
VisualC#.NET数据访问
(ActiveXDataObjects)是在Microsoft.NET平台中加入的一种新的数据访问技术,它功能强大,使用方便。
作为.NETFramework的重要组成部分,在ADO的基础上引入了一些重大的变化和革新,能够对绝大部分数据源进行高效的访问,是应用程序和数据库之间的一座重要桥梁。
(1)概述
是设计来彻底地支持像Web这样的分布式体系结构并利用XML在分布式组件中传送数据。
而且.将各种逻辑条件进行组合来处理离散的记录集合,这些集合中包含了任意数据类型,因此可以为便携式设备开发应用程序,即使失去了和数据库的连接,这些设备也可以照样工作[9]。
当断开时,用户可以利用结果集进行工作。
将所做的变化都隐藏起来,只有当需要将对本地数据所所做的修改发回到数据库时,连接才有必要。
连接只是暂时地利用该连接单向地发送对本地数据所做的添加,更新和删除。
当在不同的组件和层次之间内部移动数据时,通常利用XML数据包来移动这些数据。
结合分离模式,整个利用XML会显著地对多层客户服务器体系结构起作用,因为它使前端不需要安装大量的数据库客户端软件。
利用XML和分离模式对Web应用程序有好处,因为它非常适合HTTP连接模式。
(2)的结构
提供两个核心组件:
DataSet和.NETFramework数据提供程序[10]。
.NETFramework数据提供程序包括Connection对象,Command对象,DataReader对象和DataAdapter,而DataSet包含DataTable对象集合和DataRelation对象(表示关系)集合。
.NETFramework数据提供程序程序用于连接数据源,执行SQL语句命令以及检索数据,检索到的数据既可以直接处理,也可以放入DataSet对象中。
.NETFramework数据提供程序通过在DataAdapter对象和DataSet之间建立联系,使DataSet对象可以获得来自多个数据源的数据。
DataSet也可以独立于.NETFramework数据提供程序而使用,用于管理本地的数据源,如XML文档。
两个核心组件的组成和它们之间的关系如图所示。
图结构图
(3)的核心对象
●连接对象—SqlConnection
数据库应用程序与数据源(包括数据库和XML数据源等)进行交互首先必须建立与数据源的物理连接。
在中,可以使用Connection对象来连接目标数据源。
ConnectionString是Connection对象的关键属性[11]。
Connection对象是通过ConnectionString属性的设置来连接数据库的(或者使用Connection带参构造函数)。
ConnectionString是一系列由分号分隔的关键字和值,关键字和值之间使用等号连接。
表2-1ConnectionString中的关键字
属性
描述
DataSource(数据源)或Server(服务器)
要连接的SQLServer实例的名称或网络地址。
如果连接的是本地服务器则可以写作“localhost”
InitialCatalog(初始目录)或DataBase(数据库)
即数据库的名称
IntegratedSecurity(集成安全性)或Trusted_Connection(信任连接)
指明是否使用Windows集成安全身份认证,当其值为false时,将在连接中指定用户ID和密码。
当为true时,将使用当前的Windows帐户凭据进行身份验证。
有效值为,yes,no以及与true等效的SSPI,默认值为false,推荐使用true或SSPI。
UserId(用户标识)
即SQLServer登录帐户。
建议不要使用。
为了维护最高级别的安全性,强烈建议改用IntegratedSecurity或Trusted_Connection关键字
Password或Pwd(用户密码)
SQLServer帐户登录的密码。
建议不要使用为了维护最高级别的安全性,强烈建议改用IntegratedSecurity或Trusted_Connection关键字
使用连接对象的各种方法可以完成如下操作:
使用Open和Close方法来建立和中断一个连接。
使用BeginTrans,Commit和Rollback方法来管理事务。
●命令行对象—SqlCommand
在连接数据源之后,就可以对数据源执行一些命令操作。
命令表示从数据存储区(数据库,数据文件等)检索或对数据存储区进行插入,更新,删除操作的指令。
使用命令行对象的各种属性和方法可以完成如下操作:
设置CommandText属性可以定义命令行的内容,比如SQL语句或存储过程。
使用ExecuteScalar或ExecuteNonQuery方法执行命令。
使用CommandType属性设置命令的类型
●命令生成器—SqlCommandBuilder
在配置了SqlDataAdapter的SelectCommand属性之后,利用SqlCommandBuilder自动生成用于单表更新的Transact-SQL语句,使对DataSet所做的更改与关联的SQLServer数据库相协调。
●SqlDataAdapter对象—数据适配器
它是DataSet和数据源之间的桥梁,可以检索数据源并把数据填充在DataSet,也可以根据DataSet中的数据更新数据源。
使用数据适配器的各种方法可以完成如下操作:
通过Fill方法把数据添加到DataSet中。
通过Update方法实现添加,更新,删除数据源中的记录。
(4)DataSet组件
数据访问技术的一个非常突出的特点就是支持离线访问,而DataSet正是实现离线访问技术的核心。
可以说和以前的数据访问技术之间的最大区别就是在于DataSet的存在。
DataSet是在数据库中检索到