物流仓库管理系统毕业设计.docx

上传人:b****6 文档编号:6421907 上传时间:2023-01-06 格式:DOCX 页数:31 大小:1.60MB
下载 相关 举报
物流仓库管理系统毕业设计.docx_第1页
第1页 / 共31页
物流仓库管理系统毕业设计.docx_第2页
第2页 / 共31页
物流仓库管理系统毕业设计.docx_第3页
第3页 / 共31页
物流仓库管理系统毕业设计.docx_第4页
第4页 / 共31页
物流仓库管理系统毕业设计.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

物流仓库管理系统毕业设计.docx

《物流仓库管理系统毕业设计.docx》由会员分享,可在线阅读,更多相关《物流仓库管理系统毕业设计.docx(31页珍藏版)》请在冰豆网上搜索。

物流仓库管理系统毕业设计.docx

物流仓库管理系统毕业设计

 

XXX大学

课程设计

课程应用网站课程设计

题目仓库管理应用网站系统

院系计算机与信息技术学院

专业班级xxxxxxxxx

学生姓名xxxxx

学生学号xxxxxxxxxxx

指导教师xxxxx

 

 

2011年7月8日

 

第1章系统分析

1.1开发背景

伴随着企业规模的不断扩大,原始的、手工的进行管理工作已经不能适应工业企业发展的现状,更无法满足企业对管理工作的快速、准确的要求。

而计算机信息管理技术的迅速发展恰恰解决了这个问题,它使计算机技术与现代的管理技术相互配合,来更加准确、高速的完成工业企业日常的仓库管理工作。

使企业能够以最少的人员来完成更多的工作,所以设计出一款界面友好型、经济实用型的软件已经迫在眉睫、刻不容缓。

随着科学技术的不断发展,计算机科学日趋成熟,其强大的功能已为人们深刻认识和体现到,它已进入到社会生活的各个领域当中,并发挥着越来越重要的作用。

作为计算机应用的一部分,使用计算机对小型工程信息进行管理,具有着手工管理所无法比拟的优点,例如:

检索快速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。

这些优点能够极大地提高仓库管理人员的工作效率,也是企业的科学化、正规化管理的必由之路,与世界接轨的前提条件。

    仓库管理信息系统主要采用VS2005和微软SQLserver2005数据库做为开发工具,应用面向对象的程序设计方法,进行开发与设计的。

它是一个典型的信息管理系统。

1.2系统需求分析

1.功能需求

系统应提供用户登录识别,对仓库里面的产品进行增、删、改、查询功能。

人性化的管理单据,在库存盘点中应用回收站功能,以防用户误操作删除仓库中的信息。

当库存中的商品数量低于商品下限或者高于商品上限时,库存会发出警报。

当有重要通知时,管理员可以在系统中发布。

用户可以修改密码等功能。

2.性能需求

系统反应时间应在2s内,主存容量应该为256MB,磁盘容量最少应为80GB,在安全性方面应该防止SQL注入等【1】。

3.可靠性可用性需求

在对仓库中的数据进行操作时不能出现系统崩溃情况,当遇到的断电等突发情况,应该有一定的恢复措施,在一个月内在任何一台计算机上该系统不可用的时间不能超过2%。

4.出错处理需求

当插入的数据出现错误或重复时系统应该给一个友好的提示,比如弹出一个对话框进行提示等。

流程图:

1.3开发环境

数据库是数据管理的最新技术,是计算机科学的重要分支【2】。

今天,信息资源已成为各个部门的重要财富和资源。

十年来,数据库管理系统已从专用的应用程序包发展成为通用系统软件。

由于数据库具有数据的结构化、可控冗余度、较高的程序与数据独立性、易于扩充、易于编制应用程序等优点,因此,作为信息系统核心和和基础的数据库技术得到了越来越广泛的应用,越来越多的新的应用领域采用数据库技术来存储和处理信息资源,较大的信息系统都是建立在数据库设计之上的。

由于用到的数据表格多,仓库商品信息的变动较大,我们选用SQLServer作为数据库开发,而不用Access,主要是因为Access存放的记录,在实际运用中不适合此系统;而SQLServer是一种常用的关系数据库,能存放和读取大量的数据,管理众多并发的用户,使用方便快捷,故选用SQLServer数据库。

用VB语言进行编码。

