仓库管理系统设计项目解决方案_第1页
仓库管理系统设计项目解决方案_第2页
仓库管理系统设计项目解决方案_第3页
仓库管理系统设计项目解决方案_第4页
仓库管理系统设计项目解决方案_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

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

文档简介

1、仓库管理系统设计项目解决方案目录一. 需求分析 . 41.1 开发背景 . 41.2 开发意义 . 5二. 总体概述 . 62.1 系统功能 . 62.1.1 登录模块 . 72.1.2 管理员模块 . 72.1.3 系统管理员模块 . 92.2 界面设计 . 112.2.1 登录界面 . 112.2.2 系统管理员界面 . 112.2.3 管理员界面 . 12三. 数据库设计 . 123.1 数据库的概念设计 . 123.2 数据表的设计与实现 . 174. 系统公共类部署 . 215. 主要功能模块实现 . 235.1 管理员模块 . 2325.1.1 基本信息模块 . 235.1.2 货

2、物信息模块 . 255.1.3 出库入库模块 . 275.1.4 信息查询模块 . 325.1.5 报警功能模块 . 335.1.6 信息导出模块 . 345.2 系统管理员模块 . 365.2.1 管理员信息模块 . 365.2.2 采购员信息模块 . 385.2.3 提货员信息模块 . 393一.需求分析1.1 开发背景随着信息技术的发展和国内外互联网技术应用水平的逐步提高,在企业管理过程中,传统的工作方式和管理模式已经难以满足现代社会的必然需求,实现企业现代化综合管理已经是提高国家政府机关和企事业单位各部门工作效率、规范化管理的必然发展趋势。随着经济全球化、信息网络化和物流现代化进程的全

3、面推进,仓储供需量呈现爆炸式的增长,传统的仓库管理模式和管理系统,已根本满足不了现代社会全面信息化的严峻挑战,如何加强以信息化为指导的现代仓库管理技术已成为物流现代化走向成功的有效途径,如何将互联网技术和仓储物流的信息化技术紧密结合起来,开发出适应当前社会发展需要的、先进的现代化物流仓储管理技术平台,是现代化物流发展技术中一项基础的、又是很关键的、特别值得研究的子课题。asp 技术是面向对象编程的技术,可实现复杂数据库的操作;用 asp 开发的 web 应用程序安装在网络服务器上,运行在网络服务器上,因而 asp 源程序的隐密安全系数性高;而 asp 又是基于 b/s 模型架构的、开放式的we

4、b 服务器的应用程序开发技术,因此,采用 asp 技术开发运行在服务器端的仓库管理信息系统平台是众多软件设计与开发人士的首要选择。本文比较全面地阐述了与 asp、ado、b/s 模式有关的理论技术,为构建 web 仓库管理信息系统提供了必要的理论支持。首先分析了 asp 技术的优势、特点及其工作原理,剖析了4asp 工作的核心内涵,搭建了 asp 技术的工作环境,为开发系统功能提供的必需的技术运行环境;分析了目前 web 数据库最佳访问组件 ado 技术的对象与数据集之间的关系,直接搭建了 web 应用程序与数据库访问的联系梁;根据现代仓储市场的需求特点,对拟开发系统的功能进行了细致地分析与设

5、计,建立了仓储数据管理的 e-r 模型图、数据库结构,分析了 b/s 架构模式的三层框架,构建了以该框架为模型的仓库管理信息系统,重点分析介绍了有关功能模块的 asp 实现过程,成功地实现了基于 asp 运行环境的仓库管理信息系统的开发与设计;并对本系统的各项功能进行了测试与分析,发现系统运行状态良好,人机交互友好,程序设计实现合理,达到了项目设计的目的和要求。最后,对本次的项目设计进行了总结与展望,发现了系统的构架模式关系着程序开发效率,对开发系统有着重要的影响意义,好马配好鞍,优秀的软件必然有优秀的构架。作为软件开发设计人员既要努力学好软件技术又要重视相关模式的学习,这样,就能达到事半功倍

6、的效 果,设计开发出更加优秀的应用系统来。1.2 开发意义仓库管理系统是典型的信息管理系统 (mis),其开发主要包括后台数据库的建立和维护,以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库,而对于后者则要求应用程序功能完备、易使用 等 特 点 。 经 过 分 析 , 我 们 使 用 microsoft 公 司 的 数 据 库 开 发 工 具 sql5server2008 和 microsoft visual studio 2010,利用其提供的各种面向对象的开发工具和数据库的结合比较方便,我们开发了这套库存管理系统,包括仓库管理、入库管理、出库管理、库

