_NET平台下库存管理系统的设计模式研究_第1页
_NET平台下库存管理系统的设计模式研究_第2页
_NET平台下库存管理系统的设计模式研究_第3页
_NET平台下库存管理系统的设计模式研究_第4页
_NET平台下库存管理系统的设计模式研究_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

1、收稿日期:2006-03-25作者简介:汤亚玲(1974-,男,安徽庐江人,讲师,硕士,主要研究方向为智能化信息处理及网络数据库系统;秦峰,教授,硕士生导师,主要研究方向为人工智能、数据挖掘及计算机网络;崔志明,教授,博士生导师,主要研究方向为智能化信息处理、数据挖掘及计算机网络应用。.NET 平台下库存管理系统的设计模式研究汤亚玲1,秦峰1,崔志明2(1.安徽工业大学计算机学院,安徽马鞍山243002;2.苏州大学智能信息处理及应用研究所,江苏苏州215006摘要:库存管理是ERP 系统实施的基础环节,主要实现企业管理中的物资储备的信息化管理,为ERP 系统中的采购、生产、销售提供信息、决策

2、支持。结合工程实践,阐述在.NET 平台下库存管理软件及其设计模式的相关问题,对开发ERP 系统中库存管理具有一定的参考价值。关键词:.NET ;库存管理;软件构架;数据安全中图分类号:TP393107文献标识码:A 文章编号:1673-629X (200612-0133-03R esearch on Design Pattern of InventoryManagement B ased on .NET PlatformTAN G Ya 2ling 1,Q IN Feng 1,CU I Zhi 2ming 2(11School of Computer ,Anhui University of

3、 Technology ,Maanshan 243002,China ;21Institute of Intelligence Information Processing and Application ,Suzhou Univ.,Suzhou 215006,China Abstract :Inventory management ,which realizes the informational management of material inventory ,is the base procedure of ERP system applying.And it supports on

4、information acquirement and decision -making for buying ,production and selling in ERP system.Explain some problem of software and design pattern of inventory management based on .N ET ,and it has some value for realization of inventory management in ERP system.K ey w ords :.N ET ;inventory manageme

5、nt ;software structure ;data security0引言对于企业的生产来说,准确掌握自己各种物料(如:原料、辅料、半成品、成品的库存情况,其重要性是不言而喻的,因为其关系到企业的采购、生产、销售的整个流程的正常运作。但是企业由于各种原因:生产的组织复杂、仓库数目的众多、仓库物理位置上的分散等导致了很难准确掌握企业各种物料现有的库存量,影响了企业的发展。因此作为企业,要提高其生产、管理的效率,库存管理应发挥其基础作用。该系统的原型是基于C/S 模式的ERP 系统1中的库存管理系统,已在常州精科集团投入使用多年,其性能稳定,收到了良好的效果;近年来,由于Web 技术发展和企

6、业信息化管理的需要,已将它移植到微软的.N ET 平台之上,并逐步推广,基本能满足新平台之下的库存管理需要。1库存管理的功能设计.N ET 架构下的库存管理的主要功能模块结构如图1所示,其中系统子模块中包括权限分配(针对系统管理员、 登录密码修改和库存数据的备份与恢复等功能。图1库存管理系统各子模块的具体功能:(1入库管理包括:入库制单、入库复核、入库查询、入库统计等子功能模快。(2出库管理包括:出库制单、出库复核、出库查询、出库统计等子功能模快。(3库存盘点包括:盘点制单、盘点复核、盘点查询、盘点统计等子功能模快。(4库存报损包括:报损制单、报损复核、报损查询、报损统计等子功能模快。(5退货

7、管理包括:退货制单、退货复核、退货查询、退货统计等子功能模快。(6库存查询模块包括:根据库存量的浏览查询、指定第16卷第12期2006年12月计算机技术与发展COMPU TER TECHNOLO GY AND DEV ELOPMEN TVol.16No.12Dec.2006 条件的库存货品查询、任意指定时间段的库存变化的(入库、出库、盘点、报损、退货库存货品数量的汇总(即计算仓库的库存月平衡表、季度平衡表、年平衡表。图2.N ET 下软件架构图(7系统设置模块中包括:库存的初始化、库存最高限量最低限量的设定、仓库管理员的权限设定(由系统管理员来进行分配、密码设定、库存数据备份恢复等功能。对仓库

8、管理员来说,入库、出库、盘点、报损、退货均可以改变当前的货品的库存量,因此,慎重起见,对上述操作都要经过制单、复核两步操作流程。对查询统计模块来说:入库、出库、盘点、报损、退货等功能的查询统计的结果可以根据多种条件的组合进行计算得出。条件一般有输出形式(表单、明细或仅货品编号、时间、审核或未审核、指定单号、指定货品编号名称、与库存相关的经济单位等。2软件详细设计2.1软件功能分配一般地,B/S 模式的软件体系分成四层:用户界面层、Web 服务层、应用组件层和数据库层。用户界面层主要利用ASP.N ET 构造用户界面,.N ET 的Web 服务通过HTML ,XML 或SOAP 传递数据信息可应

9、用于多种设备或终端(如IE ,PDA ;Web 服务层负责处理来在客户端的请求,对客户端身份进行安全验证,根据请求的内容来决定是否需要调用后台Web Service 服务,如是则访问应用组件层的相应服务,并将所得结果进行返回给客户端,否则由本层负责解释执行。应用组件层是.N ET 框架2,3的核心,本库存系统提供给用户的功能基本由该层实现,包含多个不同功能的Web Service ,如库存统计、库存查询、库存报表等,并通过发布相应的.N ET 组件来实施。数据库层主要由各种类型的数据库系统组成,与组件层通过ADO.N ET 来进行数据通讯,ADO.N ET 定义了一个完全基于XML 的数据集,

10、能用XML 格式与多种数据库系统进行数据交换。上述的软件架构模式的重要特点是简化了客户端的软硬件要求,将应用逻辑分配在Web 服务层和组件层,客户端仅仅接受用户的请求和Web 服务器端发过来的相关数据;中间层为Web 服务层和组件层,负责应用处理业务规则、数据访问、合法性校验等工作3;底层为数据库层的数据库服务器端,负责数据处理逻辑,大量后台数据计算将集中在数据库服务器端处理。图2给出了.N ET 下库存管理的软件架构。2.2关键数据处理技术.N ET 软件架构下,业务处理逻辑和数据处理逻辑被分配在中间层(包括Web 服务层和应用组件层和数据库层,而作为数据库的应用程序,特别是大型数据应用处理

11、程序,许多数据处理工作是在数据库服务器端完成的,而大型的数据库系统,如Oracle ,SQL Server 为人们提供了很多高级的数据库技术来实现这些要求,文中将阐述在库存管理中所采用的一些关键数据处理技术。精科集团的库存入库货物源由以下几个部分组成:成品入库、半成品入库、采购入库(供应商、企业代工等、领料入库、库间调拨等,在建立入库表单时采用建立视图的方式将多种入库来源连接在一起,屏蔽表间数据的差异性,提供给用户统一整齐的查询界面,大大方便了用户的管理,对于出库、退货等也做类似的处理。以下给出了入库货源的视图的T -SQL 代码。CREATE V IEW dbo.V -rkdwml ASSE

12、L ECT cj -bh AS bh ,cj -mc AS mc ,cj AS lx FROM zd -cjml UN ION ALLSEL ECT ck -bh AS bh ,ck -mc AS mc ,ck AS lx FROM zd -ckml UN ION ALLSEL ECT gys -bh AS bh ,gys -mc AS mc ,gys AS lx FROM zd -gysml UN ION ALLSEL ECT xz -bh AS bh ,xz -mc AS mc ,xz AS lx FROM zd -xzml其中,V -rkdwml 是入库单位的统一视图。从实施数据完整性4

13、,5功能的角度,可以从中间层或数据库层来实现,但从效率的角度考虑后者要大大优于前者,因为从将完整性的维护由数据库服务器来实现的话,可以避免Web 服务器端的计算压力,利用数据库服务器的强大计算资源,同时避免了大量的网络数据传输,提高对用户界面层的服务效率。(1数据表设计:表单表头、表单明细的设计,对入库、出库、盘点、报损、退货等表单的设计一率建立两张表来实现,表头信息包括表单编号、仓库名称、操作员名称、制单时间、审核时间、总金额等信息;表单明细包括表单编号、货品编号、货品名称、货品单价、货品数量、金额等信息。设定表头中表单编号是主键;表单明细中,货品编号、表单编号构成联合主键,表单编号是外键,

14、与表头进行关联。(2触发器维护数据库完整性:触发器是实施参照完431计算机技术与发展第16卷整性和数据的一致性重要手段,从数据存储的效率和范式的角度考虑,在建立入库、出库等表单时都建立通过外键关联方式建立表头和表单明细两张表,它们之间通过表单号外键关联,定义删除和更新触发器来维护表之间的数据一致性,对于插入时的数据一致性由中间层的组件来完成,达到为维护数据完整性和降低中间层计算负荷的目的。(3存储过程实施事务处理逻辑:存储过程是预定义的存储在数据库服务器端且已编译好的一组T-SQL代码,具有安全、高效的优点。存储过程中,通过定义事务、开启事务、提交事务和回滚事务等手段,实现在库存管理中的基本库

15、存操作,如入库、出库等,达到数据操作中高效读写多张表,同时保证多张表之间的数据完整性、一致性。(4规则、约束的使用:规则、约束是在大型数据库检验数据合法性,实现用户自定义完整性和域完成性的重要方法,在本系统的开发中,对一些用户自定义的数据类型,如仓库类型、入库类型、用户类型以及表单处理状态定义了相关的规则和约束,保证数据的准确性、唯一性。库存管理系统的管理对象是多个物理位置上分散的仓库,而这些仓库的操作员(或仓管员可能同时对库存的数据进行操作。因此为了保证数据的正确性,数据存取的并发控制尤其重要,本系统采用的方法是:利用事务处理逻辑(transaction对数据的并发存取进行控制。事务处理具有

16、以下的特性:(1原子性:事务的所有操作在数据库中要么全部正确反映出来,要么全部不反映出来。(2一致性:事物的隔离执行,即没有并发执行的其它事务,保持数据库的一致性。(3隔离性:尽管多个事务可以并发执行,但系统保证对任一事务对T x和T y之间的无关性,在T x看来T y或者在T x开始之前已经停止执行,或者在T x完成之后开始执行。(4持久性:一个事务成功完成后,它对数据库的改变必须是永久的。在具体实施时,对任意的事务,要么处理完成(com2 mit,要么滚回(rollback。多个事务同时提交时,数据库系统会对多个事务采用可串行化策略,或者加锁,保证多个事务的正确执行,维护数据的完整性和一致

17、性。3库存报表的实现也称库存汇总或库存平衡表,主要实现一段时间内的库存的动态变化数据的汇总,让管理者对库存的变动有总体上的把握,也是ERP系统开发中的一大难点,本系统根据精科集团的业务需求,实现了任意给定时间段库存报表,为企业的管理提供了极大的便利。由于库存汇总牵涉库存管理中的入库、出库、退货、报损、盘点、库间调拨等业务,本系统为实现这一功能,编写数据库服务器端的存储过程,建立事务处理逻辑如下:第一步:回推到起始时间的库存量,它包括:(1加上现在到起始时间的所有的出库量(注意:现在日期不一定等于终止日期;(2减去现在到起始时间的所有的入库量;(3加上现在到起始时间的所有的报损量;(4减去现在到

18、起始时间的所有的盘点赢亏;(5减去现在到起始时间的所有的退货量。第一步得到上期结存数量。第二步:计算起始日期到终止日期的所有入库量。将所有的始日期到终止日期的所有入库量累加起来得到指定时间段的货品入库量。第三步:计算起始日期到终止日期的所有出库量。将所有的始日期到终止日期的所有出库量累加起来得到指定时间段的货品出库量。第四步:计算起始日期到终止日期的所有报损量。将所有的始日期到终止日期的所有报损量累加起来得到指定时间段的货品报损量。第五步:计算起始日期到终止日期的所有盘点盈亏量。将所有的始日期到终止日期的所有盘点盈亏累加起来得到指定时间段的货品盘点盈亏量。第六步:计算起始日期到终止日期的所有退

19、货量。将所有的始日期到终止日期的所有退货量累加起来得到指定时间段的货品退货量。第七步:算出本期结存。总计算公式:本期结存=上期结存+本期收入-本期发出-本期报损+盘点盈亏+本期退货该存储过程较长,牵涉多张表的数据复杂计算,限于篇幅,这里不给出其T-SQL代码。4系统安全4.1权限管理库存管理系统是典型的多用户数据库(计划员、仓管员、系统管理员等应用,各个用户的职能权限不一样,计划员负责制单操作;仓管员进行复核;系统管理员对整个系统进行管理,包括用户权限分配、密码设定、系统维护等工作。因此对于本系统应有完善的系统管理。针对于此,笔者单独开发一个子模块,进行权限分配、密码管理等工作,相应地,在后台

20、建立其相应的数据表,用来保存各个用户信息(用户账号、密码、模块访问控制等,通过系统管理员分配用户账号、密码来管理用户登录,而通过模块访问控制来实现用户权限分配,达到使不同的用户拥有对不同模块不同的访问权限(读、写。保证了整个库存管理系统的正常运转。4.2数据访问可以利用大型数据库较为完善的安全策略,通过身份(下转第138页531第12期汤亚玲等:.N ET平台下库存管理系统的设计模式研究索者看来非规格化可以实现其他一些有价值的目标,但是对信息的使用者来说非规格化并不能增加他们的性能需要,有经验的数据仓库管理员发现将经常一起使用的相关类型的数据存储在一起是一件非常有意义的事情。在图2中数据被规格

21、化并且分开,这样每年中的所有月份被分别放置在不同的物理位置上,如果某个查询要查看一月、二月、三月等月份中的数据,那么系统必须到不同的地方去搜索数据。这里创建一个数据阵列,将相关的数据放在同一个物理位置上,现在如果做相关的查询只需要物理访问系统一次,因为这些数据已经被最佳地放置从而适应这样的要求。如果没有确认的和有规则的需求来同时查看一年中的某些月份,使用这种技巧并不能优化性能,信息使用者经常使用可预测和有规律的数据,所以这样的技巧可以很好地完成。图2所示为将相关类型数据一起存储 的情形。图2利用数据阵列并置相关数据5结束语在使用并行技术从体系结构上扩展数据仓库的同时,通过对数据仓库几个关键问题

22、的研究,使得当大量异构数据进入数据仓库时,数据仓库的性能不会变差,并维持良好的决策支持。参考文献:1Inmon W H.Building the Data WarehouseM.王志海等译.北京:机械工业出版社,2000.2Strum J.Microsoft SQL Server7数据仓库技术指南M .刘汉宇等译.北京:机械工业出版社,2000.3Bergamaschi S ,Castano S ,Vincini M.Semantic Integration ofSemistructured and Structured Data Sources J .SIGMOD Record ,1999,

23、28(1:54-59.4Bitton D ,Dewitt D J.Duplicate Record Elimination in LargeData FilesJ .ACM Transactions on Database Systems ,1983,8(2:255-265.5Kukich K.Techniques for Automatically Correcting Words inText J .ACM Computing Surveys ,1992,24(4:377-439.6Chan C Y ,Ioannidis Y E.Bit map Index Design and EvaluationR .Computer Sciences Dept.,University of Wisconsin -Madison ,1997.7Inmon W H

温馨提示

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

评论

0/150

提交评论