物流管理信息平台仓储子系统的设计与开发含源代码.docx
- 文档编号:6459217
- 上传时间:2023-01-06
- 格式:DOCX
- 页数:40
- 大小:1.69MB
物流管理信息平台仓储子系统的设计与开发含源代码.docx
《物流管理信息平台仓储子系统的设计与开发含源代码.docx》由会员分享,可在线阅读,更多相关《物流管理信息平台仓储子系统的设计与开发含源代码.docx(40页珍藏版)》请在冰豆网上搜索。
物流管理信息平台仓储子系统的设计与开发含源代码
第一章绪论
1.1课题背景及意义
随着我国的经济高速发展,社会主义市场经济也在不断完善,有序的市场竞争机制已经逐步形成。
在市场竞争机制的作用下,社会对现代物流服务需求表现得越来越强烈。
近年来,物流业在我国迅猛发展,己经成为我国国民经济的一股重要力量。
但与发达国家相比,我国的物流业整体水平不高,信息化水平亟待提高,而“信息化被看作是获得未来物流竟争优势的关键因素之一[1]”。
一方面,随着我国信息化的深入,越来越多的企业开始意识到,落后的物流管理使企业的成本大大增加,同时也使企业在需求多样化的市场面前处于被动地位。
另一方面,目前我国的物流行业的整体状况还比较混乱,大部分企业虽然打着物流企业的旗号,但缺乏现代物流领域的特征和竞争力,整个物流市场处于重新洗牌和优胜劣汰的调整过程中。
在国内,随着互联网应用的迅速普及和企业电子商务的普遍开展,人们开始意识到物流管理的巨大威力,物流软件越来越受到国内企业的青睐。
目前,我国的物流软件市场还处于发展初期,物流软件还存在产品功能单一、技术落后等问题,受网络经济和知识经济的影响,物流管理系统正日益成为企业发展的瓶颈。
对于多样的商品或货物以及不同的客户需求,第三方物流企业必须找出合理的进行仓储管理的解决方案,提高自己的工作效率和服务水平。
1.2第三方物流信息平台仓储管理系统概述
1.2.1第三方物流
第三方物流产生于20世纪70年代的美国,物流作为企业联系客户和消费者的重要环节,第三方物流是社会化专业分工的产物,也是现代物流的一种发展趋势,它的发展程度反映和体现着一个国家物流业发展的整体水平。
我国的《物流术语》国家标准中是这样定义第三方物流的:
“第三方物流是由供方与需方以外的物流企业提供物流服务的业务模式。
[1]”即第三方物流(3PL)是相对“第一方”发货人和“第二方”收货人而言的,它既不属于第一方,也不属于第二方,而是通过与第一方或第二方的合作来提供专业化的物流服务。
美国著名的MERCER管理顾客公司对第三方物流的定义为:
“向发货人或收货人提供从物流节点的功能服务,到更大范围的物流渠道的一体化服务;把运输管理、存货调度和信息技术结合起来,以较低的渠道总成本向客户提供增值服务。
[2]”
还有的学者认为,第三方物流是第三方物流提供者在特定的时间段内按照特定的价格向使用者提供从系统设计、计划、管理到实施全面个性化的系列物流服务,这种物流服务是建立在现代电子信息技术基础上的,企业之间是联盟关系。
但是,我觉得不论哪种定义几乎都表明这样的一层意思:
第三方物流是由买卖双方以外的第三方来承担物流职能的业务模式。
所以我们将提供第三方物流服务的企业称之为第三方物流企业,有时人们也将其直接简称为第三方物流。
随着物流技术的不断发展,第三方物流作为一个提高物资流通速度、节省仓储费用和资金在途费用的有效手段,已越来越引起人们的高度重视。
1.2.2物流信息与物流管理信息系统
物流信息是物流系统的重要组成部分和要素之一,是指在物流活动过程中产生及使用的必要信息,在《物流术语》中将物流信息定义为:
“反映物流各种活动内容的知识、资料、图像、数据、文件的总称[3]”。
实质上,物流信息是与具体的物流活动如运输、储存和保管、包装、装卸搬运、配送等有关的信息。
物流信息将物流的各个活动有机地结合在一起,使整个物流系统的功能得以充分发挥。
物流管理信息系统(logisticsmanagementinformationsystem)是根据物流运作、管理和决策的需要,利用计算机硬件、软件、网络通信及其他设备,进行物流信息收集、传输、加工、储存、更新和维护,以支持物流管理人员、操作员和客户信息进行物流管理和运作、协调和控制各作业子系统正常运行的信息系统[3]。
它是现在数据库技术和物流业务紧密结合的管理信息系统。
1.2.3仓储管理系统
仓储是指通过特定场所储存和保管物资和商品的行为,是对有形物品提供存放场所、存储物品过程和对存放物品的保管、控制的过程,是物品离开生产过程但尚未进入消费过程的间隔时间内的物流停滞。
[4]“仓”也称为仓库,指存放货物的建筑物及场地,可以是房屋建筑、大型容器、洞穴或特定的场地等,具有存放和保护货物的功能;“储”表示收存以备使用,具有保存、保管、交付使用的意思。
它是包含库存和储备在内的一种经济现象,普遍存在与一切社会现象中。
仓储是物质产品的生产持续过程,仓储活动随着物资储存的产生而产生,又随着生产力的发展而发展。
仓储是商品流通的重要环节之一,也是物流活动的重要支柱,在社会分工和专业化的条件下,为保持社会再生产的顺利进行,必须储存一定量的物资,以满足一定时间内社会生产和消费的需要。
仓储管理是服务于一切库存货物的经济技术方法与活动,其主要涉及仓库的选址与建筑问题,仓库机械作业的选择与配置问题,仓库的入库、保管、分拣、出库、发货等业务管理。
仓储管理系统(warehousemanagementsystem,WMS)是一种专门用于跟踪和管理仓储中一切活动的信息系统。
[5]主要是运用实时数据采集和数据库技术,WMS为物流仓储环节提供了从订单开始到收货、分配仓位、盘点、货物出库到货物装运全过程的信息处理和管理功能,合理的仓储管理系统有利于提高企业的核心地位。
1.3仓储管理系统的发展现状
近几年,我国的仓储管理系统的研究取得了很大进展。
2005年3月,郑州大学的李波将仓储管理的软件思想结合控制理论的知识,将软件和硬件结合在一起,所建系统不仅直接将底层基础数据由电子标签子系统传给智能控制子系统,并且融WMS、电子标签、智能控制于一体。
[6]8月,辽宁师范大学的付万、王月、朱元祥建立的现代物流管理系统,充分发挥了GIS(GeographyInformationSystems)空间查询、动态分析及管理决策等功能,并有针对性地处理物流配送中的货物运输、仓储、装卸、送递等各个环节所涉及的关键问题。
[7]9月,武汉理工大学的陈思云、刘天竹通过对现有WMS运行状况、运行效率不尽人意地方的深入思考,提出了针对体系架构、功能模块、数据流程以及实施过程中的技术改进方案[8]。
北京科技大学蒋宝家、郑荣、董绍华介绍了可视化仓库管理系统的概念并建立了系统的配置方案。
[9]11月,山东大学的魏强、吴耀华、张兰华从应用背景出发,对条码技术在WMS中的应用进行了可行性分析,结合无线射频技术对条码的使用进行了系统设计和条码设计。
[10]2006年,成都电子科技大学的王剑、周明天介绍了采用J2EE的多层应用体系结构,同时使用AdventNetSNMPAPI(AdventNetSimpleNetworkManagementProtocolApplicationProgrammingInterface)构建底层应用开发WMS的方法。
[11]这些理论方法研究所取得的进步为仓储系统广泛的商业应用奠定了理论基础。
到2004年11月为止,IBM、用友ERP,Microsoft、威马施物流软件(北京)有限公司都有仓储管理系统产品投入国内市场,功能包括货位管理、收货管理、出货管理、库内作业和查询报告等[12]。
2005年3月,深圳东陆高新实业有限公司生产部门采用的仓库管理系统包括基本资料模块、现有库存模块、入库模块、出库模块、报表模块、查询模块以及采购模块,对电子元器件进行仓储管理。
[13]深圳慧通有限公司专门为中小型物流企业设计了集仓库管理、.货物管理、仓库货物进出库管理、客户业务统计、进出库统计等功能的综合性仓储管理系统[14]。
2005年4月,日本静冈市从事软件包装配制作与物流业务的日本技术株式会社引进了SLCLogiStream.NET公司的WMS系统(Logistream),该系统能够对软件包里的材料进行高效正确的位置管理,利用Web向顾客展示在库与装配信息,从顾客那里接受制造指示和出货指示,有效地管理制造与物流业务[15]。
吴文琦提出了基于射频技术的无线仓储管理系统解决方案。
该方案依托企业现有的管理系统将射频技术、条形码和无线计算机网络技术相结合,集成了先进的软硬件系统[16]。
该系统将重点放在了数据发生的现场即仓库,从根本上保证了实际操作、物流状态和后台数据库三方面随时随地准确统一,同时进一步提高了作业效率,真正实现库房的科学管理。
从网上的搜索显示,在海尔特有的仓储管理模式中,仓库不再是储存物资的水库,而是一条流动的河。
河中流动的是按单采购来生产必需的物资,也就是按订单来进行采购、制造等活动。
目前,海尔集团每个月平均接到6000多个销售订单,这些订单的品种达7000多个,需要采购的物料品种达26万余种。
在这种复杂的情况下,海尔通过合理的信息化管理,使呆滞物资降低了73.8%,仓库面积减少50%,库存资金减少67%。
海尔国际物流中心货区面积7200平方米,但它的吞吐量却相当于普通平面仓库的30万平方米。
同样的工作,海尔物流中心只有10个叉车司机,而一般仓库完成这样的工作量至少需要上百人。
目前,仓储货物的集装单元化技术、通用仓储机械、分拣系统、自动仓储控制系统、高架仓库和仓库选址和规划技术已经开始逐步推广。
近年来,仓储设备和机械化、自动化仓库的需求量已有所增长。
随着我国经济的持续高速发展,过去较为落后的仓储装备的发展空间更大。
我国设计、制造的自动化仓库几乎全部是分离式自动化仓库和托盘单元式自动化仓库。
但大型、高层的自动化仓库,国外为降低成本,往往采用整体或自动仓库,如:
1998年日本整体式自动仓库年建72座(占总量的9%),但其产值达319.35亿日元(占总产值的51%)。
此外,适用于家电、医药、电子等行业的箱盒单元大自动仓库必将有广阔的应用前景,如:
1990年日本建箱盒单元式自动仓库316座(占总量的18%),年增长率达157%。
(数据引自:
中国物流产品网) 在入出库系统方面,我国日前大多采用链式和辊道输送机组合而成,这样则降低了我们的工作效率,同时也会影响到我们的收益,应开发高速轨道式输送台年及其系统、滑块式分拣输送机、自动搬运车系统(AGVS)等高效、柔性的人出库输送设备及其系统。
随着仓库设备及其系统的自动化、高速化,条码技术和自动识别技术必将成为信息录入和系统的瓶颈。
现代仓储系统是基于网络的由计算机控制的复杂系统,因此仓库管理系统软件、运输管理软件、车辆管理GPS/GIS软件、销售和分销软件、物料采购软件等和综合性的企业制造资源计划(MRP-Ⅱ),企业资源计划(ERP)软件等都将有较大的需求和发展。
第三方物流的仓储管理和普通的仓储管理最大的不同就是利用信息化的手段及时满足不同的客户的需求。
仓储管理只有利用计算机系统及各种先进的设施才能跟上企业业务不断发展,才能在激烈的市场竞争市场中赢得客户。
因此,仓储管理信息化是第三方物流企业成功的必由之路。
1.4本课题所做的主要工作
通过收集与阅读大量相关理论书籍、实践方案和客户合理化建议文档,利用VisualC#2005作为开发工具,开发一个第三方物流信息管理平台仓储管理子系统的模块,来满足企业在仓储管理方面的整体需求,主要工作如下:
1.简单地阐述了第三方物流管理信息平台仓储管理系统的相关知识,发展背景,国内外现状以及所需要的开发工具和技术。
2.对仓储管理系统进行详细的流程需求分析,以提高整体工作效率,以满足未来客户的多种服务需求。
3.对仓储管理系统进行总体结构和功能进行设计,从实现角度把较复杂的仓储管理系统进一步分解,经过分解之后应该使每个功能模块对大多数程序员而言都是明显易懂的,主要包括入库流程设计、库存管理设计、预警管理设计、出库管理设计以及各个模块的界面设计等等。
根据这些功能模块来确定软件由哪些模块组成,以及这些模块之间的关系,通常程序中的一个模块完成一个适当的子功能,最终实现系统的调试。
第二章仓储管理系统的开发工具及相应技术
2.1VisualC#简介
C#(读做“Csharp”,中文译音“夏普”)是微软公司发布的一种面向对象的、运行于.NETFramework之上的高级程序设计语言,是微软.NET开发环境的重要组成部分。
而MicrosoftVisualC#2005是微软开发的C#编程集成开发环境(同种产品还有Borland公司的C#Builder),它是为生成在.NETFramework上运行的多种应用程序而设计的。
VisualS包含VisualC#,这是通过功能齐全的代码编辑器、项目模板、设计器、代码向导、功能强大且易于使用的调试器以及其他工具实现的[17]。
通过.NETFramework类库,可以访问多种操作系统服务和其他有用的精心设计的类,这些类可显著加快开发周期。
微软公司的VisualStudio.NET是目前使用最广泛、性能最优秀的开发平台之一。
C#简单、功能强大、类型安全,而且是面向对象的。
C#凭借它的许多创新,在保持C样式语言的表示形式和优美的同时,实现了应用程序的快速开发。
C#来自VisualC++,是C/C++家族的新成员;C#的程序结构风格和Java有许多相似之处;C#博采VisualBasic的简单朴实直观的特点,形成了一个完全面向对象的、类型安全的、功能强大又简易友好的新型软件开发工具。
总之,C#融会了许多语言的优点,代表了当今编程语言的最新成果,体现了未来的软件架构,适应了Internet应用开发的需要。
2.2ADO.NET简介
ADO.NET的名称起源于ADO(ActiveXDataObjects),这是一个广泛的类组,用于在以往的Microsoft技术中访问数据。
它提供了平台互用性和可伸缩的数据访问。
ADO.NET增强了对非连接编程模式是支持,并支持RICHXML。
由于传送的数据都是XML格式的,因此任何能够读取XML格式的应用程序都可以进行数据处理。
事实上,接受数据的组件不一定要是ADO.NET组件,它可以是基于一个MicrosoftVisualStudio的解决方案,也可以是任何运行在其它平台上的任何应用程序。
ADO.NET是一组用于和数据源进行交互的面向对象类库。
通常情况下,数据源是数据库,但它同样也能够是文本文件、Excel表格或者XML文件。
ADO.NET允许和不同类型的数据源以及数据库进行交互。
然而并没有与此相关的一系列类来完成这样的工作。
因为不同的数据源采用不同的协议,所以对于不同的数据源必须采用相应的协议。
一些老式的数据源使用ODBC协议,许多新的数据源使用OleDb协议,并且现在还不断出现更多的数据源,这些数据源都可以通过.NET的ADO.NET类库来进行连接。
ADO.NET提供与数据源进行交互的相关的公共方法,但是对于不同的数据源采用一组不同的类库。
这些类库称为DataProviders,并且通常是以与之交互的协议和数据源的类型来命名的。
ADO.NET包含的对象:
(1)SqlConnection对象
和数据库交互,你必须连接它。
连接帮助指明数据库服务器、数据库名字、用户名、密码,和连接数据库所需要的其它参数。
connection对象会被command对象使用,这样就能够知道是在哪个数据库上面执行命令。
与数据库交互的过程意味着你必须指明想要发生的操作。
这是依靠command对象执行的。
你使用command对象来发送SQL语句给数据库。
command对象使用connection对象来指出与哪个数据库进行连接。
你能够单独使用command对象来直接执行命令,或者将一个command对象的引用传递给SqlDataAdapter,它保存了一组能够操作下面描述的一组数据的命令。
(2)sqlDataReader对象
许多数据操作要求你只是读取一串数据。
datareader对象允许你获得从command对象的SELECT语句得到的结果。
考虑性能的因素,从datareader返回的数据都是快速的且只是“向前”的数据流。
这意味着你只能按照一定的顺序从数据流中取出数据。
这对于速度来说是有好处的,但是如果你需要操作数据,更好的办法是使用DataSet。
(3)DataSet对象
DataSet对象是数据在内存中的表示形式。
它包括多个DataTable对象,而DataTable包含列和行,就象一个普通的数据库中的表。
你甚至能够定义表之间的关系来创建主从关系(parent-childrelationships)。
DataSet是在特定的场景下使用――帮助管理内存中的数据并支持对数据的断开操作的。
DataSet是被所有DataProviders使用的对象,因此它并不像DataProvider一样需要特别的前缀。
(4)SqlDataAdapter对象
某些时候你使用的数据主要是只读的,并且你很少需要将其改变至底层的数据源。
同样一些情况要求在内存中缓存数据,以此来减少并不改变的数据被数据库调用的次数。
Dataadapter通过断开模型来帮助你方便的完成对以上情况的处理。
当在一单批次的对数据库的读写操作的持续的改变返回至数据库的时候,Dataadapter填充(fill)DataSet对象。
dataadapter包含对连接对象以及当对数据库进行读取或者写入的时候自动的打开或者关闭连接的引用。
另外,dataadapter包含对数据的SELECT,INSERT,UPDATE和DELETE操作的command对象引用。
你将为DataSet中的每一个table都定义dataadapter,它将为你照顾所有与数据库的连接。
所有你将做的工作是告诉dataadapter什么时候装载或者写入到数据库。
总之,ADO.NET是与数据源交互的.NET技术。
有许多的DataProviders,它将允许与不同的数据源交流――取决于它们所使用的协议或者数据库。
然而无论使用什么样的DataProvider,你将使用相似的对象与数据源进行交互。
SqlConnection对象管理与数据源的连接。
SqlCommand对象允许你与数据源交流并发送命令给它。
为了对进行快速的只“向前”地读取数据,使用SqlDataReader。
如果想使用断开数据,使用DataSet并实现能进行读取或者写入数据源的SqlDataAdapter。
2.3ASP.NET网页开发技术概述
ASP.NET是M的一部分,作为战略产品,不仅仅是ActiveServerPage(ASP)的下一个版本,它还提供了一个统一的Web开发模型,
其中包括开发人员生成企业级Web应用程序所需的各种服务。
ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。
可以通过
在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强ASP应用程序的功能。
ASP.NET是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。
ASP.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。
这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。
ASP.NET提供了稳定的性能、优秀的升级性、更快速的开发、更简便的管理、全新的语言以及网络服务。
贯穿整个ASP.NET的主题就是系统帮用户做了大部分不重要的琐碎的工作。
新的ASP.NET引入受管代码(ManagedCode)这样一个全新概念,横贯整个视窗开发平台。
受管代码在NGWSRuntime下运行,而NGWSRuntime是一个时间运行环境,它管理代码的执行,使程序设计更为简便。
在ASP.NET里,你将会拥有一个“Data-Bounds”
(数据约束),这意味着它会与数据源连接,并会自动装入数据,使控制工作简单易行。
ASP.NET支持多种语言,支持编译类语言,支持比如VB、VC++、C#等,它比这些编译类语言运行速度快,更适合编写大型应用。
快速发展的分布式应用也需要更快速、更模块化、更易操作、更多平台支持和重复利用性更强的开发,需要一种新的技术来适应不同的系统,网络应用和网站需要提供一种更加强大的可升级的服务。
ASP.NET能够适应上面的要求。
2.4Access数据库简介
在办公软件Office套件中,最为广大用户熟悉的是Word和Excel,因为它们功能强大且方便易用,更因为它们不仅可用于办公,还可用于个人写作和家庭记帐理财等。
同为Office套件中一部分的Access,虽然有着同样强大的功能,但使用的人却相对少些,不像Word和Excel那样广泛。
Access97数据库管理系统是MicrosoftOffice97套件的重要组成部分,是Access的最新版本,可在Windows95环境下运行。
Access97适用于小型商务活动,用以存贮和管理商务活动所需要的数据。
Access97不仅是一个数据库,而且它具有强大的数据管理功能,它可以方便地利用各种数据源,生成窗体(表单),查询,报表和应用程序等。
表与表之间可以建立关系(或称关联,连接),以便查询相关联的信息。
Access数据库以文件形式保存,文件的扩展名是MDB。
Access数据库由七种对象组成,它们是表、查询、窗体、报表、宏、页和模块。
表(Table)——表是数据库的基本对象,是创建其他5种对象的基础。
表由记录组成,记录由字段组成,表用来存贮数据库的数据,故又称数据表。
查询(Query)——查询可以按索引快速查找到需要的记录,按要求筛选记录并能连接若干个表的字段组成新表。
窗体(Form)——窗体提供了一种方便的浏览、输入及更改数据的窗口。
还可以创建子窗体显示相关联的表的内容。
窗体也称表单。
报表(Report)——报表的功能是将数据库中的数据分类汇总,然后打印出来,以便分析。
宏(Macro)——宏相当于DOS中的批处理,用来自动执行一系列操作。
Access列出了一些常用的操作供用户选择,使用起来十分方便。
模块(Module)——模块的功能与宏类似,但它定义的操作比宏更精细和复杂,用户可以根据自己的需要编写程序。
模块使用VisualBasic编程。
页(Page)——是一种特殊的直接连接到数据库中数据的一种WEB页。
通过数据访问页将数据发布到Internet或Intranet上,并可以适用浏览器进行数据的维护和操作。
ACCESS缺点:
安全性不够,加了用户级密码容易破解,如果做为服务器的话,对服务器要求很高,否则容易造成MDB损坏。
并发数255,但是对高强度操作适应性差,如果服务器不够好,网络不够好,编程的方法不够好,多人同时访问就能导致MDB损坏。
不能将VBA代码开发的软件系统直接编译成EXE可执行文件,不能脱离ACCESS或者ACCESSRUNTIME环境,该环境相对其他软件体积较大(50M左右)。
2.5B/S模式
B/S结构(Browser/Server结构)结构即浏览器和服务器结构,也称三层结构,或基于Web的信息系统,其结构如下图所示。
图2-1浏览器/服务器结构
它是随着Internet技术的发展和应用的普及,对C/S结构的一种变化或者改进的结构。
在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 物流 管理 信息 平台 仓储 子系统 设计 开发 源代码