库存管理系统毕业论文.doc

上传人:文库蛋蛋多 文档编号:3943084 上传时间:2023-03-28 格式:DOC 页数:52 大小:1.26MB
返回 下载 相关 举报
库存管理系统毕业论文.doc_第1页
第1页 / 共52页
库存管理系统毕业论文.doc_第2页
第2页 / 共52页
库存管理系统毕业论文.doc_第3页
第3页 / 共52页
库存管理系统毕业论文.doc_第4页
第4页 / 共52页
库存管理系统毕业论文.doc_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《库存管理系统毕业论文.doc》由会员分享,可在线阅读,更多相关《库存管理系统毕业论文.doc(52页珍藏版)》请在三一办公上搜索。

1、摘要随着企业管理信息化的发展,网络及计算机的引入使管理跃上了一个新的发展平台。企业的各项管理都将向信息化方向扩展,仓库的管理对于企业来说尤为重要,也正是基于这个原因我把毕业设计的方向定在了企业的仓库管理上。库存管理系统是为了实现企业产品管理的系统化、规范化和自动化,从而提高企业管理效率而设计的。它完全取代了原来一直用人工管理的工作方式,避免了由于管理人员的工作疏忽以及管理质量问题所造成的各种错误,为及时、准确、高效的完成仓库管理提供了强有力的工具和管理手段。库存管理系统是一个中小型数据库管理系统,它界面美观、操作简单、安全性高,基本满足了仓库管理的要求。整个系统由基本信息、单据中心、查询统计、

2、报表打印、维护设置、帮助等模块组成。本系统是在以ACCESS作为后台数据库,以Visual Studio 2010为编程语言来开发的。库存管理系统在运行阶段,效果好,数据准确性高,提高了工作效率,同时也实现了仓库管理计算机化。关键字 :库存,管理系统,WinForm,Access 目录摘要1目录21 库存管理系统开发环境简介31.1 中文Visual Studio 2010 简介41.2 ACCESS简介52 系统可行性分析63 系统总体设计83.1 系统目标设计83.2 开发设计思想83.3 系统功能需求分析93.4 系统功能模块设计94 数据库设计114.1 数据库需求分析114.2 数据

3、库概念结构设计124.3 数据库逻辑结构设计145 系统主窗体设计185.1 创建工程项目库存管理系统185.2 创建系统主窗体185.3 创建主窗体菜单195.4 创建主窗体工具栏335.4.1 工具栏控件常用属性和事件345.4.2 设置工具栏属性355.5 设置主窗体状态栏376 系统模块设计376.1 商品信息管理模块设计376.1.1 创建新增商品信息窗体386.1.2 修改商品信息窗体386.1.3 删除商品信息窗体396.1.4 查看商品信息窗体406.2 库存管理模块设计406.2.1 进货入库窗体416.2.2 售货入库窗体416.2.3查看库存窗体426.3 退货管理模块设

4、计436.4 系统报表模块设计436.4.1进货记录窗体436.4.2 销售记录窗体446.4.3 退货记录窗体456.5 系统数据管理模块设计456.6辅助工具模块设计466.7 帮助模块设计47总结49致谢50参考文献511 库存管理系统开发环境简介本库存管理系统是在以Visual Studio 2010为编程语言,以ACCESS作为后台数据库而开发的一个数据库管理系统。下面简要介绍一下中文Visual Studio 2010和Access。1.1 中文Visual Studio 2010 简介Visual Studio 是微软公司推出的开发环境。是目前最流行的Windows 平台应用程序

5、开发环境。目前已正式发布的是9.0 版本,也就是Visual Studio 2008,而在2008年12月份,一个振奋人心的信息传来:微软公布了下一代开发工具和平台Visual Studio Team System 2010以及.NET Framework 4.0的相关信息,并透露他们将在2009年底或者2010年正式发布。正当我们兴奋之时,微软又趁热打铁,发布了Visual Studio 2010的社区技术预览版 ( Community Technology PreviewCTP)Visual Studio 2010 CTP,心急的朋友们可先到微软的官方去下载。目前RTM版的详细版本号是10

