仓库管理系统 毕业设计_文献综述

时间:2019-05-13 23:52:57下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《仓库管理系统 毕业设计_文献综述》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《仓库管理系统 毕业设计_文献综述》。

第一篇:仓库管理系统 毕业设计_文献综述

文献综述

仓库管理系统设计与实现

学生姓名

xx

xxx

专业班级

网络工程(信息安全)xxxx班 学

54xxxxxxxxxx

院(系)

计算机与通信工程学院

指导教师(职称)

xx(讲师)

完成时间

2014年 5 月 12 日

仓库管理系统设计与实现

专业班级:网络工程(信息安xx班

姓名:xx 学号5xxx

仓库管理系统的设计与实现

1.引言

随着我国经济的飞速发展,各种类型规模的公司企业迅速崛起,许多从事生产和经营管理的企业都有自己生产和销售的产品,而这些产品都需要储存在仓库中,对于每个企业来说,随着企业规模的不断扩大[1],产品数量的急剧增加,所生产产品的种类也会不断地更新与发展,有关产品的各种信息量也会成倍增长。面对庞大的产品信息量,如何有效地管理仓库产品,对这些企业来说是非常重要的,仓库管理的重点是销售信息能否及时反馈,从而确保企业运行效益[2]。而仓库管理又涉及入库、出库的产品、经办人员及客户等方方面面的因素,如何管理这些信息数据,是一项复杂的系统工程,充分考验着仓库管理员的工作能力,工作量的繁重是可想而知的,所以这就需要由仓库管理系统来提高仓库管理工作的效率,这对信息的规范管理、科学统计和快速查询,减少管理方面的工作量,同时对于调动广大员工的工作积极性,提高企业的生产效率,都具有十分重要的现实意义。

储存产品信息是产品保障信息网络的重要组成部分,是做好产品供应保障工作的基础[3]。产品保障信息网是实现物资储运全过程可视化的前提。目前,有些仓库内部局域网已经建成并投入使用,并与业务主管部门实现了信息沟通,仓库保障信息网在日常航材保障工作中实现了信息沟通,仓库保障信息网在日常产品保障工作中的作用日趋明显[4]。条码技术在储存管理中的应用,可进一步完善系统各仓库之间及各仓库与作业主管部门之间的信息共享和交换功能,最终达到对产品的全程跟踪管理,充分发挥条码技术在整个流通中的作用。

同时,在软件系统的研发过程中,将会融入一种EPR的企业管理思想[5]。大量的研究与实践已经充分表明,ERP作为一种现代企业管理的思想和方法,将其大力地推广应用就是有效的促使我国企业管理朝着更加科学化、合理化和规范化方向发展的一种具体方法和途径。

另外,仓库管理的信息化和可视化,每个企业将会拥有两个仓库,一个是装满货物的仓库,还有一个就是管理系统里的数据库,对上万种货物分别编码,使其成为计算机可识别的语言,形象地说,货架上的号码就是货物的地址,从而避

仓库管理系统设计与实现

专业班级:网络工程(信息安xx班

姓名:xx 学号5xxx 免了货物的分拣和提取时的翻箱倒柜式的查找[6]。

2.目前研究状况

“仓库管理系统”(Warehouse Management System,简称WMS)是用来管理仓库内部的人员、库存、工作时间、定单和设备的软件实施工具[7]。这里所称的“仓库”包括生产和供应领域中各种类型的储存仓库和配送中心。其主要作用是管理和控制仓库所有人出库动态,统计分析库存数据,使决策人员及早发现问题,采取相应措施,调整库存结构,缩短储备周期,加速资金周转,从而保证企业生产中畅通的物流。同时最大限度地降低库存占用,及时补救管理中的漏洞,使库存管理系统实时地反映企业中各个仓库的现时情况,为各类管理人员从不同侧面提供所需信息,以便协调企业经营收到更大效益[8]。

如今,仓库管理系统已经在世界各发达国家广泛应用了,而且应用范围越来越广功能越来越全面,操作越来越简便,成本越来越低廉。主要应用于大中小型企业,工厂,物流公司,超市以及一些科研单位。

3.仓库管理系统的基础内容

仓库管理系统是随着现代计算机技术的发展而产生的,它充分利用计算机程序制定生产系统优化运行方案,可及时调整企业生产过程内外的各种关系。仓库管理系统的基本模块,简单的说,主要包括两大部分,即前台管理系统和后台仓储系统。前台管理系统 对于一个仓库来说其核心就是通过提供科学的进销方式和库存管理来取得高经济效益[9]。一般需求包括:以材料销售为中心,全面支持仓库的产、供、销、存的管理;实现全公司信息资源的共享一计算机自动完成进、销、存情况的分析处理,并自动产生相关执行计划,仓库各部门之间信息的相互传递与处理,实现仓库经营财务的计算机管理一完成材料销售情况数据的集中管理及处理,实现仓库人、财、物信息管理的计算机化,支持材料的经济核算。

仓储系统虽貌似整个仓库管理系统的主要功能,实现起来却相对简单,共分为:货品分配入库、退库(材料物品返回到厂家)、库存调整、价格调整、出库及出库审批、销售汇总、库存盘点。货品分配入库主要是靠物品字典里的物品去进行维护的。

使用WMS会在下列四方面给仓库带来切实的效果:为仓库作业全过程提供

仓库管理系统设计与实现

专业班级:网络工程(信息安xx班

姓名:xx 学号5xxx 自动化和全面纪录的途径,改变传统上的固定货位,实现全库随机储存[10]。从而最大限度利用仓库,提高发货的质量和正确性,减少断档和退货,从而提高顾客的满意程度。为仓库的所有活动、资源和库存水平提供即时的正确信息。以上这些效果无疑会带给仓库明显的效益,据估算,配进能力一般可提高20~30%,库存和发货正确率超过99%[11]。仓库空间利用率提高,数据输入误差减少,库存和短缺损耗减少,劳动、设备、消耗等费用降低。这些最终将为仓库带来巨大的经济效益。

但是,对于一个企业或单位是否要安装一个适合其自身规模的仓库管理系统,应当首先考虑其成本投入是否在自身负担能力以内。其次考虑回收成本的时间是否远远短于其带来效益的时间,也就是说,考虑成本投入是否可在短期内被其经济效益所补偿并迅速达到盈利,尤其是对于那些资金周转较慢的企业,是否马上应用仓库管理系统,应当谨慎考虑[12]。一般来说,一个仓库管理系统的成本核算除软件开发和硬件安装本身的费用外还应包括以下费用:设备占用面积的租金、税费、水电冷气、消防设备、运转养护成本、人工成本和供增值服务的费用(如礼品化包装或增加个性化问候卡等)。同时,由于这些支出有的是一次性支出的,有的是分期支付的,我们要确切衡量每一种方案的年度运营支出,可根据设备的折旧年限和期望的报酬率进行折现,比较每种方案的折现现金流出。把一次性或周期性的成本支出换算成一定年限内的平均支出。

当然,除考虑成本本身外,我们还应:着眼于实际业务需要,而不是为自动化而自动化,进行技术评估,根据库房吞吐量和存储需要,确定是否需要自动化和自动化要达到的程度,确定实施自动化后,对设备的性能进行详细审视。据英国某杂志报导,某洁具生产厂使用WMS后仓储费用年节约39.3万英镑,其全部总投资在14个月内完成回收。美国一些杂志认为一个WMS一般能在2年内获得回报,还有人估计3500平方米以上仓库用户,可望在1年内回收成本[13]。由于经济效益的驱动,WMS的用户日益增多,并从大企业向中小企业发展。据资料显示,1998年WMS垒球销售6.1亿美元,用户中大户占41%,中户占42.2%,小户占16.8%,2003年小户比重几近增加一倍[14]。同时,由于市场竞争和电子技术的降价,WMS价格太幅下降,从1993年到1998下跌46%,从而为中小企业使用WMS创造更多的条件。当然,一个企业如果不能确认在几年或 3

仓库管理系统设计与实现

专业班级:网络工程(信息安xx班

姓名:xx 学号5xxx 更短时间内能回收投资,还应谨慎考虑,如果回收有望,则不必犹豫等待。WMS的应用需与许多电子技术相配合,如条码、射频通信等等,达就提醒我国在引进应用时,更应结合国情,适当改进,以切实用。

总之,先进的企业需要一套先进的仓库管理系统。通过运用世界领先的IT技术和专业化的物流运作经验能够使信息集合商业运作以及客户服务向着专业化、国际化的方向发展,并最终给企业带来实际的利益,相信企业能够因此实现更大的飞跃。

仓库管理系统目的是为了完善仓库管理,提高工作效率[15]。完善的仓库管理系统可以实现仓库的精细化管理:对货物存储和出货进行动态安排,对仓库作业流程的全过程进行电子化操作,达到投入少,产出多的结果,使企业取得最佳的经济效益。

4.参考文献

[1](美)Robert A.Schultheis.Management Information System(FOURTH EDITION).北京:机械工业出版社(影印),1998 [2]Sarah E.Hutchinson, Stacey C.Sawyer COMPUTERS,COMMUNICATIONS,AND INFORMATION(Seventh Edition).Boston:McGraw-Hill Companies,2001 [3](美)Jeffrey L.Whitten,Lonnie D.Bentley,Kevin C.Dittman.SYSTEM ANALYSIS AND DESIGN METHODS(Fifth Edition).Boston:McGraw-Hill Companies,2001 [4]H.S.ACKLEY.A PDF417 TUTORIAL.INTERMEC CORPORATION, 1992 [5]E.R.Berlekamp.Algebruic Coding Theory.Mc-Graw-Hill,1968 [6] 数据库概论/王珊等编著。高等教育出版社, 2003.2 [7] Visual Basic 6.0程序设计工程师/网冠科技编著。机械工业出版社 2001.2 [8] 薛华成主编.管理信息系统.北京:清华大学出版社,1999 [9] 黄梯云主编.管理信息系统.北京:高等教育出版社,1999 [10] 张国锋主编.管理信息系统.北京:机械工业出版社,2001 [11] 龚沛曾等编.Visual Basic程序设计教程.北京:高等教育出版社,1998 [12]邓凤祥.现代物流成本管理.经济管理出版社, 2004, 91-92.[13丁言立.•现代物流中心信息系统的构建.物流技术, 2005, 11(6): 67-68.[14]邬星根, 李莅.仓储与配送管理.复旦大学出版社, 2005, 85-87.[15]胡宜男.仓库管理的新技术与运用.物流, 2006,(3): 80-81.

第二篇:毕业设计 C#仓库管理系统摘要

渔阳建业有限公司仓库管理信息系统设计

与实现

摘要

在传统仓库管理过程中,表单填写与查询管理都非常的耗费人力物力,最后需要盘点或统计十分耗费时间和人力。同时由于采用手工操作,不可避免造成一些的错误。现在许多公司都采用计算机来管理仓库信息,避免了手工操作的不足。采用仓库管理信息对物资的出入情况进行管理,可以很方便地完成各类统计,为生产销售人员及时提供相关信息。

本系统主要实现仓库管理的自动化,包括货物的入库、出库、调库等操作,及货物有关信息的管理,如仓库单位管理、货物类别管理、供货商信息管理、客户档案管理和仓库管事操作员信息管理等。本系统采用sql 2005作为后台的数据管理系统,以visual studio 2005作为前端开发工具,对数据进行添加、修改、保存、删除等处理,具有很强的实用性。

本系统主要功能是以管理员身份登录能够完成对库存等诸多信息进行实时管理功能。系统以提供操作简单、方便、易懂易用为开发目标,用户界面友好,及具有高效的数据处理能力。

关键词:仓库管理信息管理系统自动化

The Design and Implementation ofYuyang Warehouse Management

Information System

ABSTRACT

In the traditional warehouse management process, it is very costly to

第三篇:仓库出库入库管理系统毕业设计

1概述

1.1 摘要 某供应部门管理多个仓库,仓库主要管理物资的入库、出库、库存和采购等事项。建立一个数据库,实现其先进快速的功能。1.2 1.2 1.2 1.2 可行性分析可行性分析可行性分析可行性分析1.2.1需求需求需求需求可行性可行性可行性可行性 随着科学技术的发展,社会进步,计算机迅速的发展,仓库管理的方法也日新月异,以前全是由人管理的方法现存在很多的缺点:管理效率低,劳动强度大,信息处理速度低而且准确率也不够令人满意。为了提高仓库管理效率,减轻劳动强度提高,信息处理速度和准确性。我们为仓库管理员提供的一种更先进、科学的服务系统。本系统让计算机对仓库进行自动管理,仓库管理员可以直接在计算机上实现仓库的信息管理,并能在一定程度上实现自动化。

1.2.2技术可行性技术可行性技术可行性技术可行性根据客户提出的系统功能、性能及实现系统的各项约束条件,根据新系统目标来衡量所需的技术是否具备,本系统是一个数据库管理和查询的系统,现有的技术以较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。同时考虑给予的开发期限也较为充裕,预计系统是可以在规定期限内完成开发。1.2.3进度管理进度管理进度管理进度管理 1.2.4经济可行性经济可行性经济可行性经济可行性估算新系统的成本效益分析,其中包括估计项目开发的成本,开发费用和今后的运行、维护费用,估计新系统将获得的效益,估算开发成本是否会高于项目预期的全部经费。并且,分析系统开发是否会对其它产品或利润带来一定影响

2.1系统目标系统目标系统目标系统目标由于常规仓库的工作流程建立在手工操作之上而导致处理速度过慢,不能满足管理层和客户的要求,所以新系统开发的总目标是:适应市场经济的需要,提高企业的经济效益,加强仓库各阶段工作的科学管理,并未管理决策提供一定的支持。具体来说库存管理信息系统有如下功能: 2.1.能都对库存数据快速、准确的录入。只有对库存数据快速、准确的录入,才能为后继工作提供良好的数据交易平台。

2.1.对库存基本信息的及时处理。根据出库、入库的基础数据,形成库存的基本信息,管理信息系统运行的基础平台就是整个库存的基本信息。2.1.3决策支持和扶助功能。这体现在能利用本系统的基础信息,通过一定的决策模式,向相关决策和管理人员提供面向业务的辅助决策方案。这里的支持层次分两个,一是面向业务本身,即有关物料的进货问题,如:进货的名称、规格、型号、单价等,另一个层次是面向战略级的企业调整方案,通过对长期的企业存货与市场信息的观察分析,找出变动规律,并据此安排下一个项目部的原材料进货问题。由于时间和能力有限,战略级的决策支持暂不能实现。

第四篇:毕业设计——简历生成与管理系统——文献综述

学号:200826240112冈文师献范综学述院

论文题目:个人简历生成与管理系统作者:崔东移专业班级:软件工程 200801班指导教师:涂 焱 楚

2011年 12 月20日

一、系统发展的历史和开发背景

随着经济全球化深入发展,国际经济环境中不稳定,不确定因素增多,受世界经济金融危机影响,已有一批中小企业关停倒闭,就业岗位大量流失,用工需求急剧下降,并且这种不利影响正逐步扩大。与此同时,国际金融危机的影响进一步显现,可以预见,在未来相当长时期内大学生就业压力不会减弱。如何帮助待业人员走出就业难的困境将成为政府与社会长期而艰臣的任务。

在美国,平均一个职位会有200人应聘,其中100份是合格的,在北京,平均一个职位会收到1000封求职信,其中200封是合格的。据某网站统计,规模较大的企业一般每周要接收500份至1000份电子简历,其中的80%在管理者浏览不到30秒种后就被删除了。要让别人在半分钟内通过一份E-mail对你产生兴趣,其难度与跟用人单位直接见面相比难得多,因此可以触目惊心地看出,一份简历对于一个求职者的重要意义。

找工作,是竞争什么?最开始竞争的是简历!因为你到任何一个招聘单位要做的第一件事情就是要投递简历,而简历就是那些单位了解你的第一扇窗口。因此简历就成了你和单位沟通的第一通道,往往是招聘人员了解你的第一个途径,适度的引起用人单位对你的兴趣才是最重要的。一份好的简历,可以在众多求职简历中脱颖而出,给招聘人员留下深刻的印象,然后决定给你面试通知,它是帮助你应聘成功的敲门砖。

所以说:简历不是很多人认为的用来填写个人的“丰功伟绩”,或者仅仅是把工作经历,学习状况罗列一下。

如果现在是你在找一份合适的工作,并且没有“关系”能帮到你,那么你需要一份合适的简历,你需要认真对待简历,并将简历做好,这样才能敲开面试的大门,找到一份好的工作岗位。

二、可行性分析

1.开发设计上的先进性:

课程管理系统最初采用的是主机/终端模式,最后发展到客户机/服务器模式。

系统基本功能:只需要填写好个人资料,即可自动生成个人简历,并可对其进行保存、修改、编辑等操作。

2.软硬件支持的可操作性和可实现性

软件可性行:

系统采用Windows XP作为操作系统,以Myeclipse、mysql数据库作为个人简历生成与管理系统的前端开发软件。这些软件可以很方便的在电脑上安装,同时其配置的要求不是很高,其安装步骤也相当简单,易于实现。

硬件环境:

Genuine Intel(R)CPU

T2300@ 1.66GHz

980MHz, 0.99GB的内存物理地址扩展

3.系统界面设计的直观性,可操作性

本系统界面的设计是很直观的,同时操作简单,即便不是本系统的设计人员,也能够通过系统使用说明来对系统进行操作,实现对个人简历的保存、修改、编辑等操作。使得该系统易于各种求职人员的理解和操作。

4.资源的可利于性

在系统的开发的过程中,我查看了许多的有关该系统的信息,包括网络上的各种简历模式,各公司单位招聘职员的方法等,使系统更容易开发,给了我很大的帮助。同时在同学和老师的帮助之下我也受益匪浅,学到了很多东西。

三、小结

这次的毕业设计,我初步掌握了用J2EE开发软件的基本语法,平时我们学了比较多的理论知识,但是仍然缺少将知识运用于实践的能力,通过本次毕业设计,我深刻体会到了学习的重要性,因此我更努力的查阅了大量的素材文献,同时利用网络资源来解决设计中所出现的各种问题。在与同学和老师的探讨之中,使我明白了很多东西。

在进行软件设计时我遇到了一些困难,在老师的指导下,查资料,问同学,上网学习,遇到的问题基本得到了解决。非常感谢黄冈师范学院给我们提供了良好的学习环境和网络资源,通过上网查询黄冈师范学院图书馆网,让我看到了不少的优秀毕业论文作品,让我在不断学习的过程之中,明确了自己的论文写作方向,同时也明白了自身存在的不足,还需要不断的学习和完善自己,因此我查看了许多相关的专业书籍。在此再次感谢指导老师对我的悉心指导与帮助,我知道论文还有诸多不足之处,恳请老师提出批评与改进意见。我相信,在老师的帮助之下,这次的毕业论文我一定会将它完善得更好。

参考文献

[1] 郭晶,刘韦韦.JSP应用开发详解[M].北京:电子工业出版社,2002.1.[2] [英]Ben Forta著.MySQL必知必会[M].刘晓霞,钟鸣译.北京:人民邮电出版社,2009.1.[3] 计磊,李里,周伟.J2EE整合应用案例[M].北京:人民邮电出版社,2007.[4] 个人简历简介:百度百科[EB/OL].http://baike.baidu.com/view/3097.htm

[5] 孙涌.现代软件工程.北京:希望电子出版社,2003.246.[6] 前程无忧网简介:百度百科[EB/OL].http://baike.baidu.com/view/77563.htm

[7] 中华英才网简介:百度百科[EB/OL].http://baike.baidu.com/view/16463.htm

[8] 智联招聘网简介:百度百科[ EB/OL].http://baike.baidu.com/view/1819479.htm

[9] 钟启泉.课程设计基础[M].济南:山东教育出版社,1998.209.[10] 耿祥义,张跃平.JAVA2实用教程(第二版)[M].北京:清华大学出版社,2004.11.[11] 清宏计算机工作室.JSP编程技巧.机械工业出版社,2004.5.410.[12] Rod Johnson.Expert one on one J2EE design and development[M].WORX publisher.2006.35~662

[13] 王珊,萨师煊.数据库系统概论[M].北京:高等教育出版社,2006.56~354

[14] J2EE简介:百度百科[EB/OL].http://baike.baidu.com/view/1507.htm

[15] 许丽花.基于J2EE的三层体系结构应用研究[J].南京职业技术学院学报,2005,65(17):134~354.

[16] 郝玉龙.J2EE编程技术[M].北京:北京交通大学出版社,2006.102~544

[17]James Martin,Carma McClure.Software Maintenance the Problem and Its Solutions.retice-Hal,Inc.,1983,9-14

[18] Juan Lipson Vuong.A semantics-based routing scheme for grid resource discovery[M].E-Science: First International Conference on E-Science and GridComputing,2005:58-70,90.

第五篇:仓库管理系统

·

用Visual C++设计的仓库管理系统

摘要 本文主要介绍了采用Visual Studio 2005的一个仓库管理系统。该系统基于MFC集成开发环境,利用ADO控件实现基本信息管理、商品信息管理、库存操作管理、库存警示管理的功能。详细介绍了开发本系统的步骤:系统分析、系统设计、系统实现。在系统分析中采用系统的功能结构图分析了系统所需的各种数据。在系统的设计中,详细的展现了系统的各个功能模块、所需的数据库表、菜单的设计等。在系统的实现中,给出了相应模块功能控件的事件及代码。

关键字:仓库管理 管理系统

ADO控件 面向对象

第一章

绪论

1.1系统的开发背景……………….…………………………………4 1.2当前仓库管理现状分析及设计仓库管理系统的意义………….4 1.2系统开发工具选择及介绍………………………….……………5 1.3 ADO数据访问技术………………………………………………7 第二章 系统设计

2.1系统需求分析„„„„„„„„„„„„„„„„„„„„„9 2.2系统开发目标……………………………………………… ………10 2.3系统功能分析

2.31系统功能描述…………………………………………………..10 2.32 系统功能模块的划分………………………………………… 11 2.33系统流程分析…………………………………………………..11 第三章 数据库设计

3.1数据库需求分析 ……………………………………………….12 3.2 数据库概念结构设计 ………………………………………….13 3.3 数据库逻辑结构设计及实现 ………………………………….15 第四章 系统各主要功能模块的实现

4.1主界面的设置…………………………………………………..18 4.2主要各功能模块所涉及的类的添加……………………… ……19 4.3登陆模块设计 …………………………………………………..19 4.4客户管理模块设计 4.41 设计客户信息管理对话框 ………………………………..21 4.42 设计客户信息编辑对话框 ……………………………..24 4.5仓库管理模块设计

4.51设计仓库信息管理对话框 …………………………………25 4.6用户管理模块设计

4.61设计用户信息管理对话框…………………………………...27 4.62 设计用户信息编辑对话框…………………………………..28 4.63设计修改用户密码的对话框…………………………………29 4.7商品管理模块设计

4.71设计商品类别管理对话框……………………………………30 4.72 设计商品类别编辑对话框…………………………………...31 4.73 设计商品信息管理对话框…………………………………...32 4.8 库存操作管理模块设计

4.81 设计入库操作管理对话框…………………………………34 4.82 设计入库单编辑对话框……………………………………..35 4.83 设计出库操作管理对话框…………………………………..37 4.84 设计出库操作编辑对话框 ………………………………..37 4.85 设计库存盘点管理对话框…………………………………39 4.86 设计库存盘点编辑对话框 …………………………………40 4.9 库存警示管理模块设计

4.91 设计商品数量报警管理模块………………………………...41 4.92 设计商品失效报警管理模块 ……………………………….42 第五章 结束语

5.1开发中的问题和解决办法………………………………………….44 5.2系统不足之处………………………………………………………44 第六章 致谢 …………………………………………………………..45 第七章 参考文献 ……………………………………………………..45

1.1系统开发的背景

20世纪,随着全球经济的蓬勃发展,众多经济学家纷纷提出了新的管理理论。20世纪50年代,西蒙提出管理依赖于信息和决策的思想。同时期的维纳发表了控制论,他认为管理是一个控制过程。1958年,盖尔写到:“管理将以较低的成本得到及时准确的信息,做到较好的控制。”这个时期,计算机开始用于会计工作,出现数据处理一词。

1970年,Walter T.Kennevan给刚刚出现的管理信息系统一词下了一个定义:“以口头或书面的形式,在合适的时间向经理、职员以及外界人员提供过去的、现在的、预测未来的有关企业内部及其环境的信息,以帮助他们进行决策。”在这个定义里强调了用信息支持决策,但并没有强调应用模型,没有提到计算机的应用。

1985年,管理信息系统的创始人,明尼苏达大学的管理学教授Gordon B.Davis给了管理信息系统一个较完整的定义,即“管理信息系统是一个利用计算机软硬件资源,手工作业,分析、计划、控制和决策模型以及数据库的人-机系统。它能提供信息支持企业或组织的运行、管理和决策功能。”这个定义全面地说明了管理信息系统的目标、功能和组成,而且反映了管理信息系统在当时达到的水平。1.2当前仓库管理现状分析及设计仓库管理系统的意义

一直以来人们使用传统的人工方式管理库存。这种管理方式存在着许多缺点,诸如效率低,保密性差等,而且时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。对于企业来说为了管理好仓库,将付出大量的人力和物力。因此设计一款仓库管理系统是非常重要的。它带来的优点是:它可以全面的管理仓库中储存的商品和货物,缩短了库存信息流转时间,使企业的物料管理层次分明、井然有序,为采购、营销和生产提供了依据,从而提高企业的经营效率。因此,库存管理系统能够为用户提供充足的信息和快捷的查询手段。

随着科学技术的不断提高,计算机科学不断发展,其强大的功能已经被人们深刻认识,它已经进入了人类社会的各个领域并发挥着越来越重要的作用.1.3系统开发工具的选择及介绍  系统开发环境

操作系统:Windows XP Professional 简体中文版 开发平台: Visual Studio 2005简体中文版  系统开发工具的选择

实现该系统的方法有很多,之所以选择Visual C++作为开发工具,不仅仅因为曾经有过使用它的经验,看中的更是它的功能强大和使用方便。它本身不仅具有极其强大的编程能力,它允许选择和管理外接程序,并内含多种实用控件,这些对Visual C++的扩充又进一步增强了它的开发环境的能力。 开发平台介绍 Visual Studio 可以用来创建 Windows平台下的 Windows 应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和 Office 插件。

1998 年,微软公司发布了 Visual Studio 6.0。所有开发语言的开发环境版本均升至 6.0。这也是 Visual Basic 最后一次发布,从下一个版本(7.0)开始,Microsoft Basic 进化成了一种新的面向对象的语言:Microsoft Basic.NET。由于微软公司对于 Sun 公司 Java 语言扩充导致与 Java 虚拟机不兼容而 Sun 被告上法庭,微软在后续的 Visual Studio 中不再包括面向 Java 虚拟机的开发环境。

2002 年,随着.NET 口号的提出与 Windows XP / Office XP 的发布,微软发布了 Visual Studio.NET(内部版本号为 7.0)。在这个版本的 Visual Studio 中,微软剥离了 Visual FoxPro 作为一个单独的开发环境以 Visual FoxPro 7.0 单独销售,同时取消了 Visual InterDev。.NET 的通用语言框架机制(Common Language Runtime, CLR),其目的是在同一个项目中支持不同的语言所开发的组件。所有 CLR 支持的代码都会被解释成为 CLR 可执行的机器代码然后运行。

Visual Basic、Visual C++ 都被扩展为支持托管代码机制的开发环境,且 Visual Basic.NET更是从 Visual Basic 脱胎换骨,彻底支持面向对象的编程机制。而 Visual J++ 也变为 Visual J#。后者仅语法同 Java 相同,但是面向的不是 Java 虚拟机,而是.NET Framework。

2003 年,微软对 Visual Studio 2002 进行了部分修订,以 Visual Studio 2003 的名义发布(内部版本号为 7.1)。Visio 作为使用统一建模语言(UML)架构应用程序框架的程序被引入,同时被引入的还包括移动设备支持和企业模版。.NET 框架也升级到了 1.1。

2005 年,微软发布了 Visual Studio 2005。.NET 字眼从各种语言的名字中被抹去,但是这个版本的 Visual Studio 仍然还是面向.NET 框架的(版本2.0)。它同时也能开发跨平台的应用程序,如开发使用微软操作系统的手机的程序等。总体来说是一个非常庞大的软件,甚至包含代码测试功能。

这个版本的 Visual Studio 包含有众多版本,分别面向不同的开发角色。

Microsoft为单独工作或在小型团队中的专业开发人员提供了两种选择,Visual Studio 2005 Professional Edition和用于Microsoft Office系统的Visual Studio 2005工具。每种版本都在标准版的特性上进行了扩展,包括用于远程服务程序开发和调试、SQL Server2005开发的工具,以及完整的、没有限制的开发环境。

1.4 ADO数据访问技术

ADO(ActiveX Data Objects,ActiveX数据对象)是Microsoft提出的应用程序接口(API)用以实现访问关系或非关系数据库中的数据。象Microsoft的其它系统接口一样,ADO是面向对象的。它是Microsoft全局数据访问(UDA)的一部分,Microsoft认为与其自己创建一个数据,不如利用UDA访问已有的数据库。为达到这一目的,Microsoft和其它数据库公司在它们的数据库和Microsoft的OLE数据库之间提供了一个“桥”程序,OLE数据库已经在使用ADO技术。ADO的一个特征(称为远程数据服务)支持网页中的数据相关的ActiveX控件和有效的客户端缓冲。作为ActiveX的一部分,ADO也是Microsoft的组件对象模式(COM)的一部分,它的面向组件的框架用以将程序组装在一起。ADO从原来的Microsoft数据接口远程数据对象(RDO)而来。RDO与ODBC一起工作访问关系数据库,但不能访问如ISAM和VSAM的非关系数据库。

ADO 是对当前微软所支持的数据库进行操作的最有效和最简单直接的方法,它是一种功能强大的数据访问编程模式,从而使得大部分数据源可编程的属性得以直接扩展到你的Active Server 页面上。可以使用ADO 去编写紧凑简明的脚本以便连接到 Open Database Connectivity(ODBC)兼容的数据库和 OLE DB 兼容的数据源,这样 ASP 程序员就可以访问任何与 ODBC 兼容的数据库,包括 MS SQL SERVER、Access、Oracle 等等。

ADO是一种面向对象的编程接口,微软介绍说,与其同IBM和Oracle提倡的那样,创建一个统一数据库,不如提供一个能够访问不同数据库的统一接口,这样会更加实用一些。为实现这一目标,微软在数据库和微软的OLE DB中提供了一种“桥”程序,这种程序能够提供对数据库的连接。

开发人员在使用ADO时,其实就是在使用OLE DB,不过OLE DB更加接近底层。ADO的一项属性??远程数据服务,支持“数据仓库”ActiveX 组件以及高效的客户端缓存。作为ActiveX的一部分,ADO也是COM组件的一部分。ADO是由早期的微软数据接口?远程数据对象RDO演化而来的。RDO同微软的ODBC一同连接关系数据库,不过不能连接非关系数据库。

ADO向我们提供了一个熟悉的,高层的对OLE DB的Automation封装接口。对那些熟悉RDO的程序员来说,你可以把OLE DB比作是ODBC驱动程序。如同RDO对象是ODBC驱动程序接口一样,ADO对象是OLE DB的接口;如同不同的数据库系统需要它们自己的ODBC驱动程序一样,不同的数据源要求它们自己的OLE DB提供者(OLE DB provider)。目前,虽然OLE DB提供者比较少,但微软正积极推广该技术,并打算用OLE DB取代ODBC。

ADO向程序员提供了很多好处。包括易于使用,熟悉的界面,高速度以及较低的内存占用(已实现ADO2.0的Msado15.dll需要占用342K内存,比RDO的Msrdo20.dll的368K略小,大约是DAO3.5 的Dao350.dll所占内存的60%)。同传统的数据对象层次(DAO和RDO)不同,ADO可以独立创建。因此你可以只创建一个 “Connection”对象,但是可以有多个,独立的“Recordset”对象来使用它。ADO针对客户/服务器以及WEB应用程序作了优化。第二章 系统设计

2.1系统需求分析

随着科学技术的发展,越来越多的企业开始用计算机管理仓库。而现在的仓库管理系统多种多样,而仓库管理的特点是信息处理量比较大。所以管理的物资设备种类繁多,而且由于入库单,出库单,需求单等单据发生量特别大,关联信息多,查询和统计的方式各不相同。因此在管理上实现起来有一定的困难。在管理的过程中经常会出现信息的重复传递,单据,报表种类繁多,各个部门管理规格不统一等问题。

在本系统的设计过程中,为了克服以上困难,满足计算机管理的需要,我们采取了下面的一些原则。

●统一各种原始的单据的格式,统一帐目和报表的格式。●删除不必要的管理冗余,实现管理规范化、科学化。

●程序代码标准化,软件统一化,确认软件的可维护行和实用性。●界面尽量简单化,做到实用、方便,尽量满足企业中不同层次员工的需要。2.2系统开发目标

系统开发的总体任务是实现企业物资设备管理的系统化,规范化和自动化,从而达到提高企业物资管理的效率的目的。2.3系统功能分析 2.31系统功能描述(1)基本信息管理 基本信息管理包括对客户信息、仓库信息和用户信息信息的管理。(2)商品信息管理

对于商品各种信息的管理。(3)库存操作管理

库存操作管理可以实现入库管理、出库管理和库存盘点等功能。(4)库存警示管理

库存警示是指对库存中接近或超过临界值的商品进行报警。在商品信息中,包含商品的合理数量范围和有效期限。商品数量小于合理数量下限称为短线;商品数量大于合理数量的上限成为超储。商品出现短线、超储、接近或超过有效期限时都需要报警。(5)统计查询管理功能

统计查询管理可以对库存商品进行各种类型的统计和查询。从而使用户能够全面的了解库存状况。2.32 系统功能模块的划分

基于对系统的分析,可以得到如图所示的系统功能模块图:

本系统将用户划分为两种类型,即系统管理员用户和普通用户。系统管理员用户可以管理其他用户信息,而在其他方面与所有用户的权限相同。

2.33系统流程分析

所谓系统流程就是用户在使用系统时的工作过程。对于多类型用户的管理系统来说,每一类用户的工作流程都是不相同的。多用户系统的工作流程都是从用户登陆模块开始,对用户的身份进行认证。身份认证可以分为以下两个过程:

(1)确认用户是否是有效的系统用户。(2)确定用户的类型。

第一个过程决定用户能否进入系统。第二个过程根据用户的类型决定用户的操作权限,从而决定用户的工作界面。因此得到它的系统流程分析图如下:

第三章 数据库设计 3.1数据库需求分析

在本设计中,通过对企业仓库管理的内容和系统流程分析,设计的数据项和数据结构如下:

(1)客户信息。包括的数据项有客户编号、名称、类型等。(2)仓库信息。包括仓库编号、名称和说明等。(3)用户信息。包括用户名、密码、员工姓名等信息。(4)商品管理信息。包括商品类别,商品编号等信息。

(5)库存操作管理信息。包括入库和出库操作需要记录的商品信息、仓库信息、经办人、涉及金额和入库时间等信息。有了上面的数据结构、数据项,就能进行下面的数据库设计。3.2 数据库概念结构设计

这一设计阶段是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。本设计根据上面的设计规划出的实体有客户实体、仓库实体、用户实体、商品类别实体、商品实体、入库实体、出库实体、库存实体。各个实体的E-R图描述如下:

客户实体的E-R图

仓库实体E-R图

用户实体E-R图

商品类别E-R图

商品类别E-R图

入库实体E-R图

出库实体E-R图

库存实体 E-R图

3.3 数据库逻辑结构设计及实现

仓库管理系统数据库中的各个表格的设计结果如下面的几个表格所示。每个表格表示在数据库中的一个表。数据库的实现采用SQL Sever 2005。

(1)客户信息表(Client)

说明:Cid为客户编号、Cname为客户名称、Ctype为客户类型其中包括(1、供应商

2、供货商)、Ctype为联系人、Address为通信地址、Postcode为邮政编码、Phone为联系电话、Fax为传真电话、Memo为备注信息。

(2)仓库信息表(Storehouse)

说明:Sid为仓库编号、Sname为仓库名称、Memo为仓库说明。(3)用户信息表(Users)

说明:UserName为用户名、Pwd为密码、User_type为用户类型(1、系统管理员用户,2、普通用户)(4)商品类别表(ProType)

说明:TypeId为商品类别编号、TypeName为商品类别名称、UpperId为上级商品类别

(5)商品信息表(Product)

说明:Pid为商品编号、Pname 为商品名称、TypeId为商品类型编号、Pstyle商品规格、Punit为计量单位、Pprice为参考价格、Plow为商品数量下限、Phigh为商品数量上限、Valid为有效期、AlarmDay为在到达有效期前几天发出警告。(6)入库操作信息表(Storeln)

说明:SiType为入库操作类型,包括销售出库、退货出库、用料出库等。Pid为入库商品编号、MakeDate为生产日期、Pprice为入库商品单价、Pnum为入库商品数量、Cid为客户编号、Sid为仓库编号、EmpName为经办人、OptDate为入库日期(7)出库操作信息表(TakeOut)

说明:Ttype为入库操作类型,包括销售出库、退货出库、用料出库等。Pid为入库商品编号、MakeDate为生产日期、Pprice为入库商品单价、Pnum为入库商品数量、Cid为客户编号、Sid为仓库编号、EmpName为经办人、OptDate为入库日期(8)库存商品信息表(ProlnStore)

说明: SpId为商品存储编号、Pid为商品编号、Pprice为商品入库单价、Pnum为商品数量、MakeDate为生产日期、Sid为仓库编号 第四章 系统各主要功能模块的实现

4.1主界面的设置

根据对系统功能分析,主界面的菜单项包括基本信息管理、商品信息管理、库操作管理和库存警示管理。如图所示:

当用户单击基本信息管理时,显示客户信息管理、仓库信息管理、用户信息管理、修改用户密码、退出系统菜单项。添加这些菜单项如图所示:

当用户单击商品信息管理时,显示商品类别管理、商品信息管理。添加这些菜单项如图所示:

当用户单击库存操作管理时,显示入库操作、出库操作、库存盘点。添加这些菜单项如图所示:

当用户单击库存警示管理时,显示数量报警和实效报警。添加这些菜单项如图所示:

4.2主要各功能模块所涉及的类的添加

根据数据库逻辑设计,我们可以为这些表添加相应的类。

1、CClient类用来管理客户表的数据库操作。

2、CStorehouse类用来管理表Storehouse的数据库操作。

3、CUsers类用来管理表Users的数据库操作。

4、CProType类用来管理表ProType的数据库的操作。

5、CProductl类用来管理表Product的数据库操作。

6、CStoreln类用来管理表Storeln的数据库操作。

7、CTakeOut类用来管理表TakeOut的数据库操作。

8、CProInStore类用来管理表ProInStore的数据库操作。4.3登陆模块设计 登陆对话框布局如图:

其ID值设为IDD_USERNAME_DIALOG。

用户要使用系统,首先必须通过系统的身份认证,这个过程叫做登陆。此模块的功能就是要进行身份认证。

在登陆对话框用户首先输入用户名,然后输入密码。输入完毕时,点击确定将发送BN_CLICKED消息。在确认按钮处添加此消息响应函数CLoginDlg :OnOK()。此函数的主要功能是检查用户输入数据的有效性,如果输入的信息不符合要求会自动退出程序。主要代码如下: CLoginDlg::OnOK(){ ……

//检查数据有效性

if(m_UserName == “"){MessageBox(”请输入用户名“);

return;} if(m_Pwd == ”“){ MessageBox(”请输入密码“);

return;}

CUsers user;//定义CUsers对象

user.GetData(m_UserName);//用于从表Users中读取数据

//如果读取的数据与用户输入数据不同,则返回

if(user.GetPwd()!= m_Pwd){ MessageBox(”用户信息不正确,无法登录!“);

return;} }

当用户单击取消时,添加CLoginDlg::OnBnClickedCancel()函数来响应此消息。此函数的功能是退出程序。主要代码如下: void CLoginDlg::OnBnClickedCancel(){ OnCancel();} 4.4客户管理模块设计

客户管理模块可以实现以下功能:

1、添加客户。

2、修改客户信息。

3、删除客户。

4、查看客户信息。4.41 设计客户信息管理对话框 对话框布局如图:

其ID值设为IDD_CLENTMAN_DIALOG。对话框对应的类为CClientManDlg。它继承CDialog类。添加控件包括四个按钮控件,一个组合框、ADO Data和DataGrid控件。

该对话框的主要函数为Refresh_Data()、OnAddButtom()、OnModiButton()、OnDelButton()。1.Refresh_Data()函数

它的功能是为ADO Data控件设置数据源,从而决定在DataGrid控件中显示的数据内容。主要代码如下: Refresh_Data(){ CString cSource;

//设置SELECT语句,按客户单位排序 ……

m_adodc.SetRecordSource(cSource);m_adodc.Refresh();//设置表格列宽度

} 2.OnAddButtom()函数

当用户单击“添加”按钮时,执行此函数。其功能是打开编辑对话框。主要代码如下: OnAddButton(){ ……

//打开编辑对话框

CClientEditDlg dlg;……

if(dlg.DoModal()== IDOK)…… } 3.OnModiButton()函数

当用户单击“修改”按钮时,执行此函数。其功能是弹出编辑对话框进行修改记录操作。主要代码如下: OnModiButton(){ ……

CClientEditDlg dlg;dlg.cCid = m_datagrid.GetItem(0);//记录编号

……

if(dlg.DoModal()== IDOK)

Refresh_Data();} 4.OnDelButton()函数

当用户单击“删除”按钮时,执行此函数,其功能是删除所选择的记录。主要代码如下: OnDelButton(){ ……

CClient clt;

clt.sql_delete(m_datagrid.GetItem(0));删除记录

Refresh_Data();

} 4.42 设计客户信息编辑对话框

编辑客户信息的对话框可以用来添加和修改客户信息,对话框名称为IDD_CLIENTEDIT_DIALOG。对话框的布局如图:

为对话框创建CClientEditDlg类并继承与CDialog类。

当用户单击“确定”按钮,添加OnOK()函数,其功能是将输入的信息保存到数据库中。主要代码如下: OnOK(){ …..CClient clt;clt.SetCname(m_Cname);//客户单位

……

clt.sql_insert();插入进数据库

……

clt.sql_update(cCid);} 4.5 仓库管理模块设计

仓库管理模块可以实现以下功能:

1、添加仓库信息

2、修改仓库信息

3、删除仓库信息

4、查看仓库信息

4.51 设计仓库信息管理对话框

对话框布局如图:

对话框ID为IDD_STOREHOUSEMAN_DIALOG.对话框对应的类为CStoreHouseManDlg。该对话框的主要函数为Refresh_Data()、OnAddButtom()、OnModiButton()、OnDelButton()。其功能与客户信息管理对话框函数的功能一样。函数实现过程也非常类似。在此不再详细说明。

4.52 设计仓库信息编辑对话框

编辑仓库信息的对话框可以用来添加和修改仓库信息,其ID为IDD_STOREHOUSEEDIT_DIALOG。对话框的布局如图:

对话框对应的类为CStoreHouseEditDlg。当用户单击“确定”时,执行OnOK()函数用来把在对话框输入的信息添加或修改到数据库中。主要代码如下:

CStoreHouseEditDlg::OnOK(){ ……

CStorehouse sh;sh.SetSname(m_Sname);//仓库名称

sh.SetMemo(m_Memo);//仓库说明

…… //表示插入新记录

sh.sql_insert();

……

} 4.6用户管理模块设计

根据用户类型的不同,用户管理模块的功能也不相同。可以包含以下情形:

1、Admin用户可以创建系统管理员或普通用户、复位用户密码、删除系统管理员或普通用户,也可以修改自身的密码。

2、系统管理员用户可以创建普通用户、对普通用户的密码进行复位、删除普通用户,也可以修改自身密码。

3、普通用户只能修改自身密码。4.61设计用户信息管理对话框 用户信息管理对话框ID为IDD_USERMAN_DIALOG,对话框的布局如图:

对话框对应的类为CUserManDlg。对话框中使用DataList控件显示用户列表,使用ADO Data控件为其提供数据源。当用户单击“添加”按钮时,执行OnAddButtom()函数,其功能是显示用户信息编辑对话框。主要代码为: OnAddButton(){ CUserEditDlg dlg;dlg.iUserType = 2;if(dlg.DoModal()== IDOK)

m_adodc.Refresh();} 当用户单击“密码复位”按钮时,执行OnModiButton()函数,功能是对用户密码进行复位,复位密码默认值为888888。主要代码如下:OnModiButton(){ ……

CUsers usr;

usr.SetPwd(”888888“);//设置默认密码

usr.sql_updatePwd(m_datalist.GetText());

MessageBox(”密码已经复位“);} 当用户单击“删除”时,执行OnDelButton()函数,其功能删除用户。主要代码如下: OnDelButton(){ ……

CUsers usr;

usr.sql_delete(m_datalist.GetText());

m_adodc.Refresh();} 4.62 设计用户信息编辑对话框

用户信息编辑对话框的ID为IDD_USEREDIT_DIALOG,对话框布局如图:

对话框对应的类为CUserEditDlg。当用户单击“确定”按钮时,执行OnOK()函数,其功能是创建一个新用户,并将其加入到数据库中。主要代码如下: OnOK(){CUsers usr;……

//插入用户记录

usr.sql_insert();} 4.63设计修改用户密码的对话框 修改用户密码对话框的ID为IDD_CHANGEPWD_DIALOG,对话框的布局如图:

对话框对应的类为CChangePwdDlg。当用户单击“确定”按钮时,执行OnOK()函数,其功能是对用户密码进行修改。主要代码如下: CChangePwdDlg::OnOK(){ ……

user.SetPwd(m_NewPwd1);user.sql_updatePwd(m_UserName);//更新当前用户密码

…… } 4.7商品管理模块设计

商品管理模块可以实现以下功能:

1、商品类别的添加、修改、删除。

2、商品信息的添加、修改、删除。4.71设计商品类别管理对话框

商品类别管理对话框的ID为IDD_PROTYPEMAN_DIALOG,对话框布局入图:

对话框对应的类为CProtypeManDlg。当用户单击一级商品类别列表框时,执行OnClickDatalist()函数,其功能是选择一级商品列表的内容时,决定二级商品类别列表框显示的内容。主要代码如下:CProTypeManDlg::OnClickDatalist1(){ CString cUpper;cUpper = m_datalist1.GetBoundText();//读取选择类别的编号

//设置二级类别的记录源

m_adodc2.SetRecordSource(”SELECT * FROM ProType WHERE UpperId=“ + cUpper);m_adodc2.Refresh();} 当用户单击左侧的“添加”按钮时,执行OnAdd1Buttom()函数,其功能是显示商品类别编辑对话框。主要代码如下:CProTypeManDlg::OnAdd1Button(){ CProTypeEditDlg dlg;dlg.cTypeId = ”“;//表示添加记录

dlg.cTypeName = ”“;dlg.iUpperId = 0;//表示一级类别 //打开编辑对话框

if(dlg.DoModal()== IDOK)

m_adodc1.Refresh();} 当用户单击左侧“修改”按钮时,执行OnModilButton()函数,其功能与“添加”按钮功能类似。

当用户单击左侧的“删除”按钮时,执行OnDel1Button()函数,其功能删除商品类别。主要代码如下: CProTypeManDlg::OnDel1Button(){ pt.sql_delete(Tid);//删除

m_adodc1.Refresh();//刷新 } 剩下右侧的按钮与左侧的按钮功能类似,只不过删除的商品类别不一样。参照左侧功能函数即可。4.72 设计商品类别编辑对话框

编辑商品类别信息的对话框可以用来添加和修改商品类别信息。对话框ID为IDD_PROTYPEEDIT_DIALOG。其布局如图:

对话框对应的类为CProTypeEditDlg。当用户单击“确定”按钮时,执行OnOK()函数,其功能是添加商品类别到数据库中。主要代码如下: CProTypeEditDlg::OnOK(){ ……

CProType pt;pt.SetTypeName(m_TypeName);//类别名称

……

if(cTypeId == ”“)//表示插入数据

pt.sql_insert();

……

else

pt.sql_update(cTypeId);

……

} 4.73 设计商品信息管理对话框

商品信息管理对话框可以按照商品类别查询商品信息,也可以对商品信息进行添加,修改和删除等操作。对话框ID为IDD_PROMAN_DIALOG。对话框的布局如图:

为对话框添加CProManDlg类。在对话框中有3个ADO Data控件,它们分别为一级商品类别、二级商品类别和商品表格提供数据源。添加、修改、删除操作函数的功能与其他对话框功能类似在此不再详述。此对话框用的主要函数是当用户单击一级商品类别时,执行OnClickDatacombol()函数,其功能是根据用户选择的一级类别来设置要显示的二级商品类别。主要代码如下: CProManDlg::OnClickDatacombo1(short Area){ ……

cUpper = m_datacombo1.GetBoundText();//读取选择类别的编号

//设置二级类别的记录源

m_adodc2.SetRecordSource(”SELECT * FROM ProType WHERE UpperId=“ + cUpper);m_adodc2.Refresh();} 4.74 设计商品信息编辑对话框 编辑商品信息的对话框

当用户单击“确定”按钮时,执行OnOK()函数,功能将输入的数据保存到数据库中。其代码如下: CProEditDlg::OnOK(){ CProduct pr;……

pr.sql_insert();//插入数据库

pr.sql_update(cPid);CDialog::OnOK();} 4.8 库存操作管理模块设计

库存操作管理模块可以实现以下功能:

1、入库操作的添加、修改、删除、2、出库操作的添加、修改和删除。

3、库存盘点的添加、修改、删除。4.81 设计入库操作管理对话框

入库单管理对话框的ID为IDD_STOREINMAN_DIALOG。对话框的布局如图:对话框所对应的类为CStoreInManDlg。调用的主要函数是

Refresh_Data()、OnAddButton()函数。Refresh_Data()的功能是设置ADO Data控件的记录源与其他对话框的ADO控件的功能类似,OnAddButton()函数与其他对话框的添加函数类似。代码不再详细描述。

4.82 设计入库单编辑对话框

入库单编辑对话框的ID为IDD_STOREINDIT_DIALOG。对话框的布局如图:

对话框对应的类为CStoreInEditDlg。在此对话框中使用了5个ADO Data控件,功能与其他对话框的ADO Data控件相同。此对话框主要函数是OnSelchangeClttypeCombo()和OnChangePpriceEdit()函数。

1、OnSelchangeClttypeCombo()函数功能是当用户在客户类别组合框中选择不同类别时,根据用户所选择的客户类别设置查询条件。主要代码如下: OnSelchangeClttypeCombo(){ //设置查询客户的SELECT语句

CString cSource;cSource = ”SELECT * FROM Client“;//根据客户类别设置查询条件

if(m_CltType.GetCurSel()== 0)

cSource += ” WHERE Ctype = 1“;else

cSource += ” WHERE Ctype = 2“;m_Client.SetText(”“);//清除客户组合框的显示内容

m_adodc1.SetRecordSource(cSource);//设置数据源,重新客户列表

m_adodc1.Refresh();}

2、OnChangePpriceEdit()函数功能是当用户改变商品单价数据时,总价格也随着变化而变化。主要代码如下: CStoreInEditDlg::OnChangePpriceEdit(){ UpdateData(TRUE);//读取输入数据到成员变量 m_Price.Format(”%.2f“, m_Pprice * m_Pnum);//计算总价格

UpdateData(FALSE);

//显示成员变量值 } 当用户单击“确定“按钮时执行OnOK()函数,将输入的信息插入到数据库中。

4.83 设计出库操作管理对话框

出库操作管理对话框的ID为IDD_TAKEOUTMAN_DIALOG.对话框布局如图:

对话框所对应的类为CTakeOutManDlg。主要函数Refresh_Data()、OnAddButton()。功能与入库管理对话框相似。不再详述。4.84 设计出库操作编辑对话框

出库操作编辑对话框的ID为IDD_TAKEOUTEDIT_DIALOG。对应的类为CTakeOutEditDlg。布局如图:

对话框中的DataGrid控件用于根据用户选择的商品和仓库信息显示相关的库存商品,用户可以从其中选择需要出库的商品,然后输入出库数量。在显示库存商品时,需要查询默认商品的价格数量,并显示在表格下方。因此,需要调用OnClickDatagrid2()函数。程序将从DataGrid控件中读取商品价格和库存数量等信息,并显示在对话框的相关位置。主要代码如下:OnClickDatagrid2(){ ……

m_Pprice = m_datagrid.GetItem(1);//从表格中读取产品价格

m_Pnum1 = m_datagrid.GetItem(2);//从表格中读取产品库存数量

UpdateData(FALSE);……

} 当用户点击“确定“按钮时,执行OnOK()函数,将编辑的仓库出库单保存到数据库中。主要代码如下: { ……

CProInStore pi;CTakeOut to;CString cType;//插入出库数量

to.sql_insert();//@@@@@ 保存库存产品信息 @@@@@ ……

pi.sql_insert();} 4.85 设计库存盘点管理对话框

库存盘点管理对话框的ID为IDD_CHECKMAN_DIALOG。对话框的布局如图:对话框对应的类为CCheckManDlg。对话框主要函数是

Refresh_Data()。功能是设置数据源,查询相关库存盘点信息。主要代码如下:Refresh_Data(){CString cPid;//保存当前选择的产品编号 ……

CString cSid;//保存当前选择的仓库编号

…..//设置SELECT语句

CString cSource;cSource = ”SELECT SpId, Pprice As 产品入库单价, Pnum As 库存数量, MakeDate As 生产日期“;cSource += ” FROM ProInStore WHERE Pid=“ + cPid + ” AND Sid=" + cSid;//设置记录源

m_adodc6.SetRecordSource(cSource);m_adodc6.Refresh();……} 4.86 设计库存盘点编辑对话框

库存盘点编辑对话框用于编辑指定商品的库存数量,从而纠正库存数量可能存在的错误。对话框的ID为IDD_CHECKEDIT_DIALOG。对话框的布局如图: 对话框类为CCheckEditDlg。当用户单击“确定”按钮时,执行OnOK()函数。其功能是更新库存数量。代码如下: OnOK(){ UpdateData(TRUE);//将用户输入数据读取到成员变量中

//更新库存数量

CProInStore obj;obj.SetPnum(m_NewNum);obj.sql_updatePnum(cSpId);} 4.9 库存警示管理模块设计

库存警示管理模块可以实现以下功能:

1、实现数量报警管理。即当库存商品的数量低于下线或超过上线时报警。

2、实现失效报警管理,即当库存商品即将达到有效期时报警。4.91 设计商品数量报警管理模块

商品数量报警信息管理对话框用来显示所有需要进行数量报警的商品信息。为了更方便的统计商品数量报警信息,需要创建一个视图Total_Num,它的作用是统计每种库存商品数量。主要代码如下: USE [Stock] GO ALTER VIEW [dbo].[Total_Num] AS SELECT dbo.ProInStore.Pid, SUM(dbo.ProInStore.Pnum)AS Total FROM dbo.ProInStore INNER JOIN dbo.Product ON dbo.ProInStore.Pid = dbo.Product.Pid GROUP BY dbo.ProInStore.Pid GO 商品数量报警信息管理对话框的ID为IDD_NUMALARM_DIALOG。对话框布局如图:对话框对应的类为CNumAlarmDlg。主要函数是Refresh_Data()。功能与其他对话框的Refresh_Data()类似。在此不再详述。

警告类型分为短线和超储两种情况,程序将根据用户选择的类型进行统计。

4.92 设计商品失效报警管理模块

商品失效报警信息管理对话框用来显示所有需要进行失效报警的商品信息。为了更好方便的统计商品失效报警信息,需要创建一个视图Vaild,它的功能是统计库存商品价格、数量、生产日期、仓库名称和距离失效期的天数等信息。主要代码如下: USE [Stock] GO ALTER VIEW [dbo].[Valid] AS SELECT dbo.ProInStore.SpId AS 库存记录编号, dbo.Product.Pname AS 商品名称,dbo.ProInStore.Pprice AS 商品价格, dbo.ProInStore.Pnum AS 商品数量,dbo.ProInStore.MakeDate AS 生产日期, dbo.Storehouse.Sname AS 仓库名称,ROUND(DATEDIFF(day, DATEADD(day,dbo.Product.Valid, dbo.ProInStore.MakeDate),GETDATE()), 0)AS 距离失效期的天数 FROM dbo.ProInStore INNER JOIN dbo.Product ON dbo.ProInStore.Pid = dbo.Product.Pid AND DATEDIFF(day,GETDATE(), dbo.ProInStore.MakeDate)

>= dbo.Product.Valid-dbo.Product.AlarmDays INNER JOIN dbo.Storehouse ON dbo.ProInStore.Sid = dbo.Storehouse.Sid GO 在SELECT语句中,使用了如下的SQL Server函数:

1、DATEADD 在向指定日期加上一段时间的基础上,返回新的datatime值。

2、DATEDIFF 返回两个指定日期的时间差。

3、ROUND 根据指定的长度和精度对数字表达式进行四舍五入。

4、GETDATE 按datetime值的SQL Server标准内部格式返回当前系统日期和时间。

商品失效报警信息管理对话框ID为IDD_VALID_DIALOG。对应的类为CValidDlg。对话框的布局与商品数量报警信息管理对话框类似。因为功能已经在视图里实现了所以此对话框不用添加额外的函数。第五章 结束语

5.0 开发中的问题和解决办法

如何高效的在VC++中添加类与对话框及消息响应函数。为了解决这些问题,本设计中的所设计的类与对话框采用利用VC++向导生成,然后在自动生成的基础上修改,节省了相当一部分繁琐的时间加快了程序开发的速度,节省了开发的时间。

在设计中使用了大量的数据,设计了大量的表格。为了便于实现数据与表的连接、表与类的连接,采用了数据库软件。这样只要调用数据库本身的查询、插入、修改等语句就以轻松的操作这些数据。使理论上的知识很好的与实际问题相结合。5.1 系统不足之处

在本设计中,还有很多不足之处:界面的美观还可以进行更进一步的改善,还可以再增加一些功能,比如在状态栏增加时间显示,可以让使用人员很方便的看到当前时间。也可以增加实时的通讯功能,可以让管理员与普通用户之间进行实时通讯。本系统在处理大量的数据时能力还很欠缺,应该再设计时采用一些适当的算法对本系统进行优化。第六章 致谢

在论文完成之际,我要特别感谢我的指导老师吕知辛老师的热情关怀和悉心指导。在我撰写论文的过程中,吕知辛老师倾注了大量的心血和汗水,无论是在论文的选题、构思和资料的收集方面,还是在论文的研究方法以及成文定稿方面,我都得到了吕知辛老师悉心细致的教诲和无私的帮助,特别是他广博的学识、深厚的学术素养、严谨的治学精神和一丝不苟的工作作风使我终生受益,在此表示真诚地感谢和深深的谢意。

在论文的写作过程中,也得到了许多同学的宝贵建议,在此一并致以诚挚的谢意。感谢所有关心、支持、帮助过我的良师益友。

参考文献

【1】孙鑫.VC++深入详解.北京:电子工业出版社.2006

【2】屈磊 李媛媛.VisualC++开发入门与编程实践.北京:电子工业出版社2007

【3】(美)Sartaj Sahni.数据结构、算法与应用——C++语言描述.北京:机械工业出版社.2001 【4】王立副 麻志毅 张世琨.软件工程.北京:北京大学出版社.1999.【5】苗雪兰 刘瑞新 宋会群.数据库技术及应用.北京:机械工业出版社.2005 【6】李涛 刘凯奎 王永晈.数据库开发与实例.北京:清华大学出版社.2006 【7】启明工作室.SQL Server 2005 数据库应用系统开发.北京:人民邮电出版社.2007 【8】(美)Timothy A.Budd.面向对象编程导论.北京:机械工业出版社.2003 【9】郑阿奇.Visual C++教程[M].北京:机械工业出版社,2004 【10】东方人华等.Visual C++ 6.0范例入门与提高[M].北京:清华大学出版社.2003

【11】:刘诚方,曾昭荣.BorlandC++Windows初级程序设计.天津:天津科学技术出版社.1997.1

【12】陈慧南.数据结构:使用C++描述.南京:东南大学出版社.2001

下载仓库管理系统 毕业设计_文献综述word格式文档
下载仓库管理系统 毕业设计_文献综述.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    仓库管理文献综述--毕业论文

    仓库管理文献综述 学生: zhnna 学号:200103050f23 班级:07 摘要:传统的仓库管理仅凭仓库管理员人脑记忆和手工录入,这种做法不但费时费力,而且容易出错。随着仓库管理信息系统的引......

    仓库管理系统文献综述 选题报考参考(共五则范文)

    本科生毕业设计(论文) 2 1 文献综述仓储是每个物流系统不可缺少的组成部分,它是制造商与客户之间的一个主要的联系纽带。在过去的几年里,仓储从企业物流系统中一个相对较小的方......

    jsp物流仓库管理系统毕业设计任务书和开题报告

    jsp物流仓库管理系统毕业设计任务书和开题报告 毕业设计(论文)任务书 设计(论文)起讫时间: 2006年3月10 日~ 2006年6 月 5 日 设计(论文)目的和要求: 物流中心仓储信息管理系统是物......

    毕业设计论文管理系统

    毕业设计(论文)管理系统 用户手册 (指导教师) 南京先极科技有限公司 第1页 共19页 Nanjing Change Technology Co.,Ltd. 目录 第一部分 毕设流程图展示 ..........................

    毕业设计论文管理系统

    毕业设计(论文)管理系统 用户手册 (教学秘书) 目录 第一部分 毕设流程图展示 ................................................................... 3 第二部分 毕业设计操......

    仓库管理系统毕业论文

    摘要 仓库管理系统是为了实现企业产品管理的系统化、规范化和自动化从而提高企业管理效率而设计的。它完全取代了原来一直用人工管理的工作方式避免了由于管理人员的工......

    企业仓库管理系统

    企业仓库管理系统 企业仓库管理系统是一个稳定的、可扩展的、易于使用的实时仓储管理系统,它全面提升了传统物流仓储企业的货物管理和处理模式。系统分为存货、出库、产品分......

    条码仓库管理系统

    明科条码仓库管理系统解决方案是基于条码、RFID技术的库房管理系统移动应用解决方案,集成移动条形码应用的仓储管理系统,使您一步到位的建立起完善的仓储管理系统和条形码系......