VB编程语言是微软在.NET计划中重要的开发语言,它具有语法简单,功能强大,快速应用,语言自由,强大的Web服务器控件,支持跨平台,与XML相融合等。

因此选择VB编程语言。

第2章系统设计

2.1系统架构

整个系统分为四个部分,登录控制、管理员、普通用户和主框架。

由于每个用户的权限不同,所以用户进入系统应该进行身份验证。

根据不同的身份权限进入不同的操作界面,进行不同的操作,浏览不同的页面。

管理员进入仓库管理系统后,对仓库里面的产品进行增、删、改、查询功能。

库存盘点界面对各种操作类型(出/入库、归还、调拨等)的货物数量统计,并且可以防止用户误操作删除仓库中的信息。

当库存中的商品数量低于商品下限或者高于商品上限时,库存会发出警报。

当有重要通知时,管理员可以在系统中发布等功能。

对于普通用户来说,可以根据需要查询所需要的库存信息,还能查看库存警报有关信息,以及修改本身密码等功能。

本系统是以WindowsXP系统为操作平台,在.NET2005环境下编程实现。

系统E-R图:

2.2系统功能模块

本仓库管理系统分为系统通知、库存查询、库存警报、数据报表、库存盘点、单据管理、修改密码以及注销登录八个模块。

图2-2系统模块图

用例图【3】:

图2-3用例图

2.3系统数据库设计

综合以上分析,要实现上面的所有功能模块,本系统共有6个数据表,分别是:

选择题信息表、判断题信息表、填空题信息表、问答题信息表、试题科目表、管理员信息表、试卷信息表和试卷内容表。

表2-1库存产品表(GoodList)

字段名

数据类型

长度

是否主键

说明

ID

INT

4

NOTNULL

GoodNum

INT

4

NOTNULL

GoodMingCheng

VARCHAR

50

NOTNULL

GoodMake

VARCHAR

50

NOTNULL

GoodCost

VARCHAR

50

NULL

MakeTime

DATETIME

8

NULL

InputTime

DATETIME

8

NOTNULL

表2-2单据表(GoodPagers)

字段名

数据类型

长度

是否主键

说明

ID

VARCHAR

4

NOTNULL

CaoZuoLeiXing

NVARCHAR

50

NOTNULL

CaoZuoRen

NVARCHAR

50

NOTNULL

ChanPinMingCheng

NVARCHAR

50

NOTNULL

ChanPinShuLiang

INT

4

NULL

XvQiuRen

NVARCHAR

50

NULL

CaoZuoShiJian

DATETIME

8

NOTNULL

表2-3库存表(KuCun)

字段名

数据类型

长度

是否主键

说明

ChanPinBianHao

NVARCHAR

4

NOTNULL

ChanPinMingCheng

NVARCHAR

50

NOTNULL

XianYouKuCun

INT

4

NOTNULL

ShuLiangShangXian

INT

4

NOTNULL

ShuLiangXiaXian

INT

4

NULL

SuoShuHuoJia

INT

4

NULL

SuoShuCangKu

INT

4

NOTNULL

表2-4库存回收站表(KuCunHuiShouZhan)

字段名

数据类型

长度

是否主键

说明

ChanPinBianHao

NVARCHAR

4

NOTNULL

ChanPinMingCheng

NVARCHAR

50

NOTNULL

XianYouKuCun

INT

4

NOTNULL

ShuLiangShangXian

INT

4

NOTNULL

ShuLiangXiaXian

INT

4

NULL

SuoShuHuoJia

INT

4

NULL

SuoShuCangKu

INT

4

NOTNULL

 

表2-5系统通知表(SystemTest)

字段名

数据类型

长度

是否主键

说明

ID

INT

4

NOTNULL

TongZhiBiaoTi

NVARCHAR

50

NOTNULL

FaBuShiJian

DATETIME

8

NOTNULL

 

表2-6仓储人员表(UserList)

字段名

数据类型

长度

是否主键

说明

ID

INT

4

NOTNULL

UserName

VARCHAR

50

NOTNULL

UserType

INT

4

NOTNULL

PassWord

VARCHAR

50

NOTNULL

AlignType

INT

4

NOTNULL

Controls

INT

4

NOTNULL

GoodType

NUMBER

50

NOTNULL

 

第3章系统实现

3.1管理员主页面

登录页面(Login.aspx),其中包括四个label标签,三个文本域,一个下拉列表框,两个按钮,左侧为从下往上滚动字幕.

图3-1登录页面