6、.0.30319.1 RTMRel; .NET Framework的详细版本号是: 4.0.30319 RTMRel。Visual Studio 2010的新特性它将是经典的一个版本,相当于当年的6.0版。而且它可以自定义开始页;新功能还包括:(1)C# 4.0中的动态类型和动态编程;(2)多显示器支持;(3)使用Visual Studio 2010的特性支持TDD; (4)支持Office ;(5)Quick Search特性;(6)C+ 0x新特性;(7)IDE增强;(8)使用Visual C+ 2010创建Ribbon界面;(9)新增基于.NET平台的语言F#;而根据微软发布的一份官方文

7、档宣称,Visual Studio 2010和.NET Framework 4.0将在下面五个方面有所创新:在一个组织中,应用程序生命周期管理(ALM)将牵涉到多个角色。但是在传统意义上,这一过程中的每个角色并不是完全平等的。Visual Studio Team System 2010将坚持打造一个功能平等、共同分担的平台以用于组织内的应用程序生命周期管理过程。 每年,业界内的新技术和新趋势层出不穷。通过Visual Studio 2010微软将为开发者提供合适的工具和框架,以支持软件开发中最新的架构,开发和部署。从Visual Studio的第一个版本开始,微软就将提高开发人员的工作效率和灵

8、活性作为自己的目标。Visual Studio 2010将继续关注并且显著地改进开发者最核心的开发体验。微软将继续投资于市场领先的操作系统,工具软件和服务器平台,为客户创造更高的价值。使用Visual Studio 2010将可以在新一代的应用平台上,为你的客户创造令人惊奇的解决方案 1.2 ACCESS简介ASSESS是一个数据库管理系统,它简单易学,一个普通的计算机用户可以很快的掌握它。ACCESS的功能也十分强大,利用它可以方便的实现对信息保存、维护、查询、统计等,而且它可以十分方便地与OFFICE其他组件交流数据,这些功能对一个普通用户来说已经足够了。本系统就是在以ACCESS作为后台

9、数据库,以Visual Studio 为编程语言为中小型企业管理仓库而开发的一个数据库管理系统。2 系统可行性分析可行性分析的任务,并不是所有问题都有简单明显的解决办法,事实上,许多问题不可能在预定的系统规模之内解决。如果问题没有可行的解,那么花费这项开发工程上的任何时间、资源、人力和经费都是无谓的浪费。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。必须记住,可行性研究的目的不是解决问题,而是确定问题是否值得去解。怎样达到这个目的呢?当然不能靠主观猜想,而只能靠客观分析。必须分析几种主要的可能解法的利弊,从而判断原定的系统目标和规模是否现实,系统完成后所能带来的效益是

10、否大到值得投资开发这个系统的程度。因此,可行性研究实质上是要进行一次大大压缩简化了的系统分析和设计的过程,也就是在较高层次上以较抽象的方式进行的系统分析和设计的过程。所以从以上的分析原则来看,我所设计的仓库信息管理系统是一个规模不太大的系统,但是目标明确,清晰的描述了对目标系统的一切限制和约束。本系统几乎在所有的企业、公司使用,当然它需要进一步的完善和更新。在使用过程中,要看它能不能带来效益,毕竟在现今社会效率是第一位的。从现实看,这还是有一定的实用价值的,从另一个角度看,现实社会发展飞速,尊重科技势在必行,因此这也是开发本系统的一个非常重要的原因。21世纪是计算机的时代,它必然取代一部分人的

11、工作,高科技的监控系统进入社会生活的方方面面是发展的趋势。本设计从一下三个方面进行可行性研究:1. 技术可行性。本设计“库存管理系统”是为企业仓库管理人员开发的。鉴于本人在上学期数据库课程设计中已用Visual Studio 2010Access开发过网上图书销售管理信息系统,而且通过三个月毕业实习中的学习和实践,对开发管理信息系统又有了新的认识和提高,使自己在开发管理信息系统方面的技术更加成熟。由于本设计最重要体现的是实用性,所以,通过大量的社会调查和分析,结合自己现有的技术水平加上导师的指导,还是能按期完成本毕业设计。 2. 经济可行性。成本方面:由于本毕业设计属于软件技术教学的最后一个环