7、存管理以及查询等模块。仓库管理可用于配置企业的仓库信息;出库、入库管理可以使管理人员管理各种类型的货物进出;库存管理可提供便捷的库存查询管理。仓库管理系统实现了企业对货物的管理 ,用来控制存储货物的数量,以保证稳定的货物支持正常的运转,但又最小限度地占用资本。它是一种相关的、动态的及真实的库存控制系统。它能够结合、满足相关部门的需求,随时间变化动态地调整库存,精确地反映库存现状,加强库存环节管理,有效地控制货物收发 , 降低了库存 , 优化了库存结构 ; 能够及时了解货物状态 ,全方位的仓库管理可以及时了解货物分布,避免了货物短缺、积压、过期变质,及时了解货物 的收发成本,货物数据共享。二.

8、总体概述2.1 系统功能系统要具备如下功能:登录界面统一,用户登录系统时进行身份验证,如不是系统用户则禁止登录; 添加新员工时,通过系统管理员进行添加,并能采集员工的基本信息;仓库货品信息的管理,系统包括仓库管理、入库、出库和一些统计查询等几部分组成。仓库管理系统实现对货品信息的管理和总体的统计等,仓库信息,供货单位和操作员信息的查看及维护。仓库管理人员可以浏览、查询、6添加、删除等产品的基本信息。2.1.1 登录模块登录模块可以分为系统管理员登录和管理员登录。如果用户要进行登陆时,系统会进去数据库进行帐号密码匹配,同时也要进行权限匹配,如果匹配成功才可以登录。根据其选择的用户不同,输入不同的

9、用户与密码,接入不同的用户界 面,管理不同的界面。登录模块管理员登录系统管理员登录2.1.2 管理员模块管理员登录:基本信息管理(仓库基本信息,客户基本信息,操作员基 本信息)货物信息管理(对货物信息的添加,删除,修改等功能)仓库货物管理(进行出库和入库操作及其信息记录)查询信息管理(对仓库,货物,客户等信息的查询)7仓库警报功能(当库存信息不足时进行提醒功能)信息导出功能(导出货物信息,入库信息,出库信息)仓库管理系统登录模块基本信息管理货物信息管理仓库货物管理查询信息管理仓库警报功能信息导出功能管理员登录系统管理员登录仓库基本信息客户基本信息操作员基本信息添加货物信息修改货物信息删除货物信

10、息出库操作出库操作查询货物信息查询仓库信息查询客户信息货物不足警报导入货物信息导出入库信息导出出库信息82.1.3 系统管理员模块系统管理员登录:管理员信息管理(对管理员信息的添加,修改,删除)采购员信息管理(对采购员信息的添加,修改,删除)提货员信息管理(对提货员信息的添加,修改,删除)9仓库管理系统管理员信息管理采购员信息管理提货员信息管理添加管理员信息修改管理员信息删除管理员信息添加采购员信息修改采购员信息删除采购员信息添加提货员信息修改提货员信息删除提货员信息102.2 界面设计2.2.1 登录界面2.2.2 系统管理员界面112.2.3 管理员界面三. 数据库设计3.1 数据库的概念

11、设计1.e-r 图设计方法1). 属性必须是不可分的数据项。2). 属性不能与其他实体具有联系,联系只能发生在实体之间。 2.全局 e-r 图12管理管理员1管理n管理提货员仓库n采购员提取存放m货物n提供m客户采购133.2 数据流图出货查询操作仓库进货操作员返回结果仓库管理系统出库购货货物客户入库供货1415163.3 数据表的设计与实现(1)仓库表字段名称仓库编号仓库名称仓库地址仓库大小(2)入库表字段名称货物编号采购员编号采购日期采购数量数据类型nchar(10)nvarchar(50)nvarchar(50)int数据类型nchar(10)nchar(10)datetimeint描述

12、仓库编号,主键仓库名称仓库地址仓库大小描述货物编号采购员编号采购日期采购数量17管理员编号仓库编号(3)出库表字段名称货物编号提货员编号出库日期出库数量仓库编号(4)客户表字段名称客户号客户名客户类型联系地址邮政编号联系电话备注(5)库存表nchar(10)nchar(10)数据类型nchar(10)nchar(10)datetimeintnchar(10)数据类型varchar(10)varchar(50)varchar(50)varchar(50)varchar(10)varchar(30)varchar(100)18管理员编号仓库编号描述货物编号采购员编号采购日期采购数量仓库编号描述客户

13、号,主键客户名客户类型联系地址邮政编号联系电话备注字段名称货物编号仓库编号货物数量清点时间(6)提货员表字段名称提货员编号数据类型nchar(10)nchar(10)inttimestamp数据类型nchar(10)描述货物编号仓库编号货物数量清点时间描述提货员编号,主键提货员姓名提货员性别提货员联系方式提货员联系地址 部门(7)用户表字段名称用户名密码nchar(10)nchar(10)nvarchar(50)nvarchar(50)nvarchar(50)数据类型nchar(10)nchar(10)提货员姓名提货员性别提货员联系方式提货员联系地址 部门描述用户名密码19权限(8)管理员表字

