库存管理系统.doc

上传人:豆**** 文档编号:17580041 上传时间:2022-05-25 格式:DOC 页数:41 大小:325KB
返回 下载 相关 举报
库存管理系统.doc_第1页
第1页 / 共41页
库存管理系统.doc_第2页
第2页 / 共41页
点击查看更多>>
资源描述

《库存管理系统.doc》由会员分享,可在线阅读,更多相关《库存管理系统.doc(41页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流库存管理系统.精品文档.分类号: TP31 编号:201125502218 库存管理系统Storage Management System (申请烟台大学学士学位论文)申请学位: 工学学士学位 院 系: 计算机学院 专 业: 自动化 学生姓名: 学 号: 指导老师 2011年 6 月 7 日申请学士学位论文库存管理系统申请人:导 师: 2011年 6 月 7 日烟台大学附3.烟台大学毕业论文(设计)任务书院(系):计算机学院姓名学号毕业届别2007专业自动化毕业论文(设计)题目库存管理系统指导教师学历硕士职称讲师所学专业自动化具体要求(主要内

2、容、基本要求、主要参考资料等):该库存管理系统能够实现入库出库信息的录入、查看、查询,并能够实现存货分析,销售分析的功能。对入库出库的基本信息能够生成报表。进度安排:2011年1月3月:市场需求调查,初步设计系统的基本功能2011年4月:学习VB编程,学习Access数据库的使用2011年5月:设计编程实现系统的各个界面,并链接Access数据库2011年6月:根据完成情况,查缺补漏完善系统,写毕业设计论文指导教师签字:年 月 日院(系)意见: 教学院长(主任)签字: 年 月 日附注:摘要 库存管理系统是物资管理系统的核心,是一个企业不可缺少的部分,它的内容对于企业的决策者和管理者来说都至关重

3、要。直以来人们使用传统人工的方式管理仓库,效率低,查找、更新和维护比较困难。尤其在我国由于劳动力相对充足,库存信息管理仍以人工管理为主。该库存管理系统以Visual Basic 6.0集成开发环境为平台,外接Access数据库,拥有采购入库、存货查看、销售出库、查询、权限设置等模块,操作简单界面友好。利用该库存管理系统不仅可以轻松管理查看元件、成品、订单等的相关信息而且可以对产品销售、仓库存货进行分析。对产品销售、仓库存货进行分析是本库存管理系统的特色所在。元件入库、元件消耗、成品入库、发货、订单等信息不仅可以列表查看而且可以生成报表。另外还可以生成柱状图查看存货信息。客户能够在查询模块对任意

4、信息进行查询。查询信息的输入通过组合框和文本框完成的,界面简单明了。系统的采购入库、存货查看、销售出库、权限设置各对应一个权限。权限设置简单快捷。关键词 库存管理;存货分析;Visual Basic 6.0;Access数据库;Abstract: Storage Management System which is an indispensable part to an enterprise plays an important role in goods and materials management system. The content of it is of vital import

5、ance to decision makers and managers in various enterprises. We used to manage storages manually. Of course, it is low efficient and very difficult to search, update and maintain data. In China, manual management has been the main method to manage storages because of our abundant labor force. Connec

6、ting with Access data base, this storage management system which consists of Purchase, inventory, marketing, search and set modules are based on Visual Basic 6.0. With a friendly interface, it is easily operated. By using this system not only information about components, products and orders can be

7、easily checked, but also marketing and inventory can be analyzed easily. This system is characterized by analyses to marketing and inventory. Information can not only be listed but also be pictured. In search module, any record can be searched. The interface of search module is easy to understand an

8、d operate. Purchase, inventory, marketing and set modules each has an identification for Permissions. Permissions of users can be set easily and quickly.Key words: Storage Management System; marketing analyses; Visual Basic 6.0; Access data base 目 录1 绪 论11.1 本课题的研究意义及必要性11.2 相关领域国内外应用的现状及发展趋势12 系统分析

9、22.1 系统可行性分析22.2 系统功能介绍23 总体设计33.1 功能模块划分33.2 系统流程43.3 系统开发工具介绍43.3.1 Visual Basic介绍43.3.2 Access数据库介绍54 详细设计64.1 各模块的功能与实现64.1.1 注册与登录模块64.1.2 采购入库模块84.1.3 存货查看模块94.1.4 销售出库模块124.1.5 查询模块194.1.6 权限设置模块254.2 系统数据库的设计264.2.1 数据库选择及理由264.2.2 数据库表的结构275 综合测试315.1 系统注册与登录模块测试315.2 采购入库模块测试325.3 存货分析测试33

10、5.4 销售出库模块测试345.5 查询模块测试355.6 权限设置模块测试36结 束 语37致 谢38参考文献39附录A 部分代码401 绪 论1.1 本课题的研究意义及必要性库存管理系统是物资管理系统的核心,是一个企业不可缺少的部分,它的内容对于企业的决策者和管理者来说都至关重要。直以来人们使用传统人工的方式管理仓库,效率低,查找、更新和维护比较困难。现在,仓库作业和库存管理作业已多样化、复杂化,靠人工去处理已十分困难。如果不能保证正确的进货、验收及发货,就会导致产生过量的库存,延迟交货时间,增加经营成本,以致失去客户。随着科学技术的不断提高,计算机科学日渐成熟,库存管理系统应运而生,其检

11、索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等优点极大地提高人事劳资管理的效率,其能够有效地组织人员、空间和设备进行收货、存储、拣货和运输,组织运送原材料和部件到生产企业,运送成品到批发商、分销商和最终客户手中等强大的功能已为人们所熟知。仓库管理系统是为企业的采购、制造计划、制造执行、客户服务系统与仓库或配送中心提供的管理手段,满足企业对低成本和快速处理的要求,帮助不同行业的企业解决复杂的配送问题并且降低订单履行成本,它已越来越广泛的应用到各大仓库,并随着不断的完善发挥着越来越重要的作用。为此,有必要开发一个信息添加快捷、查找方便、稳定性高的库存管理系统。该库存管理系统以Vi

12、sual Basic 6.0集成开发环境为平台,拥有采购入库、存货查看、销售出库、查询、权限设置等模块,操作简单易学。1.2 相关领域国内外应用的现状及发展趋势库存管理系统已经在发达国家广泛应用,而且应用范围越来越广功能越来越全面,操作越来越简便,成本越来越低廉。目前主要应用于大中小型企业,工厂,物流公司,超市以及一些科研单位。在我国由于劳动力相对充足,企业对库存管理系统不够重视。现在我国的库存信息管理仍以人工管理为主。2 系统分析2.1 系统可行性分析首先,系统采用了完全模块化的总体结构设计,自上而下,逐层求精,将大量过程组合在一个过程文件中,使整个系统程序只包括两个部分:总控模块和过程文件

13、。系统结构清晰,并且大大减少了磁盘访问的频繁程度,使运行速度加快并且使程序的维护和保存更加简便。第二,本系统将采用VB制作友好的人机交互页面。人机交互界面启动时将要求用户输入密码,保证了库存信息的保密性。用户可以在界面上选择查看各个模块。对于各原料库存、原料需求、销售情况等数据将尽量以图形的形式给出,方便用户对比分析。第三,采用数据库存储用到的各种数据。用户可以在人机交互界面上实现对数据库的操作,方便快捷。通过使用数据库减少了人力劳动,降低了仓库管理成本。第四,为方便信息对比、保存,系统设置了信息查看、报表等功能。2.2 系统功能介绍库存管理系统作为一种信息管理系统,其基本功能还是信息的录入和

14、查询。该库存管理系统以Visual Basic 6.0集成开发环境为平台设计各种操作界面。由于Visual Basic 6.0只能支持Access97及其以下的版本,本库存管理系统选择使用Access97作为后台数据库。数据库分为用户管理、入库成品管理、入库元件管理、订单管理、发货管理、产品所需元件、元件消耗管理七个表。Visual Basic 6.0新增了数据环境设计器,它与数据报表设计器一起使用能够实现在VB中轻松创建报表的功能。3 总体设计3.1 功能模块划分本库存管理系统由注册与登录、采购入库、存货查看、销售出库、查询、权限设置等六个功能模块组成,如图3.1所示。注册与登录注册元件消耗

15、信息查看库存管理系统采购入库存货查看查询权限设置登录入库元件管理入库元件信息查看入库成品管理入库成品信息查看元件存货查看成品存货查看存货分析销售出库发货管理发货信息查看订单信息查看元件消耗管理订单管理产品所需元件销售分析图3.1 库存管理系统模块本库存管理系统由注册与登录、采购入库、存货查看、销售出库、查询、权限设置等六个功能模块组成。系统注册与登录模块为用户提供简洁的注册、登录界面。注册之后方可登录到主界面。采购入库模块主要完成成品和元件入库信息的添加、删除、编辑等工作,分为成品入库管理、成品入库信息查看、元件入库管理、元件入库信息查看四个子模块。存货查看模块分为成品存货查看、元件存货查看、

16、存货分析三个子模块。成品存货查看和元件存货查看的功能是显示元件和成品的当前存货量,有图表和柱状图两种显示方式供用户选择。存货分析部分是该模块的特色部分。存货分析可以根据尚未发货的订单数分析当前的成品存货、元件存货是否充裕。存货分析部分的存在使得本库存管理系统不再是简单的信息记录系统。销售出库模块由发货信息、订单信息、元件消耗、产品所需元件、销销售分析五个子模块组成。其中,发货管理子模块又分为发货管理和发货信息查看两个子模块,订单信息子模块又分为订单信息管理、订单信息查看两个子模块,元件消耗子模块又分为元件消耗管理、元件消耗信息查看两个子模块。发货信息、订单信息、元件消耗主要用于对发货、订单、元

17、件消耗信息的录入、查看。产品所需元件子模块的功能是记录每一种产品需要的元件及数量,该子模块既可以供用户编辑、查看又可以为存货查看模块中的存货分析部分提供支持。销售分析子模块有总体销售分析和按产品分析两个部分。每个部分都以不同颜色的折线显示过去三年每月的销售总额并绘制今年过去月份的销售折线,从而为用户提供直观的销售分析依据。查询模块可以对发货、订单、入库元件、入库成品、产品所需元件、元件消耗、元件存货、成品存货进行查询。权限设置模块仅对具有管理员权限的用户开放。在该模块中管理员可以删除用户或编辑用户的访问权限。3.2 系统流程本库存管理系统的使用流程是:用户首先在注册界面上注册,只有注册成功的用

18、户才可以在登陆界面凭用户名和密码登录。登录之后系统根据用户具有的权限确定用户可以使用哪些模块。对于用户没有权限的模块,系统将以灰色显示并禁止用户访问。具体流程如图3.2所示。图3.2 系统流程图3.3 系统开发工具介绍3.3.1 Visual Basic介绍Visual Basic(简称VB)是美国微软公司推出的Windows环境下的软件开发工具,它采用面向对象的编程技术,巧妙的把开发Windows环境下应用程序的复杂性“封装”起来,可以既快捷又简单得开发Windows应用软件,并使用事件驱动的编程思想,提高了编写应用程序时的灵活性和方便性。Visual Basic 6.0的联机帮助文档使用M

19、icrosoft Visual Studio 6.0统一的MSDN(Microsoft Developer Network)帮助方式。VB6.0是微软公司Microsoft Visual Studio开发工具套件中的成员之一,包括三个版本:学习版(Learning)、专业版(Professional)和企业版(Enterprise)。本库存管理系统使用的是Visual Basic 6.0专业版。专业版为编程人员提供了一整套功能完备的软件开发工具。包括学习班的全部功能,还包括Active X控件、Internet Information Server Application Designer、集

20、成的Visual Database Tools和Data Environment、Active Data Objects和Dynamic HTML Page Designer。3.3.2 Access数据库介绍Microsoft Office Access是由微软发布的关联式数据库管理系统,它结合了Microsoft Jet Database Engine和图形用户界面两项特点,是Microsoft Office的成员之一。Access作为一种数据库管理软件,是小型企业的专业化数据库设计和开发工具,它可以完成保存信息、数据计算处理、数据分析处理等功能,与Excel等工具可实现协同工作。4 详细

21、设计4.1 各模块的功能与实现4.1.1 注册与登录模块该模块的功能是自动记录用户申请的用户名和密码,并在用户登录时进行验证。当用户申请的用户名已经存在时,系统将给出提示“该用户名已存在”并自动清空申请用户名的输入框。在申请密码部分,系统要求用户两次输入密码,只有两次输入一致才可以成为用户的密码。在用户成功申请用户名和密码之后,系统将用户名和密码保存在后台数据库中的用户管理表中。用户凭用户名和密码登录,当密码错误或用户名不存在时系统将给出提示“输入密码错误或该用户名不存在!请重新输入!”。当连续三次输入错误时,系统将停止运行强行退出。登录部分在验证用户名和密码之后,如果用户名和密码一致还要继续

22、分析用户的权限。用户权限可以看成是一个四位数,每一位代表一个权限。这个四位数从高位到低位依次代表采购入库模块、存货查看模块、销售出库模块、权限设置模块的权限。“1”表示有权使用该模块,“0”表示无权使用该模块。在分析用户权限之后系统将设置各个模块的Enable属性,使之允许访问或是不允许访问。系统登录部分主要代码如下。Adodc1.Recordset.MoveFirst i = 0 While (Not Adodc1.Recordset.EOF) If str = Adodc1.Recordset.Fields(用户名) And mima = Adodc1.Recordset.Fields(密

23、码) Then i = 1 quan = Adodc1.Recordset.Fields(权限) End If Adodc1.Recordset.MoveNext Wend If i = 0 Then Label4.Caption = 输入密码错误或该用户名不存在!请重新输入! cishu = cishu + 1 If cishu = 3 Then Label4.Caption = 您已三次输入错误! MsgBox 您已三次输入错误! End Unload Me End If End If If i = 1 Then MDIForm1.Show a = quan / 1000 采购入库 b =

24、 (quan / 100) Mod 10 销售出库 c = (quan / 10) Mod 10 存货查看 d = quan Mod 10 系统设置 If a Then MDIForm1.mnu采购入库.Enabled = True Else MDIForm1.mnu采购入库.Enabled = False End If If b Then MDIForm1.mnu销售出库.Enabled = True Else MDIForm1.mnu销售出库.Enabled = False End If If c Then MDIForm1.mnu存货查看.Enabled = True Else MDIF

25、orm1.mnu存货查看.Enabled = False End If If d Then MDIForm1.mnuSet.Enabled = True Else MDIForm1.mnuSet.Enabled = False End If Unload Me MDIForm1.Show End If用户注册界面如图4.1所示,登录界面如图4.2所示。图4.1 用户注册界面图4.2 登录界面4.1.2 采购入库模块该模块的主要功能是完成成品和元件入库信息的添加、删除、编辑等工作,分为成品入库管理、成品入库信息查看、元件入库管理、元件入库信息查看四个子模块。该模块的入库元件管理界面和入库成品管理

26、界面是在用VB 6.0中的数据窗体设计器自动生成窗体的基础上调整美化而成。入库元件信息查看和入库成品信息查看子模块使用了ADO数据控件和MSFlexGrid控件。ADO数据访问方式是现在和未来VB6.0乃至Microsoft的各种应用软件进行数据访问的主流。ADO是通过OLE DB所提供的方法对各种数据源进行操作和访问。ADO是VB数据访问技术的发展方向。MSFlexGrid控件能够显示包含若干行和列的表格数据。MSFlexGrid控件的优点在于它的灵活性,它可以显示任意列任意行。为了方便用户查看、保存和打印信息,在次模块设置了数据报表。数据报表(Data Report)设计器是VB6.0新增

27、加的功能,与数据环境(Data Environment)设计器配套使用可以完成数据报表的设计和打印功能。入库元件管理界面、入库元件信息查看界面、入库元件数据报表分别如图4.3、图4.4和图4.5所示。图4.3 入库元件管理界面图4.4 入库元件信息查看界面图4.5 入库元件数据报表4.1.3 存货查看模块存货查看模块分为成品存货查看、元件存货查看、存货分析三个子模块。成品存货查看和元件存货查看的功能是显示元件和成品的当前存货量,有图表和柱状图两种显示方式。成品存货查看中的数据由入库成品管理和发货管理两个表的数据运算得到。例如,要显示温升报警器的存货数量:首先在入库成品管理中搜索所有温升报警器的

28、入库记录,把每条记录的数量累加存在一个变量中。然后在发货管理中搜索所有温升报警器的发货记录,从刚才的变量中逐一减去各个发货记录中的数量。最后,变量的值就是库中温升报警器的存有量。系统逐一计算出每种成品的库存量,在MSFlexGrid表格中显示出来并生成柱状图以给用户更直观的印象。元件存货查看是根据入库元件管理和元件消耗管理两个表计算元件存货量的。计算过程与成品存货量的计算过程类似。该部分的代码见附录A。成品存货查看界面如图4.6所示。图4.6(a)成品存货表格界面图4.6(b)成品存货柱状图界面存货分析子模块是该模块的特色部分。存货分析可以根据尚未发货的订单数分析当前的成品存货、元件存货是否充

29、裕。该子模块分成订单分析、成品存货分析、元件存货分析三个部分。订单分析部分首先从订单管理表中搜索出尚未发货的订单并显示出来。然后系统将根据产品所需元件表中的信息列出每个订单产品所需的元件及数量,并统计以上订单一共需要多少元件。成品存货分析部分搜索订单中的产品在仓库中存有多少,如果某种产品的存货量低于订货量系统将给出提示并列出所缺产品需要哪些元件及元件的数量。最后成品存货分析部分将计算出所缺少的成品一共需要多少元件。元件存货分析部分将根据成品存货分析部分最后列出的元件信息搜索这些元件在仓库中的存货量,如果某元件的存货量低于生产订单所需要的数量系统将给出进货提示。存货分析子模块中最核心的部分是计算

30、库中不能满足订单需求的产品需要哪些元件及其元件的数量。其程序如下所示。Adodc5.ConnectionString = Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info= False;Data Source= & App.Path & db1.mdbAdodc5.RecordSource = 产品所需元件Adodc5.RefreshOpen F:VB文件ziduan.dat For Input As #2Input #2, zmaxClose 2zuidayuanjianshu = 0For k = 1 To maxi maxi用

31、来表示最大缺货数 biaozhi = 0 Adodc5.Recordset.MoveFirst While Not Adodc5.Recordset.EOF If quehuo(k) = Adodc5.Recordset.Fields(产品名称) Then biaozhi = 1 biaozhi做为是否找到某产品元件信息的标志 For j = 0 To zmax str2 = 元件 & j str3 = 数量 & j If IsNumeric(Adodc5.Recordset.Fields(str3) Then If zuidayuanjianshu = 0 Then qyj(j) = Ado

32、dc5.Recordset.Fields(str2) qyjs(j) = Adodc5.Recordset.Fields(str3) * queshu(k) zuidayuanjianshu = 1 Else mbz = 0 从第二条记录开始默认没有跟前一条一样的元件,mbz是一个标志 For n = 0 To zuidayuanjianshu If qyj(n) = Adodc5.Recordset.Fields(str2) Then qyjs(n) = qyjs(n) + Adodc5.Recordset.Fields(str3) * queshu(k) zuidayuanjianshu

33、= zuidayuanjianshu + 1 mbz = 1 End If Next n If mbz = 0 Then qyj(zuidayuanjianshu) = Adodc5.Recordset.Fields(str2) qyjs(zuidayuanjianshu) = Adodc5.Recordset.Fields(str3) * queshu(k) zuidayuanjianshu = zuidayuanjianshu + 1 End If End If Picture5.Print Adodc5.Recordset.Fields(str2) & : & Adodc5.Record

34、set.Fields(str3) & 个 End If Next j End If Adodc5.Recordset.MoveNext Wend If biaozhi = 0 Then Picture5.Print k & 、 & 暂时还没有 & quehuo(k) & 的元件信息 End IfNext kPicture6.Print 以上产品一共需要一下元件:For k = 0 To zuidayuanjianshu - 1 Picture6.Print qyj(k) & : & qyjs(k) & 个 这里求出了所有需要的元件!(除去了成品存货)Next k存货分析子模块的界面如图4.7所

35、示。图4.7 存货分析界面4.1.4 销售出库模块销售出库模块由发货信息、订单信息、元件消耗、产品所需元件、销销售分析五个子模块组成。其中,发货信息子模块又分为发货管理和发货信息查看两个子模块,订单信息子模块又分为订单信息管理、订单信息查看两个子模块,元件消耗子模块又分为元件消耗管理、元件消耗信息查看两个子模块。发货信息、订单信息、元件消耗主要用于对发货、订单、元件消耗信息的录入、查看。产品所需元件子模块的功能是记录每一种产品需要的元件及数量,该子模块既可以供用户编辑、产看又可以为存货查看模块中的存货分析部分提供支持。销售分析子模块有总体销售分析和按产品分析两个部分。每个部分都以不同颜色的折线

36、显示过去三年每月的销售总额并绘制今年过去月份的销售折线,从而为用户提供直观的销售分析依据。销售出库模块中的发货管理、发货信息查看、订单管理和订单信息查看与前面采购入库中入库成品管理和入库成品信息查看的功能、实现方法类似,不再赘述。产品所需元件子模块利用数据表存储产品所需的元件信息,该子模块可以动态增加字段。动态增加字段是该子模块的核心部分。该表中第一个字段是“产品名称”,第二个字段是“元件0”,第三个字段是“元件1”,以此类推。程序中把当前最大字段数写入一个二进制文件中。录入第一条记录时把第一条记录的字段数当做当前最大字段数,以后每记入一个记录都会从“元件0”开始填写元件,当元件种类超过最大字

37、段数时,系统就会自动增加一个字段,并把当前的字段数赋给最大字段数。该部分的核心程序如下。Dim zmax As Integer 用来表示最大字段数 Dim j As Integer 用来表示当前记录数 Str = 元件 str2 = 数量 j = Adodc1.Recordset.RecordCount Adodc1.Recordset.Delete If j = 1 Then sql = alter table 产品所需元件 add & Str & i & varchar(10) Adodc1.Recordset.ActiveConnection.Execute sql Adodc1.Rec

38、ordset.Update Adodc1.Recordset.Save sql = alter table 产品所需元件 add & str2 & i & varchar(10) Adodc1.Recordset.ActiveConnection.Execute sql Adodc1.Recordset.Update Adodc1.Recordset.Save Adodc1.Refresh Adodc1.Recordset.MoveLast Str = 元件 & i str2 = 数量 & i Adodc1.Recordset.Fields(Str) = Text2.Text Adodc1.R

39、ecordset.Fields(str2) = Text3.Text Open F:VB文件ziduan.dat For Output As #2 用文件来保存最大字段数 Write #2, i Close 2 Print 文件已建立! i = i + 1 End If If j 1 Then Open F:VB文件ziduan.dat For Input As #2 Input #2, zmax Close 2 If k = zmax Then Str = 元件 & k str2 = 数量 & k Adodc1.Recordset.Fields(Str) = Text2.Text Adodc

40、1.Recordset.Fields(str2) = Text3.Text k = k + 1 Else Str = 元件 & k str2 = 数量 & k sql = alter table 产品所需元件 add & Str & varchar(10) Adodc1.Recordset.ActiveConnection.Execute sql Adodc1.Recordset.Update Adodc1.Recordset.Save sql = alter table 产品所需元件 add & str2 & varchar(10) Adodc1.Recordset.ActiveConnection.Execute sql Adodc1.Recordset.Update Adodc1.Recordset.Save Adodc1.Refresh Adodc1.Recordset.MoveLast Adodc1.Recordset.Fields(Str) = Text2.Text Adodc1.Recordset.Fields(str2) = Text3.Text Open F:VB文件ziduan.dat For Output As #2 用文件来保存最大字段数

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