12、节,所以人力消耗免费,资源学校提供,指导老师义务指导。所以成本计算只需计算开发期间开发者的生活消费,学校资源的消耗,所以开发本软件的成本是非常低的。效益方面:为企业开发一个完整、合理的仓库管理系统,可大大节余人力,以前需要多人干的工作,使用本系统只需一个人或几个人就能完成,且工作量和劳动强度大大降低。所以开发本软件可以为社会带来很好的经济效益。 从以上分析看开发本软件在经济上是可行的。 3. 操作可行性。本软件是为企业仓库的管理者开发的,所有本软件的用户对象是企业仓库的工作人员,由于本软件要设计成友好的界面,写出详细的使用说明,用户只需懂得简单的计算机操作知识,就能自由应用本软件。 所以从以上

13、几个方面的分析来看,开发本软件是完全可行的。3 系统总体设计3.1 系统目标设计系统开发的总体任务是实现企业产品管理的系统化、规范化和自动化,从而达到提高企业管理效率的目的。3.2 开发设计思想库存管理主要是企业各种商品的管理。进货时经检查合同确认为有效托收后,进行验收入库,填写入库单,进行入库登记。企业各个部门根据需要提出产品请求,计划员根据整个企业的需求开出产品出库单,仓库管理人员根据出库单核对发放产品。根据需要按照月进行统计分析,产生相应报表。库存管理的特点是信息处理量比较大,所管理的产品种类繁多,而且由于入库单、出库单、盘点单等单据发生量特别大,关联信息多,查询和统计的方式各不相同。因

14、此在管理上实现起来有一定的困难。在管理的过程中经常会出现信息的重复传递;单据、报表种类繁多,各个部门管理规格不统一等问题。 在本系统的设计过程中,为了克服这些困难,满足计算机管理工作的需要,我们采取了下面的一些原则。统一各种原始单据的格式,统一报表的格式。删除不必要的管理冗余,实现管理规范化、科学化。程序代码标准化,软件统一化,确保软件的可维护性和实用性。界面尽量简单化,做到实用、方便,尽量满足企业中不同层次员工的需要。建立操作日志,系统自动记录所进行和各种操作。3.3 系统功能需求分析系统开发的总体任务是实现各种信息的系统化、规范化和自动化。系统功能分析是在系统开发的总体任务的基础上完成。本

15、库存管理系统需要完成功能主要有:商品信息管理:新增商品信息、修改商品信息、删除商品信息、查看商品信息。库存管理:进货入库、售货入库、查看库存、库存预警、错误库存管理。退货管理:商品退货。统计报表:进货记录、销售记录、退货记录。系统数据管理:数据库操作。辅助工具:系统计算器、启动Word、启动Excel。3.4 系统功能模块设计 在系统功能分析的基础上,考虑到Visual Studio 2010程序编制的特点,得到如图3-1所示的系统功能模块图。库存管理系统商品信息管理新增商品信息修改商品信息删除商品信息查看商品信息进货入库售货入库查看库存库存预警错误库存管理商品退货销售记录进货记录退货记录数据

16、库操作系统计算器启动Word启动Excel库存管理退货管理系统数据管理辅助工具统计报表图3-1 系统功能模块图。4 数据库设计4.1 数据库需求分析用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。通过对库存管理的内容和数据流程分析,设计数据项和数据结构如下:用户信息,包括的数据项有编号、用户名、用户密码、性别、电话、地址等。进货信息,包括的数据项有编号、条形码、商品名称、规格、颜色、进货数量、进货时间、供应商、操作员等。库存状况信息,包括的数据项有

17、编号、商品名称、条形码、库存数量、规格、颜色、预警数量等。 商品信息,包括的数据项有编号、商品名称、条形码、库存数量、规格、颜色、备注等。退货信息,包括的数据项有编号、条形码、商品名称、规格、颜色、退货数量、退货时间、折损费用、操作员等。销售信息,包括的数据项有编号、条形码、商品名称、规格、颜色、销售数量、销售时间、操作员等。颜色信息,包括的数据项有颜色名称等。4.2 数据库概念结构设计得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体结构,以及他们之间的关系,为以后的逻辑结构设计打下基础。根据上面的设计规划出的实体有:用户信息实体、进货信息实体、库存状况信息实体、商品信息

