物流企业仓库管理系统的设计
摘 要:随着计算机技术的迅猛发展,计算机给人们带来了很多便利,人们借助于计算机进行生产劳动管理更加方便。仓库管理系统是现代企业对物资进行管理、查询和记录的信息管理系统。它能实现多个仓库的管理、分类查看等精细化管理。通过对货物的进货、出货进行详细的记录和查询以帮助企业准确的掌握库存信息,便于决策部门正确的作出企业规划,最大限度的提高企业的竞争力和管理效率。
本文就如何优化企业仓库内部管理,提高企业管理效率进行了详细分析,并用ASP 设计开发了一个以实现货物查询、管理、更新为基本目标的系统。整个过程实现了自动化模式,并且不同的用户能对自己所属仓库的货物进行出库、入库、信息查询、用户添加物品归类等操作,大大地提高了工作效率。
关键词:仓库货物管理;数据库;ASP
目 录
1. 引言 .............................................................................................................................................. 3 1.2国内外研究现状 ...................................................................................................................... 3 1.3本课题的研究意义 .................................................................................................................. 3 1.4本课题的研究思想 .................................................................................................................. 3 2. 系统开发环境和选择工具 . .......................................................................................................... 4 2.1 ASP简介 .................................................................................................................................. 4 2.2 Dreamwever简介 .................................................................................................................... 5 2.3数据库Microsoft Access 2000 简介 ................................................................................. 5 3仓库管理系统用户需求分析 . ....................................................................................................... 5 3.1用户的角色需求 ...................................................................................................................... 5 3.2功能需求 .................................................................................................................................. 6 3.3性能要求 .................................................................................................................................. 6 4 仓库管理系统的设计与实现 . ...................................................................................................... 7 4.1仓库管理系统的整体框架 ...................................................................................................... 7 4.2数据库需求分析 ...................................................................................................................... 7 4.3具体功能模块介绍 ................................................................................................................ 12 4.3.2查看全部库存 . ............................................................................................................... 13 4.3.3 修改密码 . ...................................................................................................................... 13 4.3.4 新增用户 . ...................................................................................................................... 13 4.3.5 删除用户 . ...................................................................................................................... 14 4.3.6 新增仓库 . ...................................................................................................................... 15 4.3.7 新增供应商 . .................................................................................................................. 15 4.3.8 新增用处 . ...................................................................................................................... 15 4.3.9 新增品名 . ...................................................................................................................... 15 4.3.10 入库操作 . .................................................................................................................... 16 4.3.11 出库操作 . .................................................................................................................... 16 4.3.12 查看明细 . .................................................................................................................... 16 4.3.13 退出 . ............................................................................................................................ 17 4.4系统界面介绍 ........................................................................................................................ 17 4.4.1登录界面 . ....................................................................................................................... 17 4.4.2管理主界面 . ................................................................................................................... 17 4.4.3查看全部仓库界面 . ....................................................................................................... 18 4.4.4新增用户界面 . ............................................................................................................... 18 结 论......................................................................................................................................... 19 参考文献......................................................................................................................................... 19
1. 引言
1.1课题背景
仓库管理系统是现代企业对物资集查询、记录、操作以及数据更新于一体的管理系统。它能实现多个仓库的管理、分类、查看等精细化管理,同时也可以对货物的进货出货进行详细的记录和查询,能够帮助企业准确的掌握库存信息,以便于企业决策部门能够正确地作出企业决策规划,从而最大限度地提高提高企业竞争力,具有广泛的市场前景。 1.2国内外研究现状
在国外,对于仓库管理为核心的研究和应用已经长达半个世纪之久,在系统化领域上取得了很大的成就,可以把仓库管理系统的发展大致分为3个阶段:
(1)初级阶段:在20世纪50、60年代人们还没有具体的仓库管理系统化的思想仅仅只是做出了尝试。
(2)快速发展阶段:在20世纪70年代,随着电脑技术的飞速发展,专用的仓库管理系统正式在美国问世,这标志着仓库管理的系统化程度有了进一步的提高。
(3)成熟阶段:从上世纪70年代至今,国外仓库管理系统化已经十分的成熟,大部分仓库管理功能已经实现了全自动化。
但在我国,仓库管理系统在研究上起步较晚,技术上比较落后。1982年美国的物流学家来中国讲授,并且将自己的3本著作翻译成中文,这对国人产生了巨大的影响,这可以称为我国的仓库现代化管理的开端。 1.3本课题的研究意义
一个大型企业必定拥有成千上万的库存,开发一个功能完善的仓库货物管理系统可以有效地对庞大的货物信息进行管理。本文就设计开发一个集实现货物查询、管理、更新等功能为一体的系统为基本目标,通过对货物信息从查询到管理实现了自动化模式,提高工作效率,方便管理。 1.4本课题的研究思想
本次毕业设计首先结合了仓库货物管理系统的相关功能,进行需求分析,划
分系统模块,结合对相关文献资料的查阅,进而得出该仓库货物管理系统应该包括以下模块:仓库硬件管理模块、进货模块,出货模块、货物查询、密码登陆模块;其次,综合运用以前所学的相关知识,选择用asp 来进行开发。
2. 系统开发环境和选择工具
系统采用B/S工作模式,前台使用ASP 技术,后台使用Accessss 数据库。B/S(Browser/Server,浏览器/服务器)模式又称B/S结构。它是随着Internet 技术的兴起,对C/S模式应用的扩展。在这种结构下,用户工作界面是通过IE 浏览器来实现的。B/S模式最大的好处是运行维护比较简便。 2.1 ASP简介
ASP 是由 Microsoft开发的一种技术,使 WEB 服务器端能够处理服务器脚本,并能够将处理后的标准 HTML 页面返回到浏览器。 2.1.1 ASP 运行环境(IIS )
建立ASP 运行环境实际上非常简单,其实就是把IIS 安装Windows NT/Windows 2000服务器上或是把PWS 安装NT WorkStation/Windows 98 上。一但安装成功, 我们的电脑就是一个 ASP 及 WEB 数据库的运行平台。 2.1.2 ASP 提供了6个内置的全局对象
(1)REQUEST 对象:用来读取来自浏览器请求信息,可用该对象读取 HTML 表单的信息。包含有关客户端的信息和一些参数。
(2)RESPONSE 对象:用来访问服务器创建的并发送信息到客户端的响应信息。 (3)SERVER 对象:是专为处理服务器上的特定任务而设计的,特别是与服务器的环境和处理活动有关的任务,允许用脚本来生成 ACTIVE SERVER 组件的实例。
(4)APPLICATION 对象:用来存储、读取用户共享的应用程序信息,如可以用该对象在网站的不同连接者间传送共用消息。
(5)SESSION 对象:用来存储、读取特定连接者的对话消息,如可存储连接者对网站的访问信息。
(6)ObjectContext 对象:该对象用于控制Active Server Pages 的事务处理。事务处理由Microsoft Transaction Server (MTS)管理。
2.1.3 ASP 技术
它是一种运行于服务器于端的 WEB 应用程序开发技术,一种内含于 IIS/PWS 之中的易学易用、可以集成脚本语言到主页的服务器端的脚本语言环境。以下是 ASP 技术的特点:
(1)可以混用 HTML、DHTML 、JAVA 小程序、ACTIVEX 、VBSCRIPT 等,并且可以相互嵌套;
(2)不需要编译、纯文本格式;
(3)安全性好,可以保护源程序代码不外漏;
(4)面向对象,以对象为基础来实现服务器与客户端的交互。 2.2 Dreamwever简介
Dreamweaver是美国MACROMEDIA 公司开发的集网页制作和管理网站于一身的所见即所得网页编辑器,它是第一套针对专业网页设计师特别发展的视觉化网页开发工具,利用它可以轻而易举地制作出跨越平台限制和跨越浏览器限制的充满动感的网页。同时利用Dreamweaver 设计的网页,可以全方位的呈现在任何平台的热门浏览器上。
2.3数据库Microsoft Access 2000 简介
Microsoft Access 2000使您容易得到所需信息,并提供强大工具,可以帮助您组织和共享您的数据库,以便您和您的工作组能作出更好的决策。快速找到可靠答案,通过Intranet 共享信息,建立更快更有效的商业解决方案。使Web 协作成为可能,用Access 2000中的新工具提高生产力。使数据对任何协作者都可直接利用。更新销售数据或快速查看顾客细节信息。定制您自己的图形格式,以便准确地显示您所需的信息。使用内置Microsoft SQL Server 集成来创建可以随您的商务升级的数据库。
3仓库管理系统用户需求分析
3.1用户的角色需求
仓库管理系统的系统用户角色不多,本文将其分为高级管理员用户、仓库管理员用户和普通用户3个角色。高级管理员用户可以对所有仓库的信息以其他用户进行所有相关操作,仓库管理员用户只能对自己所属的仓库进行操作,而普通的用户只能对仓库中的信息进行查询操作。
3.2功能需求
系统功能主要包括以下几个方面:仓库货物的查询;仓库货物的出库入库操作;用户的管理;仓库以及货物种类的添加。按不同的角色分析如下: 3.2.1 普通用户
普通用户只可以查询仓库中的货物情况,但不能对仓库进行入库、出库等的编辑操作。登录系统后在界面的左上方可以看到自己的姓名和所在的仓库,同时可以查询所属仓库的货物信息。如果要进行其他的操作那么系统会提示其不具有用户操作权限。
3.1.2仓库管理员用户
仓库管理员是管理某个仓库的用户,在登陆系统后同样会在界面的左上方看到自己的名字和所在的仓库。仓库管理员用户在查询所属仓库的货物信息的同时,可以对所在仓库的货物信息进行编辑操作。 3.1.3高级管理员用户
高级管理员用户是可以查询和编辑包括添加或删除用户、增加或删除仓库、供应商、物品出处等所有系统信息和仓库货物信息的用户,在每一个仓库都可以随意的行使仓库管理员的权利。 3.3性能要求
整个系统应当操作快捷,界面友好,维护简便;数据库要求运行稳定,执行速度快,数据安全性高。软件系统本身运行对计算机硬件平台和操作系统平台要求适中。
4 仓库管理系统的设计与实现
4.1仓库管理系统的整体框架
图 1 仓库管理系统的整体框架图
此图为设计的总体框架图,首先进入用户登录界面当输入正确的用户名和密码后会进入到系统主界面中,在界面中我们可以选择连接的有目录查看库存、浏览查看库存、看全部仓库等、安全退出等11个连接。在查看库存的两个选项可以对选中的货物进行入库和出库的操作。 4.2数据库需求分析
目前整个数据库data.mdb 中共有8个表,按首字母顺序分别介绍如下: 1、表(Detail )
此表为一个明细表,为详细地记录货物出库入库时的数量、单价、合计金额等而设计,其中zl hs zy name_id Provider_id 等是对货物的一个必要说明。而在入库操作时需输入in_num(收入数量)in_price(收入单价)经过统计后显示in_sum (收入金额)出库的操作也是一样。在list.asp (查看明细)中除
了要显示入库和出库的信息外同时还需要显示最后的结存数量now_num,结存单价now_price,结存金额now_sum,和剩余数量left_num。
表1 Detail
2、商信息表(Provider )
此表记录了所有供应商的信息,为了对入库操作时物品的出处来源进行说明而设计的一个表。
表2 Provider
3、记录表(Rpt_log)
此为每天报表的记录。做完报表后,就产生当天的记录。在这张表中的count_out count_in取值于明细表中 out_sum in_sum的求和值 。因为是日报表所以表中的rp 取值为当天的日期,同时还需要和明细表中的rp 所对应,这样才能给ount_out count_in取值进而将信息显示在日报表页面。
4、货物表(Stock )
此表是纪录所有货物的信息表。考虑到物品需要有详细的信息记录而设计的name (品名)unit (计量单位)memo (备注) address(储存地点)rule (规格)在物品分类查找时所用到的type_id(类型编号)等;在添加物品时,物品的信息将直接记录在这张表中,其中now_stock(当前库存数)now_sum(当前库存总金额)在没有入库操作时数值为空。
表4 Stock
5、名列表(Storage )
此表为仓库名列表,考虑到需要有不同的仓库来存放不同的物品就需要有多个仓库而设计的一个表。
6该表用来对分类后的类别进行记录。由于该系统使用了无限分类方案,所以需要该表存放某仓库下分类的情况。
7、用户表(User )
用户表,记录所有可以登录该系统的用户名、密码和其他相关数据用户
表。其中user 表中的字段in_storage意思是所属仓库,在storage 表中存放着仓库信息,且表中字段storage_id就是仓库的编号,in_storage与之对应,而storage_id是自动编号产生的,所以不会有小于等于0的数字的,根据这样,当in_storage值为0时,即不属于任何仓库的用户,即他们可以管理任何仓库,也即可以称之管理员了。
用户表user 中的字段viewother 是查看其他的仓库,一个用户是否可以查看全部的仓库首先要看他是否可以管理全部仓库,如果in_storage值为0就说明它可以管理全部仓库同时也可以查看其他的仓库,如果不可以,即只能管理一个仓库,那么就要看字段viewother 的值为什么,如果为“是”那么可以查看其他的仓库,如果为“否”则不能看其他仓库。
8、表(Uses )
用处,或接应者,与供应商对应,该处是指某物在出库时,需要指明用在何处,以备后查。
表8 Uses
4.3具体功能模块介绍
系统有16重要个模块组成, 简单介绍下面几个模块。
4.3.1今日库存报表
该模块由-report.asp 实现,因为是日报表,所以它只纪录当天的入库数量、金额,出库数量、金额等。首先打开数据库中的Rpt_log表将日期更新为当前日期,并且将当日的出库入库纪录中的结算金额(明细表中 out_sum
in_sum的求和值)更新到当前表中。在将stock 表中的last_stock(昨日库存)更新为now_stock(当前库存)。此时将信息显示在report 页面就可以了。 关键代码:
sql="update stock set last_stock=now_stock where
storage_id="&session("storage")
代码说明:当条件为storage_id(仓库编号)为当前仓库时将表stock 中的last_stock更新为now_stock。
sql="select sum(in_sum) as total_in_sum,sum(out_sum) as total_out_sum from detail where rq=date() and storage_id="&session("storage")
代码说明:对detail 表中的所有in_sum和out_sum进行求和并且将in_sum命名为total_in_sum将out_sum命名为total_out_sum条件是rp 为当前日期
storage_id(仓库编号)为当前仓库时。
4.3.2查看全部库存
该模块由all.asp 来实现。只有在这里才可以一览全部仓库的情况,可以很方便地选择某个仓库再选择其下的某个类别。进行查看或查找时,该操作针对全部仓库。用户要进入此页面,必须具有可以查看其他仓库的权限。如果是没有权限会跳转到relogin.asp 页面进行警告。
4.3.3 修改密码
修改密码是让用户在线进行修改自己的密码,要先以自己的用户名和密码成功登录,然后输入原密码、新密码和校验密码,只有当原密码正确,新密码和校验密码一致时才可以正确修改密码,密码修改操作完成后,下次登录时原密码失效,新密码启用。
关键代码:
sql=" select * from [user] where usernam e=' " &session ("username") & "' and password= '"&request.form ("old_pass")&"'"
rs.open sql,conn,3,2
if not rs.eof then
if request.form("new_pass")=request.form("confirm_pass") then rs("password")=request.form("new_pass")
rs.update
代码说明:要求user 表中的用户名和密码与输入的用户名和密码一致时执行。如果两次输入的新密码相同,那么将输入的新密码赋值给记录集中的password 进而更新记录集。这时user 表单中的密码信息就成功更改了。
4.3.4 新增用户
在线进行增加用户名。这种方式具有权限继承性,即只有可以管理并查看全部仓库的用户才可以分配给新用户这种权限,没有此权限的用户无法给新用户高于当前用户更高的权限。在填写信息时必须全部填写,否则会提示某个项目没有填写,然后重新填写。
关键代码:
request("name")="" then
msg=msg+"请输入物品名称!
代码说明:如果name 为空则提示请输入物品名称。
rs.addnew
rs("username")=request.form("name")
rs("password")=request.form("password")
rs("memo")=request.form("memo")
if request.form("manage")="" then
if request.form("selstorage")0 then
rs("in_storage")=request.form("selstorage")
else
rs("in_storage")=session("storage")
end if
else
rs("in_storage")=0
end if
if request.form("view_other")="" then
rs("viewother")=False
else
rs("viewother")=True
end if
rs.update
代码说明:添加记录集。将输入的名字密码和备注记录到记录集中的username password memo 中,如果管理选项(manage )没有填(为空),那么它就为当前仓库的管理者,否则就为全部仓库的管理者。,如果view_other没有填(为空)那么就没有权限查看其他仓库,反之则可以查看其他仓库,然后将记录集更新。这时新的用户就添加到user 表单中了。
4.3.5 删除用户
在线对用户名进行删除操作。这种方式具有用户选择性,即只有可以管理全部仓库的管理员才可以删除用户,同时只有不是管理员的用户才会显示在删除表中。即viewother= False的时候,因为管理员的viewother 字段值全部都为True 。
4.3.6 新增仓库
对表storage 进行增加仓库名称,只要新加入一个仓库,这个仓库在使用时与其他仓库的使用没有任何关系,只是他们可以放在一起进行查看,是他们唯一的联系。在添加仓库的时候所有的选项也要全部进行添写,否则会发那里没有填写的出错误的提示。
4.3.7 新增供应商
和新增仓库模块的原理一样对表Provider 进行供应商名称的添加,在入库操作时可以选择所添加的供应商。
4.3.8 新增用处
用处是相对供应商的。这里反映出某物品的货源及面向对象。它是对uses 表进行用处的添加,在出库操作时可以选择所添加的用处。
4.3.9 新增品名
对当前仓库当前类别下新增物品,用来描述物品信息。即对stock 表中添加物品名。当新增某物品时还需对他进行入库、出库等操作,该物品才算有意义。
关键代码:
sql="select * from stock where name='"&request.form("name")&"' and storage_id="&session("storage")&" and unit='"&request.form("unit")&"' and rule='"&request.form("gg")&"'"
rs.open sql,conn,3,2
if rs.eof then
rs.addnew
rs("name")=request.form("name")
rs("storage_id")=session("storage")
rs("type_id")=session("prnt")
rs("unit")=request.form("unit")
rs("rule")=request.form("gg")
rs("no")=request.form("hh")
rs("hm")=request.form("hm")
rs("max")=request.form("max")
rs("min")=request.form("min")
rs("address")=request.form("address")
rs("memo")=request.form("memo")
rs.update
代码说明:打开表stock 当查询的结果表明记录集为空时进行记录集的添加操作将输入的物品名称、仓库、物品类别、规格、号数、货名、最大储存量、最小储存量、存放地址、备注记录到记录集中然后将记录集更新。这时表单中就添加了这个货物。
4.3.10 入库操作
即收入,对仓库的一个进的过程,需要输入物品的数量、单价、摘要、供应商等信息。保存数据时以save_in.asp文件来进行检测数据的完整性。当数据全正确并确定可以保存时,程序先将全部的已有库存记录逐个重新誊写一遍至当日,然后再新增一个记录表示现在入库的数据,并重新统计现在的库存数量,同时将信息更新到stock 表中来显示现有的库存情况,在重新改写jz_log(记帐记录标志),用来标记最后一个操作,置全部的jz_log为0,并将重新誊写的库存记录和新增加的库存记录中的jz_log记录为1,作用是在list.asp (显示明细中)用颜色块清楚的表示当前的库存情况。而进货的所有详细的信息都记录在明细表Detail 中。
4.3.11 出库操作
出库与入库相反,在出库时先将出库请求的数量与现有库存数量比较,如果小于等于库存数,则可以出库,如果大于库存了,则提示不能出库,以
save_out.asp来检测数据。当可以出库时也是将全部已有的库存记录逐个重新誊写一遍至当前日,产生新的数据,然后根据具体出库的数量根据“先入先出”原则从最早入库的一批开始出库,如果第一批数量不足,再继续出第二批,第二批不足,再继续出第三批,依次类推,直到全部达到出库请求的数量。出货的所有详细信息都记录在明细表Detail 中。
4.3.12 查看明细
是以标准仓库帐本的形式来显示某物品的全部出、入库等的操作记录,顺序是从下往上。即最近的一次记录在最上面,并以黄颜色标出。
4.3.13 退出
在使用完后,一定要使用退出来结束工作,为了安全起见,当退出后,就不能打开任何的连接了,都会提示你需要重新登录,如果不使用退出,而直接使用关闭窗口来关闭,那么不用登录就可以再进入管理页面进行操作,显得很不安全。
4.4系统界面介绍
这里是对部分系统界面的一个介绍。
4.4.1登录界面
图4 用户登陆图
这个界面是用户的登录界面,用户在这里输入姓名、密码和选择仓库后单击登录按钮后就可以进入系统了。如果输入错误可点清除按钮来重新填写登录的信息。
4.4.2管理主界面
图5 管理主界面图
这个界面是管理主界面图,在系统登陆成功后可进入此界面。这里可以看到自己所在的仓库位置并且可以选自己所需要的操作。只要单击蓝色的超链接就可以进入到自己想要操作的页面了。
4.4.3查看全部仓库界面
图 6 查看所有库存界面
这个页面可以查看所有仓库的库存。上面可以看到所有的仓库,在查找框中输入想查找的物品名称时在界面的下方就会显示该物品的信息。
4.4.4新增用户界面
图7 新增用户界面
此为新增用户界面,在这个页面中可以进行新用户的添加操作。当全部信息填写完成之后点击确定按键就可以提交数据了。
结 论
该毕业设计通过对仓库货物管理进行需求分析,模块划分并结合相关文献资料的查阅,最终设计并开发出一个具有货物入库、出库,货物查询,密码登录等功能的仓库货物管理系统。该系统具有人机交互界面友好、查询编辑快捷的特点,从一定程度上提高了企业仓库管理的工作效力。
通过本次毕业设计,我受益匪浅,它不仅是对我在大学所学的知识的一个考察,更加为我以后走出社会,走向工作岗位打下了坚实的基础。该设计还有很多不完善的地方,比如,工作流程不够简化,系统的安全性考虑较少等,这些都有待于我在以后的学习中不断的完善。
参考文献
[1] 吴丽萍.ASP 企业管理系统开发实例[M].北京:清华大学出版社,2005。
[2] 马开颜.ASP 实用教程[M].北京:北京理工大学出版社,2004。
[3] 孟凡奇.ASP 程序设计基础[M].北京:上海交通大学,2006。
[4] 于宗民, 刘义宁, 祁国辉. 数据仓库项目管理实践[M].北京:人民邮电出版社,2006。
[5] 刘莉. 仓储管理实务[M].北京:中国物资出版社,2006。
[6] 邓文渊, 陈惠贞, 陈俊荣.ASP 与网络数据库技术[M].北京:中国铁道出版社,2005.6。
物流企业仓库管理系统的设计
摘 要:随着计算机技术的迅猛发展,计算机给人们带来了很多便利,人们借助于计算机进行生产劳动管理更加方便。仓库管理系统是现代企业对物资进行管理、查询和记录的信息管理系统。它能实现多个仓库的管理、分类查看等精细化管理。通过对货物的进货、出货进行详细的记录和查询以帮助企业准确的掌握库存信息,便于决策部门正确的作出企业规划,最大限度的提高企业的竞争力和管理效率。
本文就如何优化企业仓库内部管理,提高企业管理效率进行了详细分析,并用ASP 设计开发了一个以实现货物查询、管理、更新为基本目标的系统。整个过程实现了自动化模式,并且不同的用户能对自己所属仓库的货物进行出库、入库、信息查询、用户添加物品归类等操作,大大地提高了工作效率。
关键词:仓库货物管理;数据库;ASP
目 录
1. 引言 .............................................................................................................................................. 3 1.2国内外研究现状 ...................................................................................................................... 3 1.3本课题的研究意义 .................................................................................................................. 3 1.4本课题的研究思想 .................................................................................................................. 3 2. 系统开发环境和选择工具 . .......................................................................................................... 4 2.1 ASP简介 .................................................................................................................................. 4 2.2 Dreamwever简介 .................................................................................................................... 5 2.3数据库Microsoft Access 2000 简介 ................................................................................. 5 3仓库管理系统用户需求分析 . ....................................................................................................... 5 3.1用户的角色需求 ...................................................................................................................... 5 3.2功能需求 .................................................................................................................................. 6 3.3性能要求 .................................................................................................................................. 6 4 仓库管理系统的设计与实现 . ...................................................................................................... 7 4.1仓库管理系统的整体框架 ...................................................................................................... 7 4.2数据库需求分析 ...................................................................................................................... 7 4.3具体功能模块介绍 ................................................................................................................ 12 4.3.2查看全部库存 . ............................................................................................................... 13 4.3.3 修改密码 . ...................................................................................................................... 13 4.3.4 新增用户 . ...................................................................................................................... 13 4.3.5 删除用户 . ...................................................................................................................... 14 4.3.6 新增仓库 . ...................................................................................................................... 15 4.3.7 新增供应商 . .................................................................................................................. 15 4.3.8 新增用处 . ...................................................................................................................... 15 4.3.9 新增品名 . ...................................................................................................................... 15 4.3.10 入库操作 . .................................................................................................................... 16 4.3.11 出库操作 . .................................................................................................................... 16 4.3.12 查看明细 . .................................................................................................................... 16 4.3.13 退出 . ............................................................................................................................ 17 4.4系统界面介绍 ........................................................................................................................ 17 4.4.1登录界面 . ....................................................................................................................... 17 4.4.2管理主界面 . ................................................................................................................... 17 4.4.3查看全部仓库界面 . ....................................................................................................... 18 4.4.4新增用户界面 . ............................................................................................................... 18 结 论......................................................................................................................................... 19 参考文献......................................................................................................................................... 19
1. 引言
1.1课题背景
仓库管理系统是现代企业对物资集查询、记录、操作以及数据更新于一体的管理系统。它能实现多个仓库的管理、分类、查看等精细化管理,同时也可以对货物的进货出货进行详细的记录和查询,能够帮助企业准确的掌握库存信息,以便于企业决策部门能够正确地作出企业决策规划,从而最大限度地提高提高企业竞争力,具有广泛的市场前景。 1.2国内外研究现状
在国外,对于仓库管理为核心的研究和应用已经长达半个世纪之久,在系统化领域上取得了很大的成就,可以把仓库管理系统的发展大致分为3个阶段:
(1)初级阶段:在20世纪50、60年代人们还没有具体的仓库管理系统化的思想仅仅只是做出了尝试。
(2)快速发展阶段:在20世纪70年代,随着电脑技术的飞速发展,专用的仓库管理系统正式在美国问世,这标志着仓库管理的系统化程度有了进一步的提高。
(3)成熟阶段:从上世纪70年代至今,国外仓库管理系统化已经十分的成熟,大部分仓库管理功能已经实现了全自动化。
但在我国,仓库管理系统在研究上起步较晚,技术上比较落后。1982年美国的物流学家来中国讲授,并且将自己的3本著作翻译成中文,这对国人产生了巨大的影响,这可以称为我国的仓库现代化管理的开端。 1.3本课题的研究意义
一个大型企业必定拥有成千上万的库存,开发一个功能完善的仓库货物管理系统可以有效地对庞大的货物信息进行管理。本文就设计开发一个集实现货物查询、管理、更新等功能为一体的系统为基本目标,通过对货物信息从查询到管理实现了自动化模式,提高工作效率,方便管理。 1.4本课题的研究思想
本次毕业设计首先结合了仓库货物管理系统的相关功能,进行需求分析,划
分系统模块,结合对相关文献资料的查阅,进而得出该仓库货物管理系统应该包括以下模块:仓库硬件管理模块、进货模块,出货模块、货物查询、密码登陆模块;其次,综合运用以前所学的相关知识,选择用asp 来进行开发。
2. 系统开发环境和选择工具
系统采用B/S工作模式,前台使用ASP 技术,后台使用Accessss 数据库。B/S(Browser/Server,浏览器/服务器)模式又称B/S结构。它是随着Internet 技术的兴起,对C/S模式应用的扩展。在这种结构下,用户工作界面是通过IE 浏览器来实现的。B/S模式最大的好处是运行维护比较简便。 2.1 ASP简介
ASP 是由 Microsoft开发的一种技术,使 WEB 服务器端能够处理服务器脚本,并能够将处理后的标准 HTML 页面返回到浏览器。 2.1.1 ASP 运行环境(IIS )
建立ASP 运行环境实际上非常简单,其实就是把IIS 安装Windows NT/Windows 2000服务器上或是把PWS 安装NT WorkStation/Windows 98 上。一但安装成功, 我们的电脑就是一个 ASP 及 WEB 数据库的运行平台。 2.1.2 ASP 提供了6个内置的全局对象
(1)REQUEST 对象:用来读取来自浏览器请求信息,可用该对象读取 HTML 表单的信息。包含有关客户端的信息和一些参数。
(2)RESPONSE 对象:用来访问服务器创建的并发送信息到客户端的响应信息。 (3)SERVER 对象:是专为处理服务器上的特定任务而设计的,特别是与服务器的环境和处理活动有关的任务,允许用脚本来生成 ACTIVE SERVER 组件的实例。
(4)APPLICATION 对象:用来存储、读取用户共享的应用程序信息,如可以用该对象在网站的不同连接者间传送共用消息。
(5)SESSION 对象:用来存储、读取特定连接者的对话消息,如可存储连接者对网站的访问信息。
(6)ObjectContext 对象:该对象用于控制Active Server Pages 的事务处理。事务处理由Microsoft Transaction Server (MTS)管理。
2.1.3 ASP 技术
它是一种运行于服务器于端的 WEB 应用程序开发技术,一种内含于 IIS/PWS 之中的易学易用、可以集成脚本语言到主页的服务器端的脚本语言环境。以下是 ASP 技术的特点:
(1)可以混用 HTML、DHTML 、JAVA 小程序、ACTIVEX 、VBSCRIPT 等,并且可以相互嵌套;
(2)不需要编译、纯文本格式;
(3)安全性好,可以保护源程序代码不外漏;
(4)面向对象,以对象为基础来实现服务器与客户端的交互。 2.2 Dreamwever简介
Dreamweaver是美国MACROMEDIA 公司开发的集网页制作和管理网站于一身的所见即所得网页编辑器,它是第一套针对专业网页设计师特别发展的视觉化网页开发工具,利用它可以轻而易举地制作出跨越平台限制和跨越浏览器限制的充满动感的网页。同时利用Dreamweaver 设计的网页,可以全方位的呈现在任何平台的热门浏览器上。
2.3数据库Microsoft Access 2000 简介
Microsoft Access 2000使您容易得到所需信息,并提供强大工具,可以帮助您组织和共享您的数据库,以便您和您的工作组能作出更好的决策。快速找到可靠答案,通过Intranet 共享信息,建立更快更有效的商业解决方案。使Web 协作成为可能,用Access 2000中的新工具提高生产力。使数据对任何协作者都可直接利用。更新销售数据或快速查看顾客细节信息。定制您自己的图形格式,以便准确地显示您所需的信息。使用内置Microsoft SQL Server 集成来创建可以随您的商务升级的数据库。
3仓库管理系统用户需求分析
3.1用户的角色需求
仓库管理系统的系统用户角色不多,本文将其分为高级管理员用户、仓库管理员用户和普通用户3个角色。高级管理员用户可以对所有仓库的信息以其他用户进行所有相关操作,仓库管理员用户只能对自己所属的仓库进行操作,而普通的用户只能对仓库中的信息进行查询操作。
3.2功能需求
系统功能主要包括以下几个方面:仓库货物的查询;仓库货物的出库入库操作;用户的管理;仓库以及货物种类的添加。按不同的角色分析如下: 3.2.1 普通用户
普通用户只可以查询仓库中的货物情况,但不能对仓库进行入库、出库等的编辑操作。登录系统后在界面的左上方可以看到自己的姓名和所在的仓库,同时可以查询所属仓库的货物信息。如果要进行其他的操作那么系统会提示其不具有用户操作权限。
3.1.2仓库管理员用户
仓库管理员是管理某个仓库的用户,在登陆系统后同样会在界面的左上方看到自己的名字和所在的仓库。仓库管理员用户在查询所属仓库的货物信息的同时,可以对所在仓库的货物信息进行编辑操作。 3.1.3高级管理员用户
高级管理员用户是可以查询和编辑包括添加或删除用户、增加或删除仓库、供应商、物品出处等所有系统信息和仓库货物信息的用户,在每一个仓库都可以随意的行使仓库管理员的权利。 3.3性能要求
整个系统应当操作快捷,界面友好,维护简便;数据库要求运行稳定,执行速度快,数据安全性高。软件系统本身运行对计算机硬件平台和操作系统平台要求适中。
4 仓库管理系统的设计与实现
4.1仓库管理系统的整体框架
图 1 仓库管理系统的整体框架图
此图为设计的总体框架图,首先进入用户登录界面当输入正确的用户名和密码后会进入到系统主界面中,在界面中我们可以选择连接的有目录查看库存、浏览查看库存、看全部仓库等、安全退出等11个连接。在查看库存的两个选项可以对选中的货物进行入库和出库的操作。 4.2数据库需求分析
目前整个数据库data.mdb 中共有8个表,按首字母顺序分别介绍如下: 1、表(Detail )
此表为一个明细表,为详细地记录货物出库入库时的数量、单价、合计金额等而设计,其中zl hs zy name_id Provider_id 等是对货物的一个必要说明。而在入库操作时需输入in_num(收入数量)in_price(收入单价)经过统计后显示in_sum (收入金额)出库的操作也是一样。在list.asp (查看明细)中除
了要显示入库和出库的信息外同时还需要显示最后的结存数量now_num,结存单价now_price,结存金额now_sum,和剩余数量left_num。
表1 Detail
2、商信息表(Provider )
此表记录了所有供应商的信息,为了对入库操作时物品的出处来源进行说明而设计的一个表。
表2 Provider
3、记录表(Rpt_log)
此为每天报表的记录。做完报表后,就产生当天的记录。在这张表中的count_out count_in取值于明细表中 out_sum in_sum的求和值 。因为是日报表所以表中的rp 取值为当天的日期,同时还需要和明细表中的rp 所对应,这样才能给ount_out count_in取值进而将信息显示在日报表页面。
4、货物表(Stock )
此表是纪录所有货物的信息表。考虑到物品需要有详细的信息记录而设计的name (品名)unit (计量单位)memo (备注) address(储存地点)rule (规格)在物品分类查找时所用到的type_id(类型编号)等;在添加物品时,物品的信息将直接记录在这张表中,其中now_stock(当前库存数)now_sum(当前库存总金额)在没有入库操作时数值为空。
表4 Stock
5、名列表(Storage )
此表为仓库名列表,考虑到需要有不同的仓库来存放不同的物品就需要有多个仓库而设计的一个表。
6该表用来对分类后的类别进行记录。由于该系统使用了无限分类方案,所以需要该表存放某仓库下分类的情况。
7、用户表(User )
用户表,记录所有可以登录该系统的用户名、密码和其他相关数据用户
表。其中user 表中的字段in_storage意思是所属仓库,在storage 表中存放着仓库信息,且表中字段storage_id就是仓库的编号,in_storage与之对应,而storage_id是自动编号产生的,所以不会有小于等于0的数字的,根据这样,当in_storage值为0时,即不属于任何仓库的用户,即他们可以管理任何仓库,也即可以称之管理员了。
用户表user 中的字段viewother 是查看其他的仓库,一个用户是否可以查看全部的仓库首先要看他是否可以管理全部仓库,如果in_storage值为0就说明它可以管理全部仓库同时也可以查看其他的仓库,如果不可以,即只能管理一个仓库,那么就要看字段viewother 的值为什么,如果为“是”那么可以查看其他的仓库,如果为“否”则不能看其他仓库。
8、表(Uses )
用处,或接应者,与供应商对应,该处是指某物在出库时,需要指明用在何处,以备后查。
表8 Uses
4.3具体功能模块介绍
系统有16重要个模块组成, 简单介绍下面几个模块。
4.3.1今日库存报表
该模块由-report.asp 实现,因为是日报表,所以它只纪录当天的入库数量、金额,出库数量、金额等。首先打开数据库中的Rpt_log表将日期更新为当前日期,并且将当日的出库入库纪录中的结算金额(明细表中 out_sum
in_sum的求和值)更新到当前表中。在将stock 表中的last_stock(昨日库存)更新为now_stock(当前库存)。此时将信息显示在report 页面就可以了。 关键代码:
sql="update stock set last_stock=now_stock where
storage_id="&session("storage")
代码说明:当条件为storage_id(仓库编号)为当前仓库时将表stock 中的last_stock更新为now_stock。
sql="select sum(in_sum) as total_in_sum,sum(out_sum) as total_out_sum from detail where rq=date() and storage_id="&session("storage")
代码说明:对detail 表中的所有in_sum和out_sum进行求和并且将in_sum命名为total_in_sum将out_sum命名为total_out_sum条件是rp 为当前日期
storage_id(仓库编号)为当前仓库时。
4.3.2查看全部库存
该模块由all.asp 来实现。只有在这里才可以一览全部仓库的情况,可以很方便地选择某个仓库再选择其下的某个类别。进行查看或查找时,该操作针对全部仓库。用户要进入此页面,必须具有可以查看其他仓库的权限。如果是没有权限会跳转到relogin.asp 页面进行警告。
4.3.3 修改密码
修改密码是让用户在线进行修改自己的密码,要先以自己的用户名和密码成功登录,然后输入原密码、新密码和校验密码,只有当原密码正确,新密码和校验密码一致时才可以正确修改密码,密码修改操作完成后,下次登录时原密码失效,新密码启用。
关键代码:
sql=" select * from [user] where usernam e=' " &session ("username") & "' and password= '"&request.form ("old_pass")&"'"
rs.open sql,conn,3,2
if not rs.eof then
if request.form("new_pass")=request.form("confirm_pass") then rs("password")=request.form("new_pass")
rs.update
代码说明:要求user 表中的用户名和密码与输入的用户名和密码一致时执行。如果两次输入的新密码相同,那么将输入的新密码赋值给记录集中的password 进而更新记录集。这时user 表单中的密码信息就成功更改了。
4.3.4 新增用户
在线进行增加用户名。这种方式具有权限继承性,即只有可以管理并查看全部仓库的用户才可以分配给新用户这种权限,没有此权限的用户无法给新用户高于当前用户更高的权限。在填写信息时必须全部填写,否则会提示某个项目没有填写,然后重新填写。
关键代码:
request("name")="" then
msg=msg+"请输入物品名称!
代码说明:如果name 为空则提示请输入物品名称。
rs.addnew
rs("username")=request.form("name")
rs("password")=request.form("password")
rs("memo")=request.form("memo")
if request.form("manage")="" then
if request.form("selstorage")0 then
rs("in_storage")=request.form("selstorage")
else
rs("in_storage")=session("storage")
end if
else
rs("in_storage")=0
end if
if request.form("view_other")="" then
rs("viewother")=False
else
rs("viewother")=True
end if
rs.update
代码说明:添加记录集。将输入的名字密码和备注记录到记录集中的username password memo 中,如果管理选项(manage )没有填(为空),那么它就为当前仓库的管理者,否则就为全部仓库的管理者。,如果view_other没有填(为空)那么就没有权限查看其他仓库,反之则可以查看其他仓库,然后将记录集更新。这时新的用户就添加到user 表单中了。
4.3.5 删除用户
在线对用户名进行删除操作。这种方式具有用户选择性,即只有可以管理全部仓库的管理员才可以删除用户,同时只有不是管理员的用户才会显示在删除表中。即viewother= False的时候,因为管理员的viewother 字段值全部都为True 。
4.3.6 新增仓库
对表storage 进行增加仓库名称,只要新加入一个仓库,这个仓库在使用时与其他仓库的使用没有任何关系,只是他们可以放在一起进行查看,是他们唯一的联系。在添加仓库的时候所有的选项也要全部进行添写,否则会发那里没有填写的出错误的提示。
4.3.7 新增供应商
和新增仓库模块的原理一样对表Provider 进行供应商名称的添加,在入库操作时可以选择所添加的供应商。
4.3.8 新增用处
用处是相对供应商的。这里反映出某物品的货源及面向对象。它是对uses 表进行用处的添加,在出库操作时可以选择所添加的用处。
4.3.9 新增品名
对当前仓库当前类别下新增物品,用来描述物品信息。即对stock 表中添加物品名。当新增某物品时还需对他进行入库、出库等操作,该物品才算有意义。
关键代码:
sql="select * from stock where name='"&request.form("name")&"' and storage_id="&session("storage")&" and unit='"&request.form("unit")&"' and rule='"&request.form("gg")&"'"
rs.open sql,conn,3,2
if rs.eof then
rs.addnew
rs("name")=request.form("name")
rs("storage_id")=session("storage")
rs("type_id")=session("prnt")
rs("unit")=request.form("unit")
rs("rule")=request.form("gg")
rs("no")=request.form("hh")
rs("hm")=request.form("hm")
rs("max")=request.form("max")
rs("min")=request.form("min")
rs("address")=request.form("address")
rs("memo")=request.form("memo")
rs.update
代码说明:打开表stock 当查询的结果表明记录集为空时进行记录集的添加操作将输入的物品名称、仓库、物品类别、规格、号数、货名、最大储存量、最小储存量、存放地址、备注记录到记录集中然后将记录集更新。这时表单中就添加了这个货物。
4.3.10 入库操作
即收入,对仓库的一个进的过程,需要输入物品的数量、单价、摘要、供应商等信息。保存数据时以save_in.asp文件来进行检测数据的完整性。当数据全正确并确定可以保存时,程序先将全部的已有库存记录逐个重新誊写一遍至当日,然后再新增一个记录表示现在入库的数据,并重新统计现在的库存数量,同时将信息更新到stock 表中来显示现有的库存情况,在重新改写jz_log(记帐记录标志),用来标记最后一个操作,置全部的jz_log为0,并将重新誊写的库存记录和新增加的库存记录中的jz_log记录为1,作用是在list.asp (显示明细中)用颜色块清楚的表示当前的库存情况。而进货的所有详细的信息都记录在明细表Detail 中。
4.3.11 出库操作
出库与入库相反,在出库时先将出库请求的数量与现有库存数量比较,如果小于等于库存数,则可以出库,如果大于库存了,则提示不能出库,以
save_out.asp来检测数据。当可以出库时也是将全部已有的库存记录逐个重新誊写一遍至当前日,产生新的数据,然后根据具体出库的数量根据“先入先出”原则从最早入库的一批开始出库,如果第一批数量不足,再继续出第二批,第二批不足,再继续出第三批,依次类推,直到全部达到出库请求的数量。出货的所有详细信息都记录在明细表Detail 中。
4.3.12 查看明细
是以标准仓库帐本的形式来显示某物品的全部出、入库等的操作记录,顺序是从下往上。即最近的一次记录在最上面,并以黄颜色标出。
4.3.13 退出
在使用完后,一定要使用退出来结束工作,为了安全起见,当退出后,就不能打开任何的连接了,都会提示你需要重新登录,如果不使用退出,而直接使用关闭窗口来关闭,那么不用登录就可以再进入管理页面进行操作,显得很不安全。
4.4系统界面介绍
这里是对部分系统界面的一个介绍。
4.4.1登录界面
图4 用户登陆图
这个界面是用户的登录界面,用户在这里输入姓名、密码和选择仓库后单击登录按钮后就可以进入系统了。如果输入错误可点清除按钮来重新填写登录的信息。
4.4.2管理主界面
图5 管理主界面图
这个界面是管理主界面图,在系统登陆成功后可进入此界面。这里可以看到自己所在的仓库位置并且可以选自己所需要的操作。只要单击蓝色的超链接就可以进入到自己想要操作的页面了。
4.4.3查看全部仓库界面
图 6 查看所有库存界面
这个页面可以查看所有仓库的库存。上面可以看到所有的仓库,在查找框中输入想查找的物品名称时在界面的下方就会显示该物品的信息。
4.4.4新增用户界面
图7 新增用户界面
此为新增用户界面,在这个页面中可以进行新用户的添加操作。当全部信息填写完成之后点击确定按键就可以提交数据了。
结 论
该毕业设计通过对仓库货物管理进行需求分析,模块划分并结合相关文献资料的查阅,最终设计并开发出一个具有货物入库、出库,货物查询,密码登录等功能的仓库货物管理系统。该系统具有人机交互界面友好、查询编辑快捷的特点,从一定程度上提高了企业仓库管理的工作效力。
通过本次毕业设计,我受益匪浅,它不仅是对我在大学所学的知识的一个考察,更加为我以后走出社会,走向工作岗位打下了坚实的基础。该设计还有很多不完善的地方,比如,工作流程不够简化,系统的安全性考虑较少等,这些都有待于我在以后的学习中不断的完善。
参考文献
[1] 吴丽萍.ASP 企业管理系统开发实例[M].北京:清华大学出版社,2005。
[2] 马开颜.ASP 实用教程[M].北京:北京理工大学出版社,2004。
[3] 孟凡奇.ASP 程序设计基础[M].北京:上海交通大学,2006。
[4] 于宗民, 刘义宁, 祁国辉. 数据仓库项目管理实践[M].北京:人民邮电出版社,2006。
[5] 刘莉. 仓储管理实务[M].北京:中国物资出版社,2006。
[6] 邓文渊, 陈惠贞, 陈俊荣.ASP 与网络数据库技术[M].北京:中国铁道出版社,2005.6。