14、段名称管理员编号int数据类型nchar(10)权限描述管理员编号,主键管理员姓名管理员性别管理员联系方式(9)货物表字段名称货物编号货物名称仓库编号生产日期生产厂家采购员编号货物单价入库时间(10)采购员表nchar(10)nchar(10)nvarchar(50)数据类型nchar(10)nchar(10)nchar(10)datetimenvarchar(50)nchar(10)intdatetime20管理员姓名管理员性别管理员联系方式描述货物编号货物名称仓库编号生产日期生产厂家采购员编号货物单价入库时间字段名称采购员编号数据类型nchar(10)描述提货员编号,主键采购员姓名采购员性

15、别采购员联系方式采购员联系地址nchar(10)nchar(10)nvarchar(50)nvarchar(50)提货员姓名提货员性别提货员联系方式提货员联系地址四. 系统公共类部署using system;using system.collections.generic;using system.linq;21using system.web;using system.data;using system.data.sqlclient;public class class1public class1()public static sqlconnection myconn()return new

16、 sqlconnection(server=.;database=cangku;integrated security=true;);22五. 主要功能模块实现5.1 管理员模块管理员模块是一个学校学生信息系统中最为关键的一个环节,管理员能操作操作系统内的任何信息,具体该系统的基本权限,是可以对系统内的信息进行维 护的,对系统进行操作的。5.1.1 基本信息模块基本信息模块包含仓库基本信息,客户基本信息,操作员基本信息。仓库基本信息设置有修改和删除的功能。客户基本信息设置了添加,删除和修改的功能。操作员基本信息设置了修改功能。因为客户信息为常变实体属性,因此设置了添加,修改和删除的功能。仓库信

17、息为不常变实体属性,因此设置了修改和删除属性。操作员因为是管理员,不能修改同一等级权限的信息,因此只给添加了修改 基本信息的功能。添加客户信息关键代码protected void button1_click(object sender, eventargs e)sqlcommand mycomm = new sqlcommand(insert into 客户values( +this.textbox1.text.tostring() + , + this.textbox2.text.tostring() + , + this.textbox3.text.tostring() +23, + th

18、is.textbox4.text.tostring() + , +this.textbox5.text.tostring() + , + this.textbox6.text.tostring() + , + this.textbox7.text.tostring() + ), conn);conn.open();mycomm.executenonquery();conn.close();sqlcommand my = new sqlcommand(select * from 客户where 客户号 = + this.textbox1.text.tostring() + , conn);con