对于判断登录用户是否合法,用If(dr.Read())来判断【4】。

登录按钮单击事件代码如下:

Dimusername,passwordAsString

username=TexUserName.Text.ToString().Trim()

password=TexPassword.Text.ToString().Trim()

DimconnAsNewOleDbConnection("Provider=SQLOLEDB.1;Password=sa;PersistSecurityInfo=True;UserID=sa;InitialCatalog=CangKu;DataSource=.")

DimcmdAsNewOleDbCommand("select*fromUserListwhereUserName='"&username&"'andPassWord='"&password&"'",conn)

conn.Open()

DimdrAsOleDbDataReader=cmd.ExecuteReader()

If(dr.Read()AndTextYanZhengMa.Text=Label1.Text)Then

Session("UserName")=username

IfDropDLAdmin.SelectedItem.Value="管理员"Then

Response.Redirect("index.aspx")

ElseIfDropDLAdmin.SelectedItem.Value="普通用户"Then

Response.Redirect("indexPuTong.aspx")

EndIf

ElseIfMsgBox("你输入的用户名、密码、验证码有误!

")Then

EndIf

conn.Close()

产生随机验证码代码如下:

IfNotIsPostBackThen

DimcodeAsInteger

code=Convert.ToInt16(10000*Rnd())

Label1.Text=CStr(code)

EndIf

管理员主页面(index.aspx),此页面使用了框架集,其中包括Top.aspx页面、Left.aspx页面和Main.aspx页面:

图3-2框架的顶部

使用Now()函数来获取当前时间。

Label2.Text=Now()

图3-3框架的左部

其中点击注销登录按钮系统会自动跳转到Login.aspx页面。

点击系统通知系统会自动跳转到XiTongTongZhi.aspx页面:

图3-4系统通知

页面加载时代码如下:

IfNotPage.IsPostBackThen

DataBindGridView()

EndIf

其中DataBindGridView()子过程代码为:

SubDataBindGridView()

'建立Connection对象

DimconnAsNewOleDbConnection("Provider=SQLOLEDB.1;Password=sa;PersistSecurityInfo=True;UserID=sa;InitialCatalog=CangKu;DataSource=.")

'建立Command对象

DimcmdAsNewOleDbCommand("select*fromSystemTest",conn)

'建立DataAdapter对象

DimadpAsNewOleDbDataAdapter(cmd)

'建立DataSet对象

DimdsAsNewDataSet()

'填充DataSet对象

adp.Fill(ds,"link")

'绑定数据对象

GridView1.DataSource=ds.Tables("link").DefaultView'指定数据源

GridView1.DataBind()'执行绑定

EndSub

插入按钮单击事件代码如下:

Dimstrsql,bianhao,biaoti,shijianAsString

bianhao=TextBianHao.Text.ToString().Trim()

biaoti=TextBiaoTi.Text.ToString().Trim()

shijian=TextShiJian.Text.ToString().Trim()

strsql="insertintoSystemTestvalues('"&bianhao&"','"&biaoti&"','"&shijian&"')"

DimconnAsNewOleDbConnection("Provider=SQLOLEDB.1;Password=sa;PersistSecurityInfo=True;UserID=sa;InitialCatalog=CangKu;DataSource=.")

Dimcmd1AsNewOleDbCommand("select*fromSystemTestwhereid='"&bianhao&"'",conn)

conn.Open()

Dimdr1AsOleDbDataReader=cmd1.ExecuteReader()

If(Notdr1.Read())Then

Dimcmd2AsNewOleDbCommand(strsql,conn)

Dimdr2AsOleDbDataReader=cmd2.ExecuteReader()

Label1.Text="插入成功!

"

ElseIfMsgBox("此编号已经存在!

")Then

EndIf

conn.Close()

'重新对控件进行绑定,是显示的信息始终是最新的

DataBindGridView()

单击库存查询按钮时系统自动进入KuCunChaXun.aspx页面,其中用户可以根据自己的需求来选择查询条件,即可以按照产品名称进行查询也可按照产品编号进行查询。

图3-5库存查询

其中查询按钮单击事件代码如下:

Dimstrsql,strsql2AsString

'建立Connection对象

DimconnAsNewOleDbConnection("Provider=SQLOLEDB.1;Password=sa;PersistSecurityInfo=True;UserID=sa;InitialCatalog=CangKu;DataSource=.")

'建立Command对象

strsql="select*fromGoodListwhereGoodNum='"&TexKeyName.Text&"'"

strsql2="select*fromGoodListwhereGoodMingCheng='"&TexKeyName.Text&"'"

DimcmdAsNewOleDbCommand(strsql,conn)

Dimcmd2AsNewOleDbCommand(strsql2,conn)

'建立DataAdapter对象

DimadpAsNewOleDbDataAdapter(cmd)

Dimadp2AsNewOleDbDataAdapter(cmd2)

'建立DataSet对象

DimdsAsNewDataSet()

Dimds2AsNewDataSet()

'填充DataSet对象

If(RadLeiXing.Text="产品编号")Then

adp.Fill(ds,"link")

GridView1.DataSource=ds.Tables("link").DefaultView

EndIf

If(RadLeiXing.Text="产品名称")Then

adp2.Fill(ds2,"link")

GridView1.DataSource=ds2.Tables("link").DefaultView

EndIf

GridView1.DataBind()'执行绑定

单击库存警报按钮,系统页面跳转到KuCunJingBao.aspx页面,本功能主要通过GridView控件来实现,其中“现有库存”使用模板列,用label标签来显示数据库中的值,并且设置label标签显示红色字体。

图3-6库存警报

在页面加载事件中写入如下代码:

DimstrsqlAsString

'建立Connection对象

DimconnAsNewOleDbConnection("Provider=SQLOLEDB.1;Password=sa;PersistSecurityInfo=True;UserID=sa;InitialCatalog=CangKu;DataSource=.")

'建立Command对象

strsql="select*fromKuCunwherexianyoukucun>shuliangshangxianorxianyoukucun

DimcmdAsNewOleDbCommand(strsql,conn)

'建立DataAdapter对象

DimadpAsNewOleDbDataAdapter(cmd)

'建立DataSet对象

DimdsAsNewDataSet()

'填充DataSet对象

adp.Fill(ds,"link")

GridView1.DataSource=ds.Tables("link").DefaultView'指定数据源

'绑定数据对象

GridView1.DataBind()

单击密码修改按钮进入XiuGaiMiMa.aspx页面,当修改成功时弹出成功对话框:

图3-7密码修改

修改按钮单击事件代码如下:

Dimjiumima,xinmima1,xinmima2AsString

jiumima=TextBox1.Text.ToString().Trim()

xinmima1=TextBox2.Text.ToString().Trim()

xinmima2=TextBox3.Text.ToString().Trim()

DimconnAsNewOleDbConnection("Provider=SQLOLEDB.1;Password=sa;PersistSecurityInfo=True;UserID=sa;InitialCatalog=CangKu;DataSource=.")

Dimcmd1AsNewOleDbCommand("select*fromUserListwherePassWord='"&jiumima&"'andUserName='"&Session("UserName")&"'",conn)

conn.Open()

Dimdr1AsOleDbDataReader=cmd1.ExecuteReader()

'判断记录是否存在

If(dr1.Read())Then

IfTextBox2.Text=TextBox3.TextThen

Dimcmd2AsNewOleDbCommand("updateUserListsetPassWord='"&xinmima1&"'whereUserName='"&Session("UserName")&"'",conn)

Dimdr2AsOleDbDataReader=cmd2.ExecuteReader()

MsgBox("恭喜,密码修改成功")

ElseIfMsgBox("两次输入的密码不一致")Then

EndIf

ElseIfMsgBox("你输入的密码有误!

")Then

EndIf

conn.Close()

当单击数据报表按钮时系统进入页面ShuJuBaoBiao.aspx,用户可以从下拉列表中选择不同的数据表进行导出。

图3-8数据报表

在确定按钮的单击事件中写入如下代码:

IfIsPostBackThen

DataBind()

EndIf

其中databind()子过程如下:

Subdatabinds()

IfDropDownList1.Text="GoodPapers"Then

strbm="GoodPapers"

EndIf

IfDropDownList1.Text="KuCun"Then

strbm="KuCun"

EndIf

DimstrAsString

str="select*from"&strbm

DimconnAsNewOleDbConnection("Provider=SQLOLEDB.1;Password=sa;PersistSecurityInfo=True;UserID=sa;InitialCatalog=CangKu;DataSource=..")

DimcmdAsNewOleDbCommand(str,conn)

DimadpAsNewOleDbDataAdapter(cmd)

DimdsAsNewD

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1