VBnet库存管理系统设计.docx
- 文档编号:11718619
- 上传时间:2023-03-31
- 格式:DOCX
- 页数:19
- 大小:207.69KB
VBnet库存管理系统设计.docx
《VBnet库存管理系统设计.docx》由会员分享,可在线阅读,更多相关《VBnet库存管理系统设计.docx(19页珍藏版)》请在冰豆网上搜索。
VBnet库存管理系统设计
毕业综合实践说明书
(2014届)
题目绍兴聚纺进出口有限公司库存管理系统设计
学院信息学院
专业计算机应用技术
班级11信息化2
学号*********
学生姓名张海峰
指导教师葛科奇
完成日期
摘要
随着信息技术的不断发展和广泛应用,物流市场的竞争也越来越激烈,如何处理好库存是企业正确快速发展的条件之一。
因此,企业有个良好的库存管理系统显得很重要。
该库存管理系统是一个功能比较简单,能基本满足企业对员工管理的管理系统。
作为计算机应用的一部分,使用计算机对产品库存信息进行管理,具有着人工管理无法比拟的优点,它检索迅速、查找方便、可靠性高、存储量大、保密性好等,可减少更多的人力物力,这些都能够极大地提高货品库存的管理效率。
本文主要分析了库存管理系统的一些基本功能和组成情况,包括系统的需求分析、系统结构,功能模块划分以及数据库模式分析等,重点对应用程序的实际开发实现作了介绍。
同时简单介绍了VB.NET编程语言和Sql数据库管理系统的功能特点,库存管理系统是企业物流管理中不可或缺的一部分。
关键词:
“库存管理”,“SqlServer数据库”,“信息管理”,“VB.NET”
引言
随着我国市场经济的蓬勃发展和人们对物质水平需求的增加,各行各业都处于一个飞速发展的时期,行业的快速发展必然导致各企业之间的竞争更加激烈,为了使自己的企业在竞争中能够站稳脚跟,不被激烈的竞争环境所压倒,必然要求企业加强对自身的管理,提高企业的经营效率。
然而纺织企业的库存物资管理往往是很复杂的。
由于所掌握的物资种类众多,订货、管理、发放的渠道繁琐,各类统计报表繁多,因此仓库的库存管理必须编制一套库存管理系统,实现计算机化操作。
在科学技术的不断提高的条件下,计算机科学不断发展,库存管理系统的功能已经被人们深刻认识,它已经进入了人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对产品库存信息进行管理,具有着人工管理无法比拟的优点,它检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等,可减少更多的人力物力,这些都能够极大地提高货品库存的管理效率,也是企业库存管理科学化、正规化,与世界接轨的重要条件。
因此,开发一个库存管理系统是很有必要的,具有其特有的技术意义和管理意义。
1库存管理系统分析
1.1系统的需求分析
该库存管理系统主要的研究目标是利用一些最基本的软件设计界面,对一些数据流程、数据结构的定义、基本信息设置等,编写基本模块的源代码,同时编写相应的功能实现模块。
不难发现,库存管理工作如由人工完成,主要依靠个人经验和厚重的资料簿,查询工作繁琐而且质量不高,容易出错。
如果利用计算机的高速计算能力和广泛的普及应用,则能利用判断条件,更快地找出所要查询的库存产品。
库存管理系统是一套对货品入库、出库、库存进行全面管理的系统。
在管理内容上,它的主要功能包括:
1、仓库各种信息的输入,包括入库,出库,需求信息的输入等
2、仓库管理的各种信息查询,修改和维护
3、企业各个部门的物质需求管理
4、操作日志的管理
5、仓库管理系统数据备份
本系统的以上功能会更适合仓库管理的发展情况,将会给仓库管理带来一种更为科学的服务系统,是仓库管理自动化的一面新窗口。
也将会是仓库管理员的好帮手。
1.2系统的可行性分析
1.经济可行性分析
由于本库存管理系统所要求的硬件和软件环境,市场上都容易购买到或从相关网站下载,系统成本主要集中在本管理系统的开发与维护上,对用户不造成过重的经济负担。
同时此系统的使用,不仅可以减少库存的工作强度,提高工作效率,而且方便了库存对信息的管理,极大限度地方便了库存管理人员,所以从经济方面讲开发此系统是可行的。
2.运行可行性分析
系统是采用VB.NET作为开发一具的,VisualBasic.Net是基于Basic的可视化的程序设计语言。
在VB.NET中,一方面继承了Basic所具有的程序设计语言简单易用的特点,另一方面在其编程系统中采用了面向对象、事件驱动的编程机制,用一种巧妙的方法把Windows的编程复杂性封装起来并提供了一种所见即所得的可视化程序设计方法。
本系统可以运行在WindowsXP,操作系统之上,就是说市场上流行的操作系统都可以支持。
因此系统运行可行性绝不会成为软件零售仓库管理系统的问题。
3.操作可行性分析
手工管理的操作模式使信息保存时间和条件很受限制、容易被损坏、信息查询不便、信息传达容易造成失误等。
而库存管理系统在库存信息处理方面做得很精准规范。
而且通过三个月毕业实习中的学习和实践,对开发管理信息系统又有了新的认识和提高,使自己在开发管理信息系统方面的技术更加成熟。
由于本设计最重要体现的是实用性,所以,通过大量的社会调查和分析,结合自己现有的技术水平加上导师的指导,一定能按期完成本毕业设计。
综上所述,本库存管理系统投资少、收益大,且其运行操作简单易学,具备了开发的可行性。
1.3系统的开发和功能描述
1.开发方法的选择
信息系统的开发是一项比较复杂的工作,因此我们必须选用科学有效的开发方法。
在系统设计时遵循系统调查研究、系统分析、系统设计和系统实施四个主要阶段进行设计,而在具体的设计上,则通过在系统的使用及对系统了解的不断加深中,对某一部分或几部分进行重新分析、设计、实施,使系统逐步完善。
2.系统功能描述及系统安全性
本库存管理系统是一套对货品入库、出库、库存进行全面管理的系统。
在管理内容上,它的主要功能包括:
进货管理:
进行填写货品信息,货品采购入库,入库单据的填写和修改最低库存量。
出货管理:
进行货品出库,出货单据的填写和获取采购员信息。
信息查询:
货品信息查询,库存信息查询,入库、出库单据查询,日报表、月报表查询。
统计报表:
完整的日报表、月报表统计查询功能,每张单据每次业务金额都可以清楚地反映。
系统管理:
身份验证,修改本人密码,注册用户,修改删除用户。
由于库存管理系统包含比较重要的信息,因此,在系统设计时除了注重用户的需求,还要保证系统的安全性和一致性,体现如下:
(1)安全性:
本系统中共分为三类不同的用户,分别具有不同的权限。
(2)一致性:
系统的数据要保证一致性、准确性,当某一数据库中记录发生改变时,与之相关联的数据库也随之变化。
1.4系统的数据分析与描述
图1-4仓库运行数据流程图
2库存管理系统设计
2.1SqlServer数据库设计
2.1.1SqlServer数据库概念结构设计
分E-R图设计
本设计根据上面的设计规划出的实体有货品实体、仓库实体、职工实体、部
门实体、供应商实体。
各个实体的E-R图及其关系描述如下:
2.1.2SqlServer数据库逻辑设计
将上面的E-R图转化为关系模型,关系的主码用下横线标出,外码用删除线标出:
实体:
货品(货品号,名称,型号,仓库号,状态)
仓库(仓库号,面积,管理员)
职工(编号,姓名,性别,职称,电话,薪水,部门号)
部门(部门号,名称,部门经理)
供应商(编号,名称,联系人,电话,地址,邮编)
联系:
共3个联系
采购(货品号,名称,型号,仓库号,时间,价格,供应商)
出库(货品号,部门号,时间)
入库(货品号,部门号,时间)
2.1.3SqlServer数据库物理设计
在上面的实体以及实体之间的关系的基础上,形成数据库中的表格以及各个表格之间的关系。
仓库管理系统数据库中的各个表格的设计结果如下面的几个表格所示。
每个表格表示在数据库中的一个表。
(1)货品表:
列名
数据类型
可否为空
货品号(主键)
字符型(20)
不能为空
名称
字符型(20)
可为空
型号
字符型(20)
可为空
仓库号(外码)
字符型(20)
不能为空
状态
字符型(10)
不能为空
(2)仓库表:
列名
数据类型
可否为空
仓库号(主键)
字符型(20)
不能为空
面积
数值型(20)
可为空
管理员(外码)
字符型(20)
可为空
(3)职工表:
列名
数据类型
可否为空
编号(主键)
字符型(20)
不能为空
姓名
字符型(20)
可为空
性别
字符型
(2)
可为空
职称
字符型(20)
可为空
电话
字符型(30)
可为空
薪水
数值型(20)
可为空
部门(外码)
字符型(20)
可为空
(4)部门表:
列名
数据类型
可否为空
部门号(主键)
字符型(20)
不能为空
名称
字符型(20)
可为空
部门经理(外码)
字符型(20)
可为空
(5)供应商表:
列名
数据类型
可否为空
编号(主键)
字符型(20)
不能为空
名称
字符型(20)
不能为空
联系人
字符型(20)
可为空
电话
字符型(30)
可为空
地址
字符型(50)
可为空
邮编
字符型(20)
可为空
(6)货品采购表:
列名
数据类型
可否为空
货品号(主键)
字符型(20)
不能为空
名称
字符型(20)
可为空
型号
字符型(20)
可为空
仓库号(外码)
数值型(20)
不能为空
时间
字符型(10)
可为空
价格
数值型(20)
不能为空
供应商(外码)
字符型(20)
不能为空
(7)出库表:
列名
数据类型
可否为空
部门号(主键)(外码)
字符型(20)
不能为空
货品号(主键)(外码)
字符型(20)
不能为空
时间
字符型(10)
可为空
(8)入库表:
列名
数据类型
可否为空
部门号(主键)(外码)
数值型(20)
不能为空
货品号(主键)(外码)
数值型(20)
不能为空
时间
字符型(10)
可为空
2.2系统模块设计
系统主要由:
初期设置、货品管理、查询统计、数据报表、系统维护五大模块,他们的主要功能即实现如下:
初期设置:
数据库原始数据的录入,试运行,管理员权限设定等基本功能设置。
货品管理:
包括商品的入库、出库、商品产地、名称、价格等“记录”工作,并将管理员所作操作全部正确的存入数据库。
流程图如下:
数据报表:
出库货品报表、入库数据报表
系统维护:
操作员管理、密码修改、操作员权限设置、数据备份、数据恢复、日志记录、日志查看、日志记录。
3库存管理系统实施
本章着重介绍了系统登录模块及主模块的代码实施:
3.1系统登录模块的实施
lmportsSystemData.SqlClientPublicClassLogin
PrivateSubbtnOK_Click(ByValsenderAsSystem.Object.ByValeAsSystem.EventArgs)
HandlesbtnOK.Click
Dimchaxun,yanzhengAsNewDataset
Dimmysql,mymysqlAsString
DimsqlAsNewsqlConnection
sql.ConnectionString="DataSource=PC-201005231944\SQLEXPRESS:
Initial
Catalog=kucunguanli;IntegratedSecurity=True"'链接数据库
sql.Open0
mysql="selectAdminIDfromAdminwhereAdminID'"+tXlAdmin.Text+"'"
DimSqlDataAdapterlAsSqlDataAdapter=NewSqIDataAdapter(mysql,sql)SqlDataAdapterl.Fill(chaxun,"Admin")
DataGridviewl.DAtaSource=chaxun.Tables("Admin")
IfDataGridViewl.Rows.Count=IThen
MsgBox(“对不起,您还没注册为用户”)'验证用户名
Else
Mymysql="selectAdminPasswordfromAdminwhereAdminPassword'"+
txtPasswordText+"'"
DimSQlDataAdapter2AsSqlDataAdnpter=NewSqlDataAdapter(mymysql,Sql)sqlDataAdapter2.Fill(yanzheng,"Admin")
DataGridView2.DataSourcc=yanzhcng.Tables("Admin")
IfDataGridView2.Rows.Count=IThen
MsgBox(“对不起,您输入的密码错误”)'验证密码
Else
FrmMain.ShowDialog()
Endif
Endif
Sql.Close()
EndSub
PrivateSubbtnExit_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesbtnExit.Click
Me.Close()
EndSub
EndClass
3.2主界面各个功能实现
1.入库操作
ImportsSystem.Data.sqlClient
PublicClassStoreInMan
PrivateSubStoreInMan_Load(ByValsenderAsSystem.Object,ByValeAs
System.EventArgs)HandlesMyBase.Load
‘TODO:
这行代码将数据加载到表“KucunguanliDataSet.Supply"中。
您可以根据需要移动或移除它。
Me.SupplyTableAdaPter.Fill(Me.KucunguaniDataSet.Supply)
‘TODO:
这行代码将数据加载到表“KucunguanliDataSet.StoreRoom"中。
您可以根据需要移动或移除它。
Me.StoreRoomTableAdapter.Fill(Me.KucunguanliDataSet.StoreRoom)
EndSub
PrivateSubbtnOK_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)args)HandlesbtnOK.Click
DimsumAsDouble
IftxtID.Text=""OrtxtItem.Text=""OrtxtIName.Text=""OrtxtGuige.Text=""OrtxtPrice.Text=""Ortxtqty.Text=""OrtxtName.Text=""OrtxtTime.Text=""Then
MsgBox(“请输入完整的信息”)
Else
sum=Val(txtPrice.Text)*Val(txtQty.Text)
DimsqlAsNewSqlConnection
sql.ConnectionString="DataSource=PC-2010052319444\SQLEXPRESS;InitialCatalog=kucunguanli;IntegratedSccurity=True"
sql.Open()
IfConnectionState.OpenThen
DimCR,cqAsNewSqlCommand
DimchaxunAsNewDataSet
DimmysqlAsString
mysql="selectItemIDf'romStorewhereItemID='"+txtItem,Text+"'"
DimDAAsSqlDataAdapter=NewSqlDataAdapter(mysql,sql)
DA.Fill(chaxun,"Store")
DataGridViewl.DataSource=chaxun.Tables("Store")
IfDataGridViewl.Rows.Count=1Then
MsgBox("新增货品")
CR.Connection=sql
CR.CommandText='INSERTINTOStoreIn
(StoreInID,ItemID.ItemName,GuiGe,UnitPrice,Qty,Total,Supply,StoreID,Location,Filloutperson.FilloutTime)values
('"+txtID.Text+"'"+",'"+txtItem.Text+"'"+",'"+txtName.Text+"'"+",'"+txtGuige.Text+"'"+",'"+txtPrice.Text+"'"+",'"+txtQty.Text+"'"+",'"+sum.ToString+"'"+",'"+cboSMID.Text+"'"+",'"+cboID.Text+"’"+",'"+cboRomm.Text+"'"+",'"+txtName.Text+"'"+",'"+txtTime.Text+"')"
CR.ExecuteNonQuery()
cq.Connection=sql
cq.CommandText="INSERTINTOStore
(ItemID.ItemName,GuiGe,QtyLocation)values('"+txtItem.Text+"'"+",'"+txtName.Text+"'"+",'"+txtGuige.Text+"'"+",'"+txtQty.Text+"'"+",'"+cboID.Text+"’"+",'"+cboRomm.Text+"')"
cq.ExecuteNonQuery()
Else
MsgBox("增加已有库存量")
CR.Connection=sql
cq.CommandText="INSERTINTOStoreIn
(StoreInID,ItemID.ItemName,GuiGe,UnitPrice,Qty,Total,Supply,StoreID,Location,Filloutperson.FilloutTime)values
('"+txtID.Text+"'"+",'"+txtItem.Text+"'"+",'"+txtName.Text+"'"+",'"+txtGuige.Text+"'"+",'"+txtPrice.Text+"'"+",'"+txtQty.Text+"'"+",'"+sum.ToString+"'"+",'"+cboSMID.Text+"'"+",'"+cboID.Text+"’"+",'"+cboRomm.Text+"'"+",'"+txtName.Text+"'"+",'"+txtTime.Text+"')"
CR.ExecuteNonQuery()
cq.Connection=sql
cq.CommandText="updataStoresetQty=Qty+'"+txtQty.Text+"'whereItemID='"+cboID.Text+"'"'增加库存数量
cq.ExecuteNonQuery()
EndIf
MasBox("入库已完成")
EndIf
EndIf
EndSub
PrivateSubbtnCancel_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlessbtnCancel.Click
Me.Close()
EndSub
EndClass
2.库存查询
ImportsSystem.Data.SqlClient
PublicClassStoreManage
DimsqlAsNewSqlConnecion
DimCRAsNewSqlCommand
DimmysqlAsString
DimchaxunAsNewDataset
PrivateSubStoreManage_Load(ByValsenderAsSystem.Object.ByValeAsSystem.EventArgs)HandlesMyBase.Load
‘TODO:
这行代码将数据加载到表"KucunguanliDataSet.Store"中。
您可以根据需要移动或移除它
Me.StoreTableAdapter.Fill(Me.KucunguanliDataSet.Store)
sql.ConnectionString="DataSourcc=PC-201005231944\SQLEXPRESS;InitialCatalog=kucunguanli;IntegratedSecurity=True"
sql.Open()
CR.Connection=sql
EndSub
PrivateSubbtnltemID_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesbtnItemlD.Click
DimDAAsSqlDataAdapter=NewSq1DataAdapter("select*fromStorewhereItemID='"+txtItemID.Text+
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VBnet 库存 管理 系统 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)