19、n.open();sqldatareader recu = my.executereader();if (recu.read()response.write(alert(添加成功!););elseresponse.write(alert(添加失败!););24conn.close();5.1.2 货物信息模块货物信息模块包含对货物信息的添加,货物信息的删除,货物信息的修改对 应现实世界的引进新货物,货物信息的更新和清仓处理。添加货物信息的关键代码protected void button1_click(object sender, eventargs e)sqlcommand mycomm =

20、 new sqlcommand(insert into 货物 values(+ this.textbox1.text.tostring() + , + this.textbox2.text.tostring() + , + this.textbox3.text.tostring() +, + this.textbox4.text.tostring() +, +this.textbox5.text.tostring()+, +this.textbox6.text.tostring()+, +this.textbox7.text.tostring()+, +this.textbox8.text.t

21、ostring()+), conn);conn.open();25mycomm.executenonquery();conn.close();sqlcommand my = new sqlcommand(select * from 货物 where 货物编号= + this.textbox1.text.tostring() + , conn); conn.open();sqldatareader recu = my.executereader();if (recu.read()response.write(alert(添加成功!););elseresponse.write(alert(添加失败

22、!););conn.close();265.1.3 出库入库模块出库入库模块包含了货物出库和入库模块。对于入库信息来说,当系统开始入库时,先判断货物是否存在,如果不存在的话这直接将货物信息插入库存表,然后在入库表中插入记录,提示入库成功。如果货物存在的话则看对应的仓库是否存在如果存在的话则在原来的货物基础上只更新货物数量提示入库成功,如果仓库不匹配的话则插入该货物信息,然后在入库表中插入记录,提示入库成功。出库信息,当系统开始出库时,先判断货物是否存在如果存在的话则看需要出货的仓库是否存在,如果存在的话再看货物数量是否满足出货数,如果满足则出库成功同时对库存表和出库表进行更新,提示出库成功,否

23、则则出库失败。 入库关键代码protected void button1_click(object sender, eventargs e)sqlcommand my = new sqlcommand(select * from 库存where 货物编 号= + this.textbox1.text.tostring() + and 仓库编号=+this.textbox6.text.tostring() + , conn);conn.open();sqldatareader recu = my.executereader();27if (recu.read()conn.close();sqlc

24、ommand my1 = new sqlcommand(update 库存 set 货物数量=(货物数量+ + this.textbox4.text + ) where 货物编号= +this.textbox1.text.tostring() + and 仓库编号= +this.textbox6.text.tostring() + , conn);conn.open();my1.executenonquery();conn.close();elseconn.close();sqlcommand my2 = new sqlcommand(insert into 库存(货物编号,仓库编号,货物数量

25、) values( + this.textbox1.text.tostring() + , +this.textbox6.text.tostring() + , + this.textbox4.text+ ), conn);conn.open();my2.executenonquery();28conn.close();sqlcommand my3 = new sqlcommand(select * from 库存where 货物 编号= + this.textbox1.text.tostring() + and 仓库编号= +this.textbox6.text.tostring() + ,

26、 conn);conn.open();sqldatareader recu1 = my.executereader();if (recu1.read()conn.close();sqlcommand mycomm = new sqlcommand(insert into 入库avalues( + this.textbox1.text.tostring() + , +this.textbox2.text.tostring() + , + this.textbox3.text.tostring() +, + this.textbox4.text + , +this.textbox5.text.to

27、string() + , + this.textbox6.text.tostring() + ), conn);conn.open();29mycomm.executenonquery();conn.close();response.write(alert(添加成功!););elseconn.close();response.write(alert(添加失败!););出库关键代码protected void button1_click(object sender, eventargs e)sqlcommand my = new sqlcommand(select * from 库存where

28、( 货物编号= + this.textbox1.text.tostring() + and 货物数量= +this.textbox5.text+ and 仓库编号= + this.textbox2.text.tostring() +30) , conn);conn.open();sqldatareader recu = my.executereader();if (recu.read()conn.close();sqlcommand mycomm = new sqlcommand(insert into 出库values( + this.textbox1.text.tostring() + ,

29、 +this.textbox2.text.tostring() + , + this.textbox3.text.tostring() +, + this.textbox4.text + , +this.textbox5.text.tostring() + , + this.textbox6.text.tostring() + ), conn);conn.open();mycomm.executenonquery();conn.close();sqlcommand my1 = new sqlcommand(update 库存 set 货物数量=(货物数量- + this.textbox5.te

30、xt + ) where (货物编号= +this.textbox1.text.tostring() + and 仓库编号= +31this.textbox2.text.tostring() + ), conn);conn.open();my1.executenonquery();conn.close();response.write(alert(出库成功!););elseconn.close();response.write(alert(货物不存在或者货物不出库失败!););5.1.4 信息查询模块信息查询模块包含货物信息查询,仓库信息查询,客户信息查询。通过对客户表,仓库表和货物表的主键进

31、行匹配唯一的确定一行数据反回 gridview 进行32显示。查询仓库信息关键代码protected void bindgrid()sqldataadapter dataadapter2 = newsqldataadapter(select * from 仓库 where 仓库编号= + textbox1.text.tostring() + , myconn);dataset sets = new dataset();dataadapter2.fill(sets, aaa);this.gridview1.datasource = sets.tablesaaa;this.gridview1.da

32、tabind();5.1.5 报警功能模块警报信息功能,是当库存中货物数量少于 10 的时候自动提醒管理员要进行 及时的补货,以免货物短缺,造成损失。警报信息关键代码33protected void button1_click(object sender, eventargs e)label1.text = 以下货物库存不足,请及时补充; sqldataadapter dataadapter2 = newsqldataadapter(select * from 库存 where 货物数量=10, conn); dataset sets = new dataset();dataadapter2.

33、fill(sets, aaa);this.gridview1.datasource = sets.tablesaaa;this.gridview1.databind();5.1.6 信息导出模块信息导出模块包含了导出货物信息,导出出库信息,导出入库信息功能,方 便仓库人员进行报表打印和仓库流水信息。导出货物信息关键代码public override void verifyrenderinginserverform(control control) protected void button1_click(object sender, eventargs e)34response.clear()

34、;response.bufferoutput = true;response.charset = gb2312;response.appendheader(content-disposition,attachment;filename=statement.doc);r esponse.contentencoding =s ystem.text.encoding.getencoding(gb2312);response.contenttype = application/ms-word;gridview1.enableviewstate = false;system.globalization.

35、cultureinfo cultureinfo = newsystem.globalization.cultureinfo(zh-cn, true);system.io.stringwriter stringwriter = newsystem.io.stringwriter(cultureinfo);system.web.ui.htmltextwriter textwriter = newsystem.web.ui.htmltextwriter(stringwriter);gridview1.rendercontrol(textwriter);response.write(stringwriter.tostring();r

温馨提示

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

评论

0/150

提交评论