《VBnet库存管理系统设计.docx》由会员分享,可在线阅读,更多相关《VBnet库存管理系统设计.docx(19页珍藏版)》请在三一办公上搜索。
1、宁波成彳半业技木学览毕业综合实践说明书(2014 届)题目 绍兴聚纺进出口有限公司库存管理系统设计学院信息学院专业计算机应用技术班级11信息化2学号学生姓名张海峰指导教师葛科奇完成日期摘要随着信息技术的不断发展和广泛应用,物流市场的竞争也越来越激烈,如何处理好库存是企业正确快 速发展的条件之一。因此,企业有个良好的库存管理系统显得很重要。该库存管理系统是一个功能比较简 单,能基本满足企业对员工管理的管理系统。作为计算机应用的一部分,使用计算机对产品库存信息进行 管理,具有着人工管理无法比拟的优点,它检索迅速、查找方便、可靠性高、存储量大、保密性好等,可 减少更多的人力物力,这些都能够极大地提高
2、货品库存的管理效率。本文主要分析了库存管理系统的一些 基本功能和组成情况,包括系统的需求分析、系统结构,功能模块划分以及数据库模式分析等,重点对应 用程序的实际开发实现作了介绍。同时简单介绍了 VB.NET编程语言和Sql数据库管理系统的功能特点,库 存管理系统是企业物流管理中不可或缺的一部分。关键词:“库存管理”,“Sql Server数据库”,“信息管理”,“VB.NET”引言11库存管理系统分析11.1系统的的需求分析11.2系统的可行性分析11.3系统的开发和功能描述22库存管理系统设计 52.1Sql Server 数据库设计 52.1.1Sql Server数据库概念结构设计52.
3、1.2Sql Server数据库逻辑设计72.1.3Sql Server数据库物理设计82.2系统模块设计93库存管理系统实施103.1系统登录模块的实施 103.2主界面各个功能实现134设计总结与评价15参考文献17引言随着我国市场经济的蓬勃发展和人们对物质水平需求的增加,各行各业都处 于一个飞速发展的时期,行业的快速发展必然导致各企业之间的竞争更加激烈, 为了使自己的企业在竞争中能够站稳脚跟,不被激烈的竞争环境所压倒,必然要 求企业加强对自身的管理,提高企业的经营效率。然而纺织企业的库存物资管理往往是很复杂的。由于所掌握的物资种类众 多,订货、管理、发放的渠道繁琐,各类统计报表繁多,因此
4、仓库的库存管理必 须编制一套库存管理系统,实现计算机化操作。在科学技术的不断提高的条件下,计算机科学不断发展,库存管理系统的功 能已经被人们深刻认识,它已经进入了人类社会的各个领域并发挥着越来越重要 的作用。作为计算机应用的一部分,使用计算机对产品库存信息进行管理,具有 着人工管理无法比拟的优点,它检索迅速、查找方便、可靠性高、存储量大、保 密性好、寿命长、成本低等,可减少更多的人力物力,这些都能够极大地提高货 品库存的管理效率,也是企业库存管理科学化、正规化,与世界接轨的重要条件。 因此,开发一个库存管理系统是很有必要的,具有其特有的技术意义和管理意义。1库存管理系统分析1.1系统的需求分析
5、该库存管理系统主要的研究目标是利用一些最基本的软件设计界面,对一些 数据流程、数据结构的定义、基本信息设置等,编写基本模块的源代码,同时编 写相应的功能实现模块。不难发现,库存管理工作如由人工完成,主要依靠个人 经验和厚重的资料簿,查询工作繁琐而且质量不高,容易出错。如果利用计算机 的高速计算能力和广泛的普及应用,则能利用判断条件,更快地找出所要查询的 库存产品。库存管理系统是一套对货品入库、出库、库存进行全面管理的系统。在管理 内容上,它的主要功能包括:1、仓库各种信息的输入,包括入库,出库,需求信息的输入等2、仓库管理的各种信息查询,修改和维护3、企业各个部门的物质需求管理4、操作日志的管
6、理5、仓库管理系统数据备份本系统的以上功能会更适合仓库管理的发展情况,将会给仓库管理带来一种 更为科学的服务系统,是仓库管理自动化的一面新窗口。也将会是仓库管理员的 好帮手。1.2系统的可行性分析1. 经济可行性分析由于本库存管理系统所要求的硬件和软件环境,市场上都容易购买到或从相 关网站下载,系统成本主要集中在本管理系统的开发与维护上,对用户不造成过 重的经济负担。同时此系统的使用,不仅可以减少库存的工作强度,提高工作效 率,而且方便了库存对信息的管理,极大限度地方便了库存管理人员,所以从经 济方面讲开发此系统是可行的。2. 运行可行性分析系统是采用VB.NET作为开发一具的,Visual
7、Basic.Net是基于Basic的可 视化的程序设计语言。在VB.NET中,一方面继承了 Basic所具有的程序设计语 言简单易用的特点,另一方面在其编程系统中采用了面向对象、事件驱动的编程 机制,用一种巧妙的方法把Windows的编程复杂性封装起来并提供了一种所见即 所得的可视化程序设计方法。本系统可以运行在WindowsXP,操作系统之上,就 是说市场上流行的操作系统都可以支持。因此系统运行可行性绝不会成为软件零 售仓库管理系统的问题。3. 操作可行性分析手工管理的操作模式使信息保存时间和条件很受限制、容易被损坏、信息查 询不便、信息传达容易造成失误等。而库存管理系统在库存信息处理方面做
8、得很 精准规范。而且通过三个月毕业实习中的学习和实践,对开发管理信息系统又有 了新的认识和提高,使自己在开发管理信息系统方面的技术更加成熟。由于本设 计最重要体现的是实用性,所以,通过大量的社会调查和分析,结合自己现有的 技术水平加上导师的指导,一定能按期完成本毕业设计。综上所述,本库存管理系统投资少、收益大,且其运行操作简单易学,具备 了开发的可行性。1.3系统的开发和功能描述1. 开发方法的选择信息系统的开发是一项比较复杂的工作,因此我们必须选用科学有效的开发 方法。在系统设计时遵循系统调查研究、系统分析、系统设计和系统实施四个主 要阶段进行设计,而在具体的设计上,则通过在系统的使用及对系
9、统了解的不断 加深中,对某一部分或几部分进行重新分析、设计、实施,使系统逐步完善。2. 系统功能描述及系统安全性本库存管理系统是一套对货品入库、出库、库存进行全面管理的系统。在管理内容上,它的主要功能包括:进货管理:进行填写货品信息,货品采购入库,入库单据的填写和修改最低库 存量。出货管理:进行货品出库,出货单据的填写和获取采购员信息。信息查询:货品信息查询,库存信息查询,入库、出库单据查询,日报表、 月报表查询。统计报表:完整的日报表、月报表统计查询功能,每张单据每次业务金额都 可以清楚地反映。系统管理:身份验证,修改本人密码,注册用户,修改删除用户。由于库存管理系统包含比较重要的信息,因此
10、,在系统设计时除了注重用户 的需求,还要保证系统的安全性和一致性,体现如下:(1)安全性:本系统中共分为三类不同的用户,分别具有不同的权限。(2)一致性:系统的数据要保证一致性、准确性,当某一数据库中记录发生 改变时,与之相关联的数据库也随之变化。1.4系统的数据分析与描述图1-1仓库出入库业务流图1-2货品米购流图1-3仓库管理业务流程示意图图1-4仓库运行数据流程图2库存管理系统设计2.1Sql Server数据库设计2.1.1Sql Server数据库概念结构设计分E R图设计本设计根据上面的设计规划出的实体有货品实体、仓库实体、职工实体、 门实体、供应商实体。各个实体的E-R图及其关系
11、描述如下:图2-1货品实体E-R图邮编地址名称电话编号供应商时间联系人仓库号价格货品号名称型号状态n货品n购/ 存时间出库入库时间部门部门号名称(数量仓库号仓库属于11职工管理领导职称J1性另1图2-5 总体E-R图2.1.2Sql Server数据库逻辑设计将上面的E-R图转化为关系模型,关系的主码用下横线标出,外码用删除线标出:实体:货品(货品号,名称,型号,仓库号,状态)仓库(仓库号,面积,管理员)职工(编号,姓名,性别,职称,电话,薪水,部门号)部门(部门号,名称,部门经理)供应商(编号,名称,联系人,电话,地址,邮编)联系:共3个联系采购(货品号,名称,型号,仓库号,时间,价格,供应
12、商)出库(货品号,部门号,时间)入库(货品号,部门号,时间)2.1.3Sql Server数据库物理设计在上面的实体以及实体之间的关系的基础上,形成数据库中的表格以及各个 表格之间的关系。仓库管理系统数据库中的各个表格的设计结果如下面的几个表格所示。每个 表格表示在数据库中的一个表。(1)货品表:列名数据类型可否为空货品号(主键)字符型(20)不能为空名称字符型(20)可为空型号字符型(20)可为空仓库号(外码)字符型(20)不能为空状态字符型(10)不能为空(2)仓库表:列名数据类型可否为空仓库号(主键)字符型(20)不能为空面积数值型(20)可为空管理员(外码)字符型(20)可为空(3)职
13、工表:列名数据类型可否为空编号(主键)字符型(20)不能为空姓名字符型(20)可为空性别字符型(2)可为空职称字符型(20)可为空电话字符型(30)可为空薪水数值型(20)可为空部门(外码)字符型(20)可为空(4)部门表:列名数据类型可否为空部门号(主键)字符型(20)不能为空名称字符型(20)可为空部门经理(外码)字符型(20)可为空(5)供应商表:列名数据类型可否为空编号(主键)字符型(20)不能为空名称字符型(20)不能为空联系人字符型(20)可为空电话字符型(30)可为空地址字符型(50)可为空邮编字符型(20)可为空(6)货品米购表:列名数据类型可否为空货品号(主键)字符型(20)
14、不能为空名称字符型(20)可为空型号字符型(20)可为空仓库号(外码)数值型(20)不能为空时间字符型(10)可为空价格数值型(20)不能为空供应商(外码)字符型(20)不能为空(7)出库表:列名数据类型可否为空部门号(主键)(外码)字符型(20)不能为空货品号(主键)(外码)字符型(20)不能为空时间字符型(10)可为空(8)入库表:列名数据类型可否为空部门号(主键)(外码)数值型(20)不能为空货品号(主键)(外码)数值型(20)不能为空时间字符型(10)可为空2.2系统模块设计系统主要由:初期设置、货品管理、查询统计、数据报表、系统维护五大模 块,他们的主要功能即实现如下:初期设置:数据
15、库原始数据的录入,试运行,管理员权限设定等基本功能设 置。货品管理:包括商品的入库、出库、商品产地、名称、价格等“记录”工作, 并将管理员所作操作全部正确的存入数据库。流程图如下:图2-6货品管理流程图数据报表:出库货品报表、入库数据报表系统维护:操作员管理、密码修改、操作员权限设置、数据备份、数据恢 复、日志记录、日志查看、日志记录。3库存管理系统实施本章着重介绍了系统登录模块及主模块的代码实施:3.1系统登录模块的实施Imports System Data.Sql ClientPublic Class LoginPrivate Sub btnOK _Click(ByVal sender A
16、s System. Object. ByVal e As System.EventArgs) Handles btnOK. ClickDim chaxun , yanzheng As New DatasetDim mysql , mymysql As StringDim sql As New sql Connectionsql. Connect ionString = Data Source=PC-20 100523 1944SQLEXPRESS : Initial Catalog=kucunguanli; Integrated Security=True链接数据库sql. Open 0mys
17、ql = select AdminID from Admin where AdminID + tXlAdmin. Text + Dim SqlDataAdapterl As SqlDataAdapter =New SqIDataAdapter(mysql, sql)SqlDataAdapterl.Fill(chaxun, Admin)DataGridviewl.DAtaSource=chaxun.Tables(Admin)If Data GridViewl. Rows. Count=I ThenMsgBox( “对不起,您还没注册为用户”)验证用户名ElseMymysql= select Ad
18、minPassword from Admin where AdminPassword + txtPassword Text + Dim SQlDataAdapter2 As SqlDataAdnpter = New SqlDataAdapter (mymy sql , Sql) sqDataAdapter2. Fill (yanzheng, Admin)DataGridView2. DataSourcc = yanzhcng. Tables (Admin)If DataGridView2. Rows. Count = I ThenMsgBox( “对不起,您输入的密码错误”)验证密码ElseF
19、rmMain. ShowDia log()End ifEnd ifSql.Close()End SubPrivate Sub btnExit_Click(ByVal sender As System .Object, ByVal e As System.EventArgs) Handles btnExit.ClickMe.Close()End SubEnd Class3.2主界面各个功能实现1. 入库操作Imports System. Data.sqlClientPublic Class Store InManPrivate Sub StoreInMan_Load(ByVal sender A
20、s System.Object, ByVal e AsSystem. EventArgs) Handles MyBase. Load TODO:这行代码将数据加载到表,“Kucunguanli DataSeSupply中。您可以根据需 要移动或移除它。Me. Supply Table AdaPter. Fill(Me. KucunguahDataSet.Supply) TODO:这行代码将数据加载到表“Kucunguanli DataSeStoreRoom中。您可以根 据需要移动或移除它。Me. StoreRoom Table Adapter. Fill(Me. Kucunguanli Dat
21、aSet.StoreRoom)End SubPrivate Sub btnOK _Click (ByVal sender As System. Object, ByVal e AsSystem.EventArgs) argHmdles btnOK. ClickDim sum As DoubleIf txtID. Text = Or txtItem. Text = Or txtIName. Text = Or txtGuige. Text = Or txtPrice. Text = Or txtqty. Text = Or txtName. Text = Or txtTime. Text = T
22、henMsgBox(“请输入完整的信息”)Elsesum = Val (txtPrice. Text) *Val (txtQty. Text)Dim sql AsNew SqlConnectionsql.ConnectionString = Data Source=PC-2010052319444SQLEXPRESS;Initial Catalog=kucunguanli;Integrated Sccurity=True” sql. Open()If ConnectionState. Open ThenDim CR, cq As New SqlCommandDim chaxun As NewD
23、ataSetDim mysql As St ri ngmysql = select ItemID from Store where ItemID= +txtItem, Text + Dim DA As Sql DataAdapter =New SqlDataAdapter(mysql, sql)DA. Fill (chaxun, Store )DataGridViewl. DataSource = chaxun. Tables ( Store )If DataGridViewl. Rows. Count = 1 ThenMsgBox (新增货品”)CR. Connection=sqlCR.Co
24、mmandText = INSERT INTO StoreIn(StoreIn ID, ItemID. ItemName, GuiGe,UnitPrice,Qty,Total, Supply,StoreID, Location, Filloutperson. Fil loutTime) values(+ txtID.Text + + , +txtItem.Text+ + , + txt Name. Text + + , + txtGuige.Text + + , +txtPrice.Text + + , + txtQty.Text + + , + sum.ToString + + , +cbo
25、SMID.Text + + , + cboID.Text + + , + cboRomm.Text + + , + txtName. Text + + , + txtTime.Text + )CR. ExecuteNonQuery() cq.Connection = sql cq.CommandText= INSERT INTO Store (ItemID. ItemName, GuiGe,Qty Location)values( +txtItem.Text+ + , + txtName. Text + + , + txtGuige.Text + + , + txtQty.Text + + ,
26、 + cboID.Text + + , + cboRomm.Text + )cq.ExecuteNonQuery()ElseMsgBox (增加已有库存量”)CR. Connection=sql cq.CommandText= INSERT INTO StoreIn (StoreIn ID, ItemID. ItemName, GuiGe,UnitPrice,Qty,Total, Supply,StoreID, Location, Filloutperson. Fil loutTime) values (+ txtID.Text + + , +txtItem.Text+ + , + txt N
27、ame. 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 = updata Store set Qty=Qty + + txtQty.Text
28、+ where ItemID= ”+ cboID.Text+增加库存数量cq.ExecuteNonQuery()End IfMasBox(入库已完成”)End IfEnd IfEnd SubPrivate Sub btnCancel_Click(ByVal sender As System. Object,ByVal e As System.EventArgs) Handless btnCancel. ClickMe.Close()End SubEnd Class2. 库存查询Imports System.Data.SqlClientPublic Class StoreManageDim sq
29、l As New SqlConnecionDim CR As New SqlCommandDim mysql As StringDim chaxun As New DatasetPrivate Sub StoreManage_Load(ByVal sender As System. Object. ByVal e As System.EventArgs) Handles MyBase. LoadTODO:这行代码将数据加载到表Kucunguanli DataSet. Store中。您可以根据 需要移动或移除它Me. StoreTableAdapter. Fill(Me.KucunguanliD
30、ataSet. Store)sql. ConnectionString = Data Sourcc=PC-201005231944SQLEXPRESS;Initial Catalog=kucunguanli ;Integrated Security=Truesql. Open ()CRConnection = sqlEnd SubPrivate Sub btnltemID_Click(ByVal sender As System.Object, ByVal e AsSystem. EventArgs) Handles btnItemlD. ClickDim DA As SqlDataAdapt
31、er = New Sq1DataAdapter ( select *from Store where I temID= +txtItemID.Text+ , sql)DA. Fill (chaxun. Store )Data GridView2. DataSource = chaxun. Tables( Store)End SubPrivate Sub btnStoreID_Click (ByVal sender As Systern. Object, ByVal e AsSystem. EventArgs) Handles btnSloreID. ClickDim DA As SqlData
32、Adapter = New SqlDataAdapter(selccl * from Store where StoreID= + txtStorelD.Text + , sql)DA.Fill (chaxun, Store)DataGridView2. DataSource=chaxun. TabIes (Store)End SubPrivate Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handless btnCancel.ClickMe.Close()End SubEnd
33、 Class3. 出库操作Imports System. Data. SqlCl ientPublic Class Storeout ManPrivate Sub StoreoutMan_Load (ByVal sender As System. Object, ByVal e AsSystem. EventArgs) Handles MyBase. LoadTODO:这行代码将数据加载到表“Kucunguanl iDataSet. Store中。您可以根据需要 移动或移除它。Me. StoreTableAdapter. Fill (Me. Kucunguanl iDataSet. Store
34、)End SubPrivate Sub btnOK_Click (ByVal sender As System. ObjecL, ByVal e As System.EventArgs) Hnndles btnOK.ClickIf txtID. Text= Or txtQty. Text = Or txtName. Text = 0r txtTime, Text =ThenMsgBox(请输入完整的信息)ElseDim sql As New SqlConnectionSq l. ConnectionString = Data Source=PC -201005231944SQL.EXPRESS
35、; Initial Catalog=kucunguanli ; Integrated Security=True sq l. Open()If ConnectionSlate. Open ThenDim CR, cq As New SqlCommandDim chaxun As New DataSetDim mysql As Stringmysql = select Qty from Store where Qty= + txtQty. Text + 判断是否有足够的库存Dim DA As SqlDataAdapter = New SqlDataAdapter (mysql,sql)DA.Fi
36、ll(chaxun,Store)DataGridViewl.DataSource = chaxun. Tables (Store)If DataGridViewl.Rows. Count = I ThenMsgBox (”请输入正确的数量”)ElseTryCR. Connection = sqlCR. CommandText t = INSERT INTO Storetout(Storcout ID, ItemID. ItemName, GuiGe. Qty. StoreID, Location, Filloutperson. Fil loutTime) values(+ txtID.Text
37、 + + , + cboID.Text + + , + cboName. Text + + , + cboGuige.Text + + , + txtQty. Text + + , +cboCkID. Text + + ”, +cboCkRoom. Text + + , +txt Name. Text + + , + txtTime.Tcxt + )CR. ExecuteNonQuery()cq.Conncclion = sqlDim str As Stringstr = update Store set Qty=Qty - + txtQty. Text + where ItemID= + c
38、boID. Text +减少库存数量CmandText=strCq.ExecuteNonQuery()MsgBox( “库存已完成”)Catch ex As ExceptionMsgBox (ex. Message)End TryEnd IfEnd IfEnd IfEnd SubPrivate Sub btncan_Click(ByVal sender As System Object, ByVal e As System EventArgsHandles btncan. ClickMe.Close()End SubEnd ClassEnd SubEnd Class4设计总结与评价库存管理系统
39、是生产、计划和控制的基础。库存管理系统是通过对仓库、货 位、入出库类型与入出库单据的管理,及时反映物资的仓储、流向情况,为生产 管理和成本核算提供依据。并通过库存分析,为管理及决策人员提供库存资金占 用情况、物资短缺(超储)情况、分类情况等不同的分析信息。通过清仓盘库管理, 保证帐面与实物一致,为计划及决策人员提供实时准确的存货信息,以便及时调 整生产,保证企业各项生产经营活动的顺利进行。由于以前对VB.NET的接触并不是很多,对它的开发环境不是非常了解,所 以在程序的开发过程中遇到了很多的困难,但经过学习和指导老师的帮助,一一 化解了困难,并从中学到了很多编程方面的知识。但是由于经验方面的原
40、因,以 及对库存方面的操作流程了解不足,该系统还有许多不尽如人意的地方和功能上 的缺陷,这些都有待于进一步改善。在本次毕业设计中,我从指导老师身上学到 了很多东西,老师工作认真负责,无论在理论上还是实践中,都给予我很大的帮 助,使我得到不小的提高,相信对我以后的工作和学习都会有很大的帮助,诚挚 感谢他细心又耐心的辅导。参考文献1. 王珊.数据组织与结构.经济科学出版社,20012. 陈英.Visual Basic程序设计.电子工业出版社,20043. 王恩波.网络数据库实用教程-SQL Server 2000.高等教育出版社,20044. 廖福金.库存管理入门.广东经济出版社,20035. 王颖.基于.NET的商品库存管理系统的设计与实现.西安电子科技大学,20096. 赛奎春,高春艳.Visual Basic精彩编程200例.机械工业出版社2003-17. 高春艳,李俊民.Visual Basic 工程应用与项目实践.机械工业出版社2005-18. 齐兴斌,赵丽.VB与VB.NET编程的比较研究.电力学报20099. 邹建.SQL Server 2000开发与管理应用实例.人民邮电出版社2005-810. SQL Server数据库开发(经典案例解析).清华大学出版社2006 -7