#基于web的库存管理系统.docx
- 文档编号:3336591
- 上传时间:2022-11-21
- 格式:DOCX
- 页数:25
- 大小:1.62MB
#基于web的库存管理系统.docx
《#基于web的库存管理系统.docx》由会员分享,可在线阅读,更多相关《#基于web的库存管理系统.docx(25页珍藏版)》请在冰豆网上搜索。
#基于web的库存管理系统
学校代码:
10184
学号:
2064020671
延边大学
本 科 毕 业 论 文
本科毕业设计
(
题目:
基于web的库存管理系统
学生姓名:
张锐
学院:
工学院
专业:
计算机科学和技术
班级:
2006级
指导教师:
徐晓霞副教授
二〇一〇年五月
摘要
本设计研究的是基于web的库存管理系统。
该系统通过MicrosoftVisualWebDeveloper2005中的C#语言编写,连接MicrosoftSQLServer2000运行。
在该系统中可以实现对仓库的基本维护,例如,对仓库和货物信息进行添加、删除、修改和查询等功能;同时也可满足仓库的基本管理,如:
进出货时更改仓库信息及对货物销售情况进行统计等。
基于web的库存管理系统把新型的交互web网页和传统的库存系统相结合,更好的满足了用户的需求。
它对物品的无差错、高效率存储提供了巨大的支持,是企业优化仓库管理的必需工具。
本文详细介绍了该系统的体系结构和设计过程,并说明了系统设计和实现的最终效果。
关键词:
ASP.NET;Web;库存管理;
Abstract
Thispaperaimsatdesigningawarehousemanagesystem(WMS)whichbasedonwebdeveloping.TheprogramiscompiledbyC#programminglanguageinMicrosoftVisualWebDeveloper2005andrunbylinkingSQLServer2000.Inthissystem,userscanmanagethewarehouse,like,adding,deleting,modifyingorinquiringaboutsomeinformationwhichisrelatedtothegoods,warehousesandsoon.Exceptforthat,itcanalsomodifythestorageofgoodswhensellingthemoutorpurchasingthemfromsuppliers,andthenrecordingit.
Thesystemcombinesthenewinteractivewebpagewiththetraditionalwarehousemanagement,makingtheoperationmoreconveniently.ItprovidesatremendoussupportonError-freegoodsandefficientstorage,andthatmakesitbecomingamoreandmorenecessarytoolforwarehousemanagement.Theprocessofdesigningandthestructureofthesystemareexplainedindetail,andatlast,theresultsofthesystemdesignareillustrated.
Keywords:
ASP.NET;Web;WarehouseManagement;
引言
仓库管理系统(WMS)是物资管理系统的核心,是一个企业不可缺少的部分,它的内容对于企业的决策者和管理者来说都至关重要。
一直以来人们使用传统人工的方式管理仓库,查找、更新和维护困难。
今天,仓库作业和库存控制作业已多样化、复杂化,靠人工去处理已十分困难。
如果不能保证正确的进货、验收及发货,就会导致产生过量的库存,延迟交货时间,增加经营成本,以致失去客户,所以很有必要设计出一套系统来管理企业的库存运作。
随着科学技术的不断提高,计算机科学日渐成熟,基于web的库存管理系统应运而生,其检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等优点极大地提高人事劳资管理的效率;其能够有效地组织人员、空间和设备进行收货、存储、拣货和运输,组织运送原材料和部件到生产企业,运送成品到批发商、分销商和最终客户手中等强大的功能已为人们所熟知[1]。
仓库管理系统是为企业的采购、制造计划、制造执行、客户服务系统和仓库或配送中心提供的管理手段,满足企业对低成本和快速处理的要求,帮助不同行业的企业解决复杂的配送问题并且降低订单履行成本,它已越来越广泛的使用到各大仓库,并随着不断的完善发挥着越来越重要的作用。
因此,为了满足企业的要求,为了满足变化的制造环境对库存管理系统提出新的要求,为了实现便捷、及时、统一、低成本、高效率的库存管理,设计了基于web的库存管理系统。
该系统能提供良好的用户管理界面,可以全面管理仓库中的商品和货物,缩短库存信息流转时间,进而提高企业的经营效率[2]。
本论文将讲述典型的基于web的库存管理系统的设计和实现。
第一章课题可行性分析
本章主要介绍开发基于web的库存管理系统的意义及对开发该系统所需工具进行了简要的描述。
1.1选题背景
现代企业的最大特点是信息处理量比较大,所管理的物资设备、原材料及零部件种类繁多,而且由于入库单、出库单等单据发生量特别大,关联信息多,查询和统计的方式各不相同,因此在管理上实现起来有一定的困难。
动态变化的制造环境对库存管理系统提出了新的要求,所以很有必要设计出一套系统来管理企业的库存运作,而传统的库存管理系统操作复杂,效率低。
因此,本文根据现代制造企业库存管理的特点和要求,讨论了基于web的库存管理系统的体系结构,通过实现用户界面、使用程序和数据的相互独立,提高库存管理的敏捷性、可维护性和数据完整性。
1.2开发工具简介
本系统主要使用MicrosoftVisualWebDeveloper2005中的Asp.Net辅以MicrosoftSQLServer2000实现。
1.2.1MicrosoftVisualWebDeveloper2005简介
VisualWebDeveloper2005速成版是MicrosoftVisualStudio2005系列产品的一部分,该环境提供一个同类最佳的HTML源代码编辑器、一个改进的可视化页设计器、一个新的项目系统、对数据操作的更好的支持以及对XHTML标准的完全支持。
此外,它还集成了许多ASP.NET开发使用的组件,用户可以直接使用这些组件创建ASP.NET使用程序,极大地方便了用户编程[3]。
1.2.2ASP.NET简介
Asp.Net是目前最流行的Web开发技术之一,是微软公司用于创建功能强大的网站的工具,该技术基于.NET环境开发,具有简易性、自定义性、扩展性、安全性、可管理性、可缩放性等优点,而且支持多种语言,包括:
VisualBasic.Net、C#、Jscript等,本系统主要利用C#语言进行编写[4]。
1.2.3SQLServer2000简介
SQLServer2000是微软公司于2000年推出的一款面向高端的数据库管理系统,支持关系数据库的结构化查询语言SQL,具有动态自动管理和优化功能。
它还支持大型web站点,对数据的操作和管理都有很好的支持,深受客户的喜爱,使用非常广泛[5]。
第二章需求分析
需求分析是系统开发的第一步也是最重要的一步[6]。
开发一个仓库管理信息系统之前,开发者首先要了解和澄清用户的需求。
开发者只有和客户充分理解了需求之后才能开始设计系统;否则,对需求定义的任何改进,设计上都必须大量的返工。
2.1任务概述
基于web的库存管理系统具有对仓库信息、货物信息及所涉及到的员工信息进行管理及维护的功能,也具有对每一次仓库货物变动情况进行记录以及自动生成订货报表的功能。
其目标是提高仓库的存储效率,减少仓库管理漏洞。
2.2用户对系统的需求
该系统主要面向三类用户:
仓库主管、分仓库管理员和采购员。
不同的用户对系统的需求不同。
具体所列如下:
2.2.1仓库总管对功能的需求
(1)员工信息管理
●浏览所有员工信息
●按员工号查找某位员工的具体信息
●对员工信息进行录入、修改及删除
(2)仓库信息管理
●浏览所有仓库的基本信息
●按仓库编号查找某个仓库的具体信息
●对仓库信息进行录入、修改及删除
(3)货物信息管理
●浏览所有仓库中的货物信息
●按货物编号查找某项货物的具体信息
●对货物信息进行录入、修改及删除
(4)存储规则管理
存储规则是用来管理仓库的货物存放规则信息,包括最大存量、最低警戒线等。
●浏览所有货物存放规则信息
●按存储规则编号查找某项货物存放规则信息
●录入、修改及删除货物存放规则信息。
(5)对所有货物的进出信息进行浏览
2.2.2分仓库管理员对功能的需求
录入仓库货物的变动信息,内容主要包括货物名称,当前货物存量,最大存储量,最低警戒线以及实际操作的进货/出货数量,负责人等。
变动包括进货和出货两类,分仓库管理员要根据货物的存放规则合理进出货,即进货时不能超过最大库存量,出货时不能大于当前的货物存储值等。
2.2.3采购员对功能的需求
根据库存情况,系统生成采购信息的浏览。
并根据货物需求的紧急程度进行采购。
采购信息内容主要包括货物名称、所需仓库、仓库地址、仓库描述、货物描述、所需数量、当前价格、供应商和紧急程度等。
2.3系统功能模块划分
仓库管理信息系统所需要实现的功能可以细分为几个模块:
员工管理、仓库管理、货物管理、存储规则管理、货物进出记录、货物进出控制及仓库需求生成。
2.3.1系统登录模块
该模块是针对用户登录的用户管理模块。
用户先选择自己的员工类型,然后输入自己的员工号及密码,经系统验证后,便可以使用该系统和其权限相对应的功能。
另外,当用户需要离开系统或切换用户时,该模块还提供了注销功能。
2.3.2员工管理模块
该模块负责管理所有参和仓库管理运作的员工信息,包括添加、删除、修改和查找员工信息。
系统各功能操作按照员工的工作类别区别给予,系统分为3种权限:
仓库总管、分仓库管理员和采购员。
其中,仓库总管可以管理所有员工信息,而分仓库管理员及采购员只能对自己的信息进行修改和维护。
2.3.3仓库管理模块
该模块负责管理本系统所涉及的所有仓库信息,包括添加、删除、修改和查找仓库信息。
只有仓库总管才具有对仓库信息进行维护的权利。
2.3.4货物管理模块
该模块负责管理所有在仓库中存放的货物的详细信息,包括添加、删除、修改和查找货物信息。
只有仓库总管有权对货物信息进行维护。
2.3.5存储规则管理模块
该模块负责管理仓库的货物存放规则信息,包括添加、删除、修改存储规则信息。
由仓库总管决定各种货物对应的存放规则,何种物品存放在何仓库,限量多少,最低警戒线多少等。
存储规则作为一种关系存在,联系仓库和货物这两个孤立的信息。
只有仓库主管才具有对存储规则进行维护的权利。
2.3.6货物进出控制模块
货物进出控制就是对进仓、出仓的货物进行登记管理,分仓库管理员将担负起这个职责,当有货物进出仓库是,分仓库管理员调用这个模块,按照预先设定好的存储规则对合法货物进行进出控制。
2.3.7仓库需求生成模块
我们对仓库进行管理的最终目的是及时发现当前仓库的需求,当前需求主要是提供给采购部门信息的浏览,它不提供给任何人删除以及修改的权利,仓库需求中系统将会根据目前仓库的存储情况,赋予每一个订单一个量化的紧急程度值,供采购部门安排采购时确定采购顺序。
2.3.8货物进出记录模块
每一笔货物的进出显然要做到有据可查,查阅的内容包括货物名称,仓库信息,进出库数量,进出库产生日期,负责人,经手人等。
以上信息我们都会在对货物进出进行控制时产生,但是货物进出记录一旦生成就不可修改、删除,这也提供了仓库管理信息系统的可靠性。
只有仓库管理员才具有对所有货物的进出信息进行浏览的权利。
2.4系统流程分析
为了更清楚地说明系统框架,以便更好地设计该系统的解决方案,画出该系统流程图,如图2-1所示。
系统流程图展示了该系统所有功能模块之间的逻辑关系,其中的各个功能模块基本上都代表了一个或多个独立的页面,并将在下面的系统设计阶段得到体现[7]。
图2-1系统流程图
由流程图可以看出,用户验证通过后,系统会根据该用户的账户信息进行授权。
其中,当有货物进或出仓时,各分仓库管理员可以通过货物进出控制模块进行控制,同时受到存储规则的约束,比如,进仓的货物数量不能大于存储规则中所设定的最大存储量等。
当货物出库后,如果货物在仓库中的数量低于存储规则所设定的存放底线时,系统会通过仓库需求生成模块自动生成需求清单,以指导采购员对货物进行采购。
第三章系统设计
3.1数据库设计:
(1)鲜花信息表
该表用于存放仓库管理信息系统中所有参和人员的信息,其结构如表3.1所示:
表3.1用户信息表
编号
列名
数据结构
说明
1
员工号
Char(10)
该表的主键,前4位-年,第5位-员工类型,6-性别,7-10位-流水号
2
姓名
Varchar(50)
3
性别
Bit
0-男,1-女
4
地址
Varchar(50)
5
电话
Varchar(50)
6
电子邮箱
Varchar(50)
7
用户类型
Int(4)
1-仓库总管2-分仓库管理员3-采购员
8
密码
Varchar(50)
6—20位之间
9
所属仓库号
Char(10)
外码,参照表为仓库信息表
其中,该表中的每一项都不能为空。
(2)仓库信息表
该表用于存放当前公司所有涉及到的仓库信息,其结构如表3.2所示:
表3.2仓库信息表
编号
列名
数据结构
说明
1
仓库编号
Char(10)
主键,4-建库日期,5-7所在城市,后3位流水号
2
仓库名称
Varchar(50)
3
仓库所在地
Varchar(50)
4
仓库大小
Float(8)
单位为:
平方米
5
仓库描述
Varchar(50)
对该仓库所存货物的简单描述
在该表中,除了仓库描述字段可以为空外,其余各字段均不能为空。
(3)供应商表
该表描述了供应商的基本信息,其结构如表3.3所示:
表3.3供应商表
编号
列名
数据结构
说明
1
供应商号
Char(4)
主键,流水号
2
供应商名
Varchar(50)
3
供应所在地
Varchar(50)
4
联系电话
Char(11)
供应商表中各项均不能为空。
(4)货物信息表
该表记录当前仓库存储的货物信息,其结构如表3.4所示:
表3.4货物信息表
编号
列名
数据结构
说明
1
货物编号
Char(10)
主键,4-入库日期,后几位为流水号
2
货物名称
Varchar(50)
3
当前价格
Float(8)
单位为:
元
4
供应商号
Char(4)
外码,参照表为:
供应商表
5
货物描述
Varchar(50)
对该该货物的简单描述
在该表中,除了货物描述字段可以为空外,其余各字段均不能为空。
(5)存放规则信息表:
该表用来存放货物的存储规则,其结构如表3.5所示:
表3.5存放规则信息表
编号
列名
数据结构
说明
1
存储规则号
Char(10)
主键,4-入库日期,后几位为流水号
2
货物编号
Varchar(50)
外码,和货物表中的货物号相关联
3
仓库编号
Float(8)
外码,和仓库表中的仓库号相关联
4
最高存储量
Float(8)
5
最低警戒线
Float(8)
6
当前货物量
Float(8)
在该表中,各项均不能为空。
其中,该表和货物信息表、仓库信息表都是多对一的关系。
(6)货物进出库记录表
货物进出记录表用来存储每次商品的进仓、出仓记录,其结构如表3.6所示:
表3.6货物进出库记录表
编号
列名
数据结构
说明
1
货物进出号
Int(4)
主键,流水号
2
货物编号
Char(10)
外码,和货物表中的货物号相关联
3
仓库编号
Char(10)
外码,和仓库表中的仓库号相关联
4
出入库数量
Float(8)
该项要参照存储规则
5
是否入库
Bit
1-入库,2-出库
6
管理员编号
Char(10)
登陆该系统的分仓库管理员编号
7
经手人
Varchar(50)
不能为空
3.2关系图设计:
建表完成后,得到如下图3-1所示的关系图:
图3-1数据库各表关系图
3.3整体功能模块图
该系统的整体功能模块图如图3-2所示:
3.4某些模块功能图
3.4.1员工管理模块
第四章详细设计
在了解了上述功能模块之后,开始进行详细设计。
本章主要对用户登陆模块、仓库信息管理模块及货物进出模块进行详细分析。
4.1用户登陆模块
用户登陆模块主要由登陆页面(Login.aspx)实现,该页面设计比较简单,主要由两个文本框组成,用户在上述文本框中输入自己的员工号及密码,若员工号和密码存在且匹配,则根据其员工类型,转入到不同的主界面;若员工号或密码输入错误,则显示错误信息,清空文本框中的内容,要求用户重新进行输入。
由此画出本模块的流程图如图4-1所示:
画出流程图之后,我们就可以开始对此模块进行编码了,由于该模块需要判断用户名和密码是否正确,因此需要先和数据库进行连接。
连接的语句如下所示:
publicSqlConnectioncon;
con=newSqlConnection("server=SONY-PC;database=库存管理系统;uid=sa;pwd=");
con.Open();
为了判断用户输入的员工号和密码是否正确,在数据库中建立存储过程Pr_loginUser并在login.aspx.cx中进行调用。
调用语句如下:
SqlCommandmyCommand=newSqlCommand("Pr_loginUser",con);
myCommand.CommandType=CommandType.StoredProcedure;
//从TextBox1中获得值,并将其传入存储过程Pr_loginUser的UserID参数中:
SqlParameterparameterUserName=newSqlParameter("@UserID",SqlDbType.Char);
parameterUserName.Value=TextBox1.Text.ToString();
myCommand.Parameters.Add(parameterUserName);
//从TextBox2中获得值,并将其传入存储过程Pr_loginUser的参数pwd中:
SqlParameterparameterpwd=newSqlParameter("@pwd",SqlDbType.VarChar);
parameterpwd.Value=TextBox2.Text.ToString();
myCommand.Parameters.Add(parameterpwd);
上述语句向存储过程中传入用户输入的员工号和密码,存储过程根据这两个参数,通过查找员工信息表,判断是否存在相应的员工记录。
若存在,则将其员工号及密码保存在相应的session值中,并根据其员工类型转入相应的主界面;若不存在这样的记录,则显示错误信息。
该部分所对应的语句如下所示:
SqlDataReaderdr=null;
try
{dr=myCommand.ExecuteReader();}//执行存储过程
catch(Exceptionex)
{Response.Write("");}
StringuserId="";Stringpwd="";introle=0;
if(dr.Read())//存储过程正确执行时,返回值为true
{Session["userId"]=dr["员工号"].ToString();
Session["pwd"]=dr["密码"].ToString();
role=Convert.ToInt32(dr["用户类型"].ToString());
}
if((Session["pwd"]==null))//若没有匹配的员工记录
{Response.Write("");
TextBox1.Text=null;TextBox2.Text=null;//清空文本框中的记录}
Else//若匹配,则根据角色转入到相应的界面{if(role==1)
Response.Redirect("main1.aspx");
elseif(role==2)
Response.Redirect("main2.aspx");
elseif(role==3)
Response.Redirect("main3.aspx");
}}
至此,商品列表模块就设计好了。
保存在session集合中的员工号和密码值,可在个人密码修改时使用,即当用户点击个人密码修改界面(PasswordModify.aspx,如图4-2所示)时,先从session中取出该用户的员工号和及密码值,用户只需填写两次正确的新密码值,即可。
接下来为大家介绍仓库信息管理模块。
图4-2密码修改设计界面
4.2仓库信息管理模块
仓库信息管理模块主要由仓库管理页面(GoodsManage.aspx)实现,此页面只有仓库主管有权对其进行仓库管理,即添加、编辑、删除和查询某项仓库信息,该模块的流程图如图4-3所示:
该仓库管理的设计界面如下图4-4所示:
图4-4仓库管理设计页面
由上图可以看出,此页面右下方采用一个GridView控件和DataSet数据集的绑定来显示所有仓库的具体信息。
在进行数据绑定时,首先先配置数据源,即在“配置数据源窗口中”选择数据库文件,设置来源数据表“仓库”,并单击“测试查询”。
其次,创建GridView控件,选择刚才建立的数据源,再设置相关的选项,如在上图中,该控件的第一列及第二列均设为EditCommandColumn列,分别定义了“编辑”(更新、取消)按钮,及“删除”按钮,分别用于实现仓库信息的编辑及删除功能,并选用了启用分页等功能[8]。
再看该页面右上方,有一个添加新仓库信息的链接,该链接连接到GoodsAdd.aspx页面,如下图4-5所示,该页面主要通过填写表单来增添商品
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 web 库存 管理 系统