18、实体、退货信息实体、销售信息实体图和颜色信息实体图。各个实体具体的描述E-R图如下:用户信息实体E-R图如图4-2所示。用户信息实体编号用户名用户电话用户地址图4-2 用户信息实体E-R图进货信息实体E-R图如图4-3所示。进货信息实体编号条形码供应商操作员图4-3进货信息实体E-R图库存状况信息实体E-R图如图4-4所示。库存状况信息实体编号商品名颜色预警数量商品名图4-4 库存状况信息实E-R图商品信息实体E-R图如图4-3所示。商品信息实体编号颜色备注商品名图4-5 商品信息实体E-R图退货信息实体E-R图如图4-6所示。退货信息实体编号条形码折损费用操作员图4-6 退货信息实体E-R销

19、售信息实体E-R图如图4-7所示。销售信息实体编号条形码销售时间操作员图4-7 调拨信息实体E-R4.3 数据库逻辑结构设计 现在需要将在上面的数据库概念结构转化为ACCESS数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。仓库管理信息系统数据库中各个表格的设计结果如下面表格所示。每个表格所示在数据库中的一个表。表4-1 用户信息表字段名称数据类型字段大小可否为空编号数字长整型不可用户名文本64不可用户密码文本自动不可用户性别文本50不可用户电话数字长整型不可用户地址文本50不可表4-2 进货表字段名称数据类型字段大小可否为空编号数字长整型不可条形码文本50不可商品名称文本255不可规

20、格数字长整型不可颜色文本50不可进货数量数字长整型不可进货时候日期/时间自动不可供应商文本50不可操作员文本50不可表4-3 库存状况信息表字段名称数据类型字段大小可否为空编号数字长整型不可商品名称文本50不可条形码数字长整型不可库存数量数字长整型不可规格文本50不可颜色文本50不可预警数量数字长整型不可表4-4 商品单信息表字段名称数据类型字段大小可否为空编号数字长整型不可条形码数字长整型不可规格文本50不可颜色文本50不可备注文本50不可表4-5 退货表字段名称数据类型字段大小可否为空编号数字长整型不可条形码数字长整型不可商品名称文本50不可规格文本50不可颜色文本50不可退货数量数字长整

21、型不可退货时间日期/时间自动不可折损费用货币长整型不可操作员文本50不可表4-6 销售表字段名称数据类型字段大小可否为空编号数字长整型不可商品名称文本50不可规格文本50不可颜色文本50不可销售数量数字长整型不可销售时间日期/时间自动不可操作员文本50不可表4-6 颜色表字段名称数据类型字段大小可否为空编号数字长整型不可颜色名称文本50不可5 系统主窗体设计5.1 创建工程项目库存管理系统打开Visual Studio 后,单击File - New Project 菜单,在工程模板中选择Standard ExE,Visual Basic将自动产生一个Form窗体,属性都是缺省设置。这里我们删除

22、这个窗体,单击File-Save Projiect菜单,将这个工程项目命名为商品库存管理系统。5.2 创建系统主窗体Visual Studio 创建的应用程序可以是SDI(单文档界面)和MDI(多文档界面)。在SDI的程序中,每个窗体之间是独立的。而MDI的程序中,有一个窗体是主窗体,可以包含其他窗体,他的类型是MDI Form 。本设计采用多文档界面,这样可以使程序更加美观、整齐有序。单击工具栏中的ADD MDI Form 按钮,生成一个窗体。窗体的属性设置见表51。表51 主窗体属性设置 属性 属性取值NameFrmMainCaption库存管理系统StartUpPositionCente

23、rScreenWindowStateMaximized主窗体界面设计如图5-1所示。图51 系统主窗体5.3 创建主窗体菜单 熟悉Windows下应用程序的用户对菜单一定有比较深的印象。所谓菜单,即是指应用程序中为用户提供的一组命令,这些命令出现在应用程序界面的顶部。每项菜单有多项子菜单,具有一定的专门功能,用户容易通过主菜单来访问其下的子菜单。增加菜单可以增强应用程序的功能。下面将介绍菜单及菜单的编辑和使用。1. 菜单简介 菜单栏在窗体栏的标题栏下面,包含一个或多个菜单标题。当单击一个菜单标题,包含菜单项目的列表就被拉下来。菜单项可以包含命令、分隔条和子菜单标题。用户看到的每个菜单项和在“M

