仓库管理系统的设计与实现.docx
- 文档编号:4011280
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:46
- 大小:615.73KB
仓库管理系统的设计与实现.docx
《仓库管理系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《仓库管理系统的设计与实现.docx(46页珍藏版)》请在冰豆网上搜索。
仓库管理系统的设计与实现
摘要:
随着信息技术在管理上越来越深入而广泛的应用,仓库管理系统的实施在技术上已逐步成熟。
仓库管理系统是一个不断发展的新型学科,企业要生存要发展,要高效率地把企业活动有机地组织起来,就必须加强企业管理,即加强对企业仓库内部的各种资源(人、财、物等)的有效管理,建立与自身特点相适应的管理信息系统。
本文介绍了在VB6.0环境下采用“自上而下地总体规划,自下而上地应用开发”的策略开发一个企业合同管理信息系统的过程。
通过分析传统的人工管理仓库的不足,创建了一套行之有效的计算机管理仓库的方案。
论文详细介绍了仓库管理系统的需求分析、系统设计和系统实现。
系统设计部分主要介绍了系统功能设计和数据库设计;系统实现部分列出主要模块的窗口界面和程序。
本系统是在以ACCESS2003作为后台数据库,以VisualBasic为编程语言来开发的。
仓库管理系统在运行阶段,效果好,数据准确性高,提高了工作效率,同时也实现了仓库管理计算机化。
本系统界面友好,操作简单,比较实用。
关键词:
VisualBasic6.0;仓库;管理系统;Access数据库
ABSTRACT:
Alongwiththeinformationtechnologyinthemanagementofmoreandmoredepthandawiderangeofapplications,storehousemanagementsystemintheimplementationoftechnologyhasgraduallymatured.Storehousemanagementsystemisacontinuousdevelopmentofnewdisciplines,enterprisetosurviveistodevelopandefficientbusinessactivitiesorganizedorganically,tostrengthenenterprisesmanagement,namely,tostrengthenenterpriseinternalvariousresources(human,financial,material,etc.),theeffectivemanagementoftheestablishmentanditsowncharacteristicsinlinewiththestorehousemanagementsystem.
Thispaperintroducestheenvironmentin,VB6.0tooverallplanning,"top-down"bottom-upapplicationdevelopmentstrategytodevelopaenterprisecontractmanagementinformationsystemprocess.Throughtheanalysisofthetraditionalmanualadministrationcontractinsufficiency,createdasetofeffectivecomputermanagementlibraryscheme.Thispaperintroducesindetailthebooksmanagementinformationsystemofanalysisparts,includingthefeasibilityanalysis,organizationanalysis,managementfunctionanalysis,businessprocessanalysis,dataflowanalysis,processingdescription,etc.;Systemdesignpartmainlyintroducedthesystemfunctiondesignanddatabasedesign;Systemrealizingsectionofseveralmajorprogramdiagram,andwithsomeofthemainwindowandprocedures.ThesystemisbasedonACCESS2003databaseasabackground,withVisualBasicasaprogramminglanguagetodevelop.
Thissystemfriendlyinterface,theoperationissimple,ismorepractical.
KEYWORDS:
VisualBasic6.0;storehouse;managementsystem;AccessDatabase
1.前言
随着计算机技术的日益成熟、普及,现代企业管理的实际运作在很多方面、很大程度上都必须借助计算机来完成,相应软件的开发显得尤为重要。
为了适应日趋激烈的市场竞争,企业需要对自身的经营状况有充分的了解,并通过有效的管理不断提高效率。
因此,对仓库的管理也成为提高生产经营效率的一个重要途径。
传统的仓库管理存在诸多弊病。
因为进行信息管理的方式主要是基于文本、表格等纸介质的手工处理,一般的存储情况是记录在账本上的。
仓库的工作人员和管理员也只是当时记得比较清楚,时间一长,如果再要进行查询,就得在众多的资料中翻阅查找了,这样造成费时、费力,如要对很长时间以前的货品进行更改就更加困难了。
对于货品的出入库情况的统计和核实采用对账本的人工检查,对管理者的管理权限等不受约束,任何人都可查看,还容易引起资料外泄。
另外,数据信息处理工作量大,容易出错,由于数据繁多,容易丢失,且不易查找。
基于这些问题,开发一个仓库管理系统是相当必要的。
仓库管理系统是为了实现企业仓库管理的系统化、规范化和自动化,提高企业管理效率而设计的。
它完全取代了人工管理的工作方式,避免了由于管理人员的工作疏忽以及管理质量问题所造成的各种错误,为及时、准确、高效的完成仓库管理提供了强有力的工具和管理手段。
仓库管理系统使用ACCESS2003开发后台数据库,以VisualBasic为编程语言来开发前台应用程序。
它界面美观、操作简单、安全性高,基本满足了仓库管理的要求。
仓库管理系统在运行阶段,效果好,数据准确性高,提高了工作效率,同时也实现了仓库管理计算机化。
2.需求分析
通过对企业仓库管理流程的调研分析,该系统应当实现对仓库入库信息、出库信息、操作员信息的维护和管理,能够完成对仓库的各项信息的添加、修改、删除和查询功能。
主要功能包括:
(1)基本管理:
实现仓库的进库和出库的添加、修改、删除和查询功能。
(2)查询管理:
实现按日期查询,按操作员查询和物品查询的功能。
(3)月统计管理:
实现按月查询进库、出库和库存统计管理功能。
(4)用户管理:
实现对操作员信息的添加、修改和密码修改功能。
本系统要求性能稳定,图形用户界面符合日常使用习惯,数据处理正确无误。
3.系统设计
3.1模块设计
根据需求分析,仓库管理系统主要有五个模块:
登陆模块、基本管理模块、查询模块、统计模块和设置模块。
仓库管理系统结构如图3.1所示。
图3.1 仓库管理系统结构图
3.2数据库设计
根据系统功能设计的要求及功能模块的划分,设置以下数据库表:
(1)操作员信息表。
如下表3-1所示:
表3-1操作员信息表
名称
字段名称
类型
主键
非空
编号
自动编号
数字
Yes
Yes
姓名
姓名
文本
No
Yes
密码
密码
文本
No
Yes
操作员ID
操作员ID
文本
No
Yes
(2)进库信息表。
如下表3-2所示:
表3-2进库信息表
名称
字段名称
类型
主键
非空
品名
品名
文本
YES
YES
价格
价格
文本
NO
YES
数量
数量
数字
NO
YES
单位
单位
文本
NO
YES
产品地址
产品地址
文本
NO
YES
进货人ID
进货人ID
文本
NO
YES
姓名
姓名
文本
NO
YES
入库日期
入库日期
日期
NO
YES
说明
说明
文本
NO
NO
编号
编号
数字
NO
YES
(3)出库记录表。
如下表3-3所示:
表3-3出库记录表
名称
字段名称
类型
主键
非空
品名
品名
文本
YES
YES
价格
价格
文本
NO
YES
数量
数量
数字
NO
YES
单位
单位
文本
NO
YES
进货人ID
进货人ID
文本
NO
YES
进货人ID
进货人ID
文本
NO
YES
姓名
姓名
文本
NO
YES
出库日期
入库日期
日期
NO
YES
其它用途
其它用途
文本
NO
NO
编号
编号
数字
NO
YES
(4)库信息表。
如下表3-4所示:
表3-4库存记录表
名称
字段名称
类型
主键
非空
编号
NO
自动编号
YES
YES
品名
配件标号
文本
NO
YES
价格
价格
数字
NO
YES
数量
数量
数字
NO
YES
单位
单位
文本
NO
YES
4.系统实现
4.1系统登陆
(1)启动模块
首先编写一个用于提供工程中所有数据连接的函数。
代码如下:
PublicUsernameAsString
PublicSqlAsString
DimrsAsADODB.Recordset
DimconnstrAsString
PublicFunctionExesql(ByValSqlAsString)AsADODB.Recordset
Setcn=NewADODB.Connection
Setrs=NewADODB.Recordset
DimstrArray()AsString
connstr="provider=Microsoft.jet.OLEDB.4.0;Persistsecurityinfo=False;Datasource="&App.Path&"\data\StoreHouse.mdb"
cn.Openconnstr
rs.CursorLocation=adUseClient
strArray=Split(Sql)
IfStrComp(UCase$(strArray(0)),"select",vbTextCompare)=0Then
rs.OpenTrim$(Sql),cn,adOpenKeyset,adLockOptimistic
SetExesql=rs
Else
cn.ExecuteSql
EndIf
ExeSQl_Exit:
Setrs=Nothing
Setcn=Nothing
ExitFunction
ErrHandler:
MsgBox"错误号:
"&Err.Number&"错误信息:
"&Err.Description,vbExclamation
ResumeExeSQl_Exit
EndFunction
本模块提供系统启动功能,系统载入的时候会进行文件检查,如果缺少文件会有报错提示,界面如图4.1和4.2所示。
图4.1载入界面
图4.2报错界面
代码如下:
DimStartAsInteger
PrivateSubForm_Load()
IfApp.PrevInstanceThen
MsgBoxApp.Title+"已运行!
"
End
EndIf
IfDir(App.Path&"\data",vbDirectory)=""Then
MsgBox"程序无法链接数据文件,请检查数据库是否存在",vbExclamation,"提示"
End
EndIf
EndSub
PrivateSubTimer1_timer()
Start=Start+1
IfStart=2Then
Timer1.Enabled=False
flogin.Show
UnloadMe
EndIf
EndSub
(2)登陆窗体
本模块提供文本框输入操作员信息,点击“确定”按钮完成登录,点击“退出”按钮退出系统,界面如图4.3所示。
图4.3登陆界面
代码如下:
PrivateSubCmdCal_Click()
End
EndSub
PrivateSubCmdOK_Click()
DimSqlAsString
DimrstAsNewADODB.Recordset
IfTrim(Text1.Text)=""Then
MsgBox"用户名不能为空!
",vbInformation,"系统登陆提示"
Text1.SetFocus
ExitSub
EndIf
IfTrim(Text2.Text)=""Then
MsgBox"密码不能为空!
",vbInformation,"系统登陆提示"
Text2.SetFocus
ExitSub
EndIf
Sql="select*fromoperaterwhere姓名='"&Trim(Text1.Text)&"'"
Setrst=Exesql(Sql)
Ifrst.Fields
(1)=Trim(Text2.Text)Then
Username=Trim(Text1.Text)
Password=Trim(Text2.Text)
rst.Close
UnloadMe
Mainform.Show
Else
MsgBox"用户名或密码有误!
",vbInformation,"系统登陆提示"
Text1.SetFocus
EndIf
EndSub
PrivateSubForm_Load()
Text1.Text=""
Text2.Text=""
EndSub
用户正常登录后,系统将进入主窗体。
主窗体的设计如图4.4所示。
图4.4主界面窗体
主窗体中程序代码如下:
PrivateSubM_About_Click()
FrmAbout.Show
EndSub
PrivateSubM_ChangePassword_Click()
ChangePassword.Show
EndSub
PrivateSubM_Exit_Click()
aa=MsgBox("确定退出吗?
",1+32)
Ifaa=1ThenEnd
EndSub
PrivateSubM_FindArticle_Click()
FrmFindArticle.Show
EndSub
PrivateSubM_FindDate_Click()
FrmFinddate.Show
EndSub
PrivateSubM_FindPerson_Click()
FrmFindperson.Show
EndSub
PrivateSubM_InStorehouse_Click()
FrmInstorehouse.Show
EndSub
PrivateSubM_ManSetup_Click()
frmPerson.Show
EndSub
PrivateSubM_OperaterSetup_Click()
frmOperater.Show
EndSub
PrivateSubM_OutStorehouse_Click()
FrmOutstorehouse.Show
EndSub
PrivateSubM_TotalMonth_Click()
FrmTotalmonth.Show
EndSub
PrivateSubM_User_Click()
FrmUser.Show
EndSub
PrivateSubMDIForm_Load()
Mainform.BackColor=&H80000003
str1="日一二三四五六"
StatusBar1.Panels.Item(4).Text="星期"&Mid(str1,Weekday(Date),1)
StatusBar1.Panels.Item(3).Text=Date
StatusBar1.Panels.Item
(1).Text="操作员:
"&Username
EndSub
PrivateSubMDIForm_QueryUnload(CancelAsInteger,UnloadModeAsInteger)
Cancel=MsgBox("确定退出吗?
",1+32)
IfCancel=1ThenEnd
EndSub
PrivateSubToolbar1_ButtonClick(ByValButtonAsMSComctlLib.Button)
SelectCaseButton.index
CaseIs=1
M_InStorehouse_Click
CaseIs=10
M_Exit_Click
CaseIs=2
M_OutStorehouse_Click
CaseIs=4
M_FindPerson_Click
CaseIs=5
M_FindArticle_Click
CaseIs=7
M_TotalMonth_Click
EndSelect
EndSub
4.2基本管理
(1)入库管理
本模块主要提供物品进库管理功能,具体设计如图4.5所示。
图4.5进库窗口
代码如下:
PrivateSubCommand1_Click()
DimiAsInteger
Fori=0To6
IfText1(i).Text=""Then
MsgBox"请将信息填写完整",vbOKOnly+vbExclamation,"警告"
ExitSub
EndIf
Nexti
Sql="select*fromoperaterwhere姓名='"&Trim(Text1(6))&"'and操作员ID='"&Trim(Text1(5))&"'"
Setrs=Exesql(Sql)
Ifrs.EOFThen
MsgBox("仓管中无此人,请重添加操作员!
")
Text1(5).Text=""
Text1(6).Text=""
Text1(6).SetFocus
ExitSub
EndIf
rs.Close
Sql="select*frominstorehouse"
Setrs=Exesql(Sql)
rs.AddNew
rs.Fields(0)=Trim(Text1(0).Text)
rs.Fields
(1)=Text1
(1).Text
rs.Fields
(2)=Text1
(2).Text
rs.Fields(3)=Trim(Text1(3).Text)
rs.Fields(4)=Text1(4).Text
rs.Fields(5)=Text1(5).Text
rs.Fields(6)=Text1(6).Text
rs.Fields(7)=Text1(8).Text
rs.Fields(8)=Text1(7).Text
rs.Update
rs.Requery
rs.Close
CallListUpdate
Sql="select*fromstockwhere品名='"&Trim(Text1(0).Text)&"'and价格='"&Trim(Text1
(1).Text)&"'"
Setrs=Exesql(Sql)
Ifrs.EOF=TrueThen
rs.AddNew
rs.Fields(0)=Text1(0).Text
rs.Fields
(1)=Text1
(1).Text
rs.Fields
(2)=Text1
(2).Text
rs.Fields(3)=Text1(3).Text
rs.Update
rs.Requery
rs.Close
Else
rs.Fields
(2)=rs.Fields
(2)+Text1
(2).Text
rs.Update
rs.Requery
EndIf
MsgBox"入库成功!
"
CallClearAll
Text1(0).SetFocus
EndSub
PrivateSubCommand2_Click()
CallClearAll
Text1(0).SetFocus
EndSub
PrivateSubCommand3_Click()
UnloadMe
EndSub
PrivateSubForm_Load()
Me.Top=(Mainform.Height-Me.Height)/2-800
Me.Left=(Mainform.Width-Me.Width)/2
Me.Caption="仓库管理系统→"&"采购人库操作"
CallClearAll
Text1(8).Text=Date
EndSub
PrivateSubText1_LostFocus(indexAsInteger)
Text1(index).BackColor=&HFFC0C0
EndSub
PrivateSubText1_GotFocus(indexAsInteger)
Text1(index).BackColor=&HC0FFFF
EndSub
PrivateSubListCh()
list.ColWidth(4)="1300"
list.ColWidth(5)="1000"
list.ColWidth(6)="1000"
list.ColWidth(7)="900"
list.TextMatrix(0,0)="品名"
list.Tex
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 仓库 管理 系统 设计 实现