24、enu Editor”中定义的一个菜单控件相对应。 为了使应用程序简单好用,应该将菜单相按功能进行分组。菜单控件使一个对象,与其他对象一样,它具有定义它的外观与行为的属性。在设计或运行时可以设置Caption 属性、Enabled和Visible属性、Checked属性以及其他属性。菜单控件只包含一个事件,即Click事件,当用鼠标或键盘选中该菜单控件时,将调用该事件。2. Visual Studio菜单编辑器 菜单编辑器可以创建新的菜单和菜单栏,也可以向现存的菜单中增加新的命令、用自己的命令替代现存的菜单命令、产生新的菜单和菜单栏,改变和删除现存菜单和菜单栏。 要打开菜单编辑器,在“Tool

25、s”菜单中选择“Menu Editor”选项。或击鼠标右键,选择弹出式菜单中的“Menu Editor”菜单编辑器的基本属性如下:Caption出现在控件上的文本。 Name代码中用来引用菜单控件的名字。 shortcut可以访问菜单的键盘按键组合。以上介绍了菜单编辑器的基本情况和属性,接下来将来介绍利用菜单编辑器创建菜单的过程。(1) 选取待创建菜单的窗体,激活该窗体。(2) 从菜单栏的“Tools”菜单中,选取“Menu Editor”并单击(或在“工具栏”上单击“Menu Editor”按钮)。(3) 在菜单编辑器的“Caption”文本框中,为第一个菜单标题键入希望在菜单栏上显示的文本

26、。如果希望某一字符成为该菜单项的访问键,也可以在该字符前加上一个(&)字符。在菜单中,这一字符会自动加上一条下划线。(4) 在菜单编辑器的“Name”文本框中,键入将用来在代码中引用该菜单控件的名字。命名菜单控件的规则如下:(a) 菜单中项目名称应当唯一,但不同菜单中相似动作项目可以重名。(b) 每一个项目名称应当有一个用键盘选取命令的唯一的记忆访问字符。访问字符通常是菜单标题的第一个字母;每个菜单标题不能用同一个字符。(c) 如果命令在完成之前还需要附加信息,则在其名称后面应当有一个省略号()。(5) 单击向左或向右箭头按钮,可以改变该控件的缩进级。(6) 如果需要,还可以设置控件的其他属性

27、。(7) 创建新的菜单控件时,选取“Next”命令。(8) 单击“Insert”可以在现有的控件之间增加一个菜单控件。(9) 单击向上与向下的箭头按钮,可以在现有菜单控件之中移动控件。(10) 菜单控件创建好后,选取“OK”可关闭菜单编辑器。创建的菜单标题将显示在窗体上。在设计时,单击一个菜单标题可下拉其相应的菜项。创建分隔符,如果在设计的菜单中创建分隔符条,只需在想要分隔开来的菜单项之间插入一个菜单控件。单击左、右箭头按钮使新菜单项缩进到与它要隔开的菜单项同级。然后在“Caption”文本框中键入一个连字符()。设置“Name”属性。“OK”,关闭菜单编辑器。创建赋值访问键和快捷键 为了提高

28、应用程序的性能,为用户提供最方便、快捷的操作,可以定义菜单的访问键和快捷键,改进键盘对菜单命令的访问。 访问键,要在菜单编辑器中给菜单控件赋值访问键,先选取要赋值访问键的菜单项,在该菜单项“Caption”框中,要在作为访问键字符的前面键入一个(&)字符。快捷键,快捷键提供了一种键盘单步的访问方法,按下时会立刻运行一个菜单项。快捷键的赋值包括功能键与控制键的组合,如CTRL+F1键或CTRL+A键。他们出现在菜单中相应菜单项的右边。 “菜单”中的各个“子菜单”的程序代码如下:namespace ZG_SellInfo public partial class Home : Form publi

29、c Home() InitializeComponent(); this.SizeChanged+=new System.EventHandler(this.Home_SizeChanged); this.notifyIcon1=new System.Windows.Forms.NotifyIcon(ponents); BaseClass me; myClass.simpleBase me1; private void Home_Load(object sender, EventArgs e) 待添加的隐藏文字内容1 if (proUser()=true) 系统维护ToolStripMenuI

30、tem.Enabled = true; 首要任务ToolStripMenuItem.Enabled = false; 测试菜单ToolStripMenuItem.Enabled = false; 退货管理ToolStripMenuItem.Enabled = false; 统计报表ToolStripMenuItem.Enabled = false; 系统数据管理ToolStripMenuItem.Enabled = false; me1 = new myClass.simpleBase(); me = new BaseClass(); if (Program.name = ) MessageB

31、ox.Show(非法登录!拉出去枪毙10分钟!); Application.Exit(); else if (proUser() = false) string strsql = select * from 库存表 where 库存数量 0) MessageBox.Show(有商品低于预警数量,请查看。); label3.Text = Program.name; this.timer2.Start(); private Boolean proUser() me = new BaseClass(); string str = select * from userInfo where loginN

32、ame=+Program.add.ToString()+; DataTable dt = new DataTable(); dt = me.readData(str); if (dt.Rows0userPower.ToString() = -1) return true; else return false; private void timer1_Tick(object sender, EventArgs e) label4.Text = DateTime.Now.ToString(); private void 进货入库ToolStripMenuItem_Click(object send

33、er, EventArgs e) 进货入库 fm = new 进货入库(); fm.ShowDialog(); private void 系统计算器ToolStripMenuItem_Click(object sender, EventArgs e) System.Diagnostics.Process.Start(calc.exe); private void 启动WordToolStripMenuItem_Click(object sender, EventArgs e) System.Diagnostics.Process.Start(WINWORD.EXE); private void

34、 启动ExcelToolStripMenuItem_Click(object sender, EventArgs e) System.Diagnostics.Process.Start(excel.exe); Private void 系统数据备份恢复ToolStripMenuItem_Click(object sender, EventArgs e) frmBakup fm = new frmBakup(); fm.ShowDialog(); private void Home_SizeChanged(object sender, EventArgs e) if (this.WindowSt

35、ate = FormWindowState.Minimized) this.Hide(); this.notifyIcon1.Visible = true; private void 返回主界面ToolStripMenuItem_Click(object sender, EventArgs e) this.Visible = true; this.WindowState = FormWindowState.Normal; this.notifyIcon1.Visible = false; private void notifyIcon1_MouseDoubleClick(object send

36、er, MouseEventArgs e) this.Visible = true; this.WindowState = FormWindowState.Normal; this.notifyIcon1.Visible = false; private void 退出ToolStripMenuItem_Click(object sender, EventArgs e) Application.Exit(); private void 直接退出ToolStripMenuItem_Click(object sender, EventArgs e) Application.Exit(); priv

37、ate void 关于软件ToolStripMenuItem1_Click(object sender, EventArgs e) AboutUS fm = new AboutUS(); fm.ShowDialog(); private void checkBox1_CheckedChanged(object sender, EventArgs e) if (checkBox1.Checked = true) this.TopMost = true; else this.TopMost = false; private void timer2_Tick(object sender, Event

38、Args e) this.label5.Text = this.label5.Text.Substring(1, this.label5.Text.Count() - 1) + this.label5.Text.Substring(0, 1); private void Home_FormClosing(object sender, FormClosingEventArgs e) if (Program.name != ) if (MessageBox.Show(你真的要退出该系统吗?, 温馨提示, MessageBoxButtons.OKCancel, MessageBoxIcon.Ques

39、tion) = DialogResult.OK) e.Cancel = false; else e.Cancel = true; private void 售货出库ToolStripMenuItem_Click(object sender, EventArgs e) 商品出库 fm = new 商品出库(); fm.ShowDialog(); private void 商品退货ToolStripMenuItem_Click(object sender, EventArgs e) 退货管理 fm = new 退货管理(); fm.ShowDialog(); private void 添加商品颜色Tool

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

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号