1、仓库管理系统目 录摘要1一绪论11. 1管理信息系统的概述11.2数据库应用系统开发简介21.3仓库管理系统21.3.1国内外同类管理软件的研究现状与发展趋势21.3.2仓库管理系统研究背景与意义2二仓库管理系统设计分析32.1需求分析32.2模块划分4三 数据库设计43.1 设计的数据项和数据结构如下43.2 数据库概念结构设计53.3数据库逻辑结构设计73.4 数据库和数据库表创建语法8四 详细设计(代码)104.1 系统登陆窗体模块的设计104.2 货品入库窗体模块的设计114.3 货品出库窗体模块的设计 124.4 货品入库查询窗体模块的设计 134.5 货品出库查询窗体模块的设计 1
2、54.6 用户注销窗体模块的设计 16五 程序的实现175.1 系统登陆的实现175.2 货品入库的实现185.3 货品入库查询的实现 195.4 货品出库的实现 205.5 货品出库查询的实现 205.6 用户密码修改的实现 20六 课程设计总结21七 参考文献 21摘要 随着现代工业的发展,计算机信息管理系统越来越受到企业重视。本文主要分析了仓库管理系统的一些基本功能和组成情况,包括系统的需求分析、系统结构,功能模块划分以及数据库模式分析等,重点对应用程序的实际开发实现作了介绍。达到了数据的一致性和安全性,且应用程序功能完备,符合了仓库管理系统作为典型的信息管理系统(MIS)的要求。同时简
3、单介绍了Visual Basic编程环境和Access数据库管理系统的功能特点,仓库管理系统是企业物流管理中不可或缺的一部分。一绪论仓库管理系统是一个企事业单位不可缺少的一部分,它的内容对于企业的决策者和管理者来说都是至关重要的,因此,仓库管理系统应该能够为用户提供充足的信息和快捷的查询手段,但一直以来人们使用传统的人工方式管理仓库,这种管理方式存在着许多缺点,诸如效率低,保密性差等,而且时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学不断发展,其强大的功能已经被人们深刻认识,它已经进入了人类社会的各个领域并发挥着越来越重要的作用。
4、作为计算机应用的一部分,使用计算机对产品仓库信息进行管理,具有着人工管理无法比拟的优点,它检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等,可减少更多的人力物力,这些都能够极大地提高货品仓库的管理效率,也是企业仓库管理科学化、正规化,与世界接轨的重要条件。因此,开发一个仓库管理系统是很有必要的,具有其特有的技术意义和管理意义。 1.1仓库管理系统的概述仓库管理系统是在管理科学、系统科学、计算机科学等的基础上发展起来的综合性边缘科学。在21世纪信息高速发展的时代中,仓库管理系统具有很重要的作用,它的预测和辅助决策的功能,即利用现代管理的决策和支持。仓库管理系统是一个人机系统,同
5、时它又是一个一体化集成系统。仓库管理系统是信息系统的一个子系统,它以计算机技术、通讯技术和软件技术为技术基础,同时将现代管理理论、现代管理方法及各级管理人员融为一体,最终为某个组织整体的管理与决策服务,是由人和计算机组成的能进行管理信息的收集、传递、存储、加工、维护和使用的系统。仓库管理系统的基本结构可以概括为四大部件,即信息源、信息处理器、信息用户和信息管理者。因此,一个成功的管理信息系统应该具有可靠的硬件、实用的软件、强有力的现代化管理水平。具体讲,管理信息系统的三大支柱是:计算机网络、数据库和现代化的管理,这三打支柱称为管理信息系统的扩展部件。1.2数据库应用系统开发简介在数据库应用系统
6、开发之前,对开发数据库的基本概念应当了解,对数据库的结构、开发数据库应用程序的步骤、开发体系及方法都应当有相当清晰的了解和认识。数据库应用系统开发的目标是建立一个满足用户长期需求的产品。开发的主要过程为:理解用户的需求,然后,把它们转变为有效的数据库设计。把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用。1.3仓库管理系统仓库作为一总货品资源的集散地,货品的种类繁多,包含很多的信息数据的管理。据调查得知,以前仓库进行信息管理的方式主要是基于文本、表格等纸介质的手工处理,对于货品的出入库情况的统计和核实等往往采用对账本的人工检查,对管理者的管理权限等不受约束,任何人都可查看,这
7、样容易引起资料外泄。另外,数据信息处理工作量大,容易出错,由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统、规范的信息管理手段。而且,一般的存储情况是记录在账本上的,仓库的工作人员和管理员也只是当时记得比较清楚,时间一长,如果再要进行查询,就得在众多的资料中翻阅查找了,这样造成费时、费力,如要对很长时间以前的货品进行更改就更加困难了。因此,很有必要建立一个仓库管理系统,使货品管理工作规范化,系统化,程序化。提高信息处理的速度和准确性。二仓库管理系统设计分析仓库管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完
8、整性强、数据安全性好的数据库。而对于后者则要求应用程序功能完备,易使用等特点。 2.1 需求分析:通过对系统的终端用户、生产商和销售商进行分析,可以得到本系统典型的文本需求说明,其中的关键部分如下:基本信息是仓库管理系统得以运行的数据基础。基本信息包括产品信息、仓库信息、生产商信息和销售商的信息。用户可以通过界面来随时添加、修改和查询这些信息。出入库管理是仓库管理系统的核心部分,实现产品的出入库登记。产品出入库登记中的产品信息、仓库信息、生产商信息和销售商的信息都是从已有的信息中通过下拉列表选择的,这样可以减少出错,提高效率;如果在基本信息中找不到相关信息即时进行添加。根据用户需求,该系统应该
9、实现以下功能:1)基本信息(包括产品信息、仓库信息、生产商和销售商信息)的添加、修改和查询。2)填写基本信息提交信息填写3)修改基本信息提交信息修改4)选择填写查询条件提交查询查询结果显示5)产品入库登记、修改和查询。6)填写入库产品信息提交入库登记7)修改入库登记提交信息修改8)选择填写查询条件提交查询查询结果显示9)品出库登记、修改和查询。10)出库选择填写出库产品信息提交出库登记11)修改出库登记提交信息修改12)选择填写查询条件提交查询查询结果显示13)产品库存统计信息查询14)选择查询条件填写查询内容提交查询查询结果显示15)用户和仓库管理员注册16)登录输入用户名输入密码注册17)
10、用户修改密码和仓库管理员添加用户。28)输入旧密码输入新密码确认新密码提交密码修改29)输入新用户名输入用户密码确认密码设置用户权限提交用户添加2.2模块划分2.2.1系统功能模块设计2.2.2数据流程图三 数据库设计3.1设计的数据项和数据结构如下: 设备代码信息,包括的数据项有设备号、设备名称。现有库存信息,包括的数据项有设备、现有数目、总数目、最大库存和最小库存。设备使用信息,包括的数据项有使用的设备、使用部门、数目、使用时间和出库时状态等。设备采购信息,包括的数据项有采购的设备、采购员、供应商、采购数目和采购时间等。设备归还信息,包括的数据项有归还设备、归还部门、归还数目、归还时间和经
11、手人等。设备需求信息,包括的数据项有需求的部门、需求设备、需求数目和需求时间等。3.2数据库概念结构设计本实例根据上面的设计规划出的实体有库存实体、入库实体、出库实体、采购实体、还库实体和需求实体,各实体的E-R图及其关系描述如下:图3-2-1 库存实体E-R图 图3-2-2 入库实体E-R图 图3-2-3 出库实体E-R图图3-2-4 部门需求实体E-R图图3-2-5 还库实体E-R图图3-2-6计划采购实体E-R图图3-2-7实体和实体之间的关系E-R图3.3数据库逻辑结构设计在上面的实体以及实体之间的关系的基础上,形成数据库中的表格以及各个表格之间的关系。仓库管理系统数据库中的各个表格的
12、设计结果如下面的几个表格所示。每个表格表示在数据库中的一个表。(1)供应商表:列名数据类型长度是否为主键可否为空名称字符型50YES不能为空联系方式字符型50NO可为空地址字符型50NO可为空供货记录字符型50NO可为空(2)货物表:列名数据类型长度是否为主键可否为空名称字符型20NO不能为空编号字符型8YES可为空供应商字符型50NO可为空供应商电话字符型15NO可为空入库数量数值型20NO可为空价格数值型10NO可为空采购员字符型20NO可为空类型字符型20NO可为空剩余数量数值型20NO可为空(3)仓库表列名数据类型长度是否为主键可否为空名称字符型50YES不可为空地址字符型50NO可为
13、空现有库存字符型50NO可为空设备还库字符型50NO可为空设备采购字符型50NO 可为空(4)现有库存表:列名数据类型长度是否为主键可否为空设备号数值型20YES不能为空现有库存数值型20NO可为空最大库存数值型20NO可为空最小库存数值型20NO可为空总数数值型20NO可为空(5)设备还库表:列名数据类型长度是否为主键可否为空设备号数值型20YES不能为空还库时间日期型8NO不能为空仓库管理员字符型50NO可为空归还数量数值型20NO可为空归还人字符型10NO可为空(6)设备采购表:列名数据类型长度是否为主键可否为空设备号数值型20NO不能为空现有库存数值型20NO可为空总库存数值型20NO
14、可为空最大库存数值型20NO可为空购买数量数值型20NO可为空供应商字符型20NO不能为空价格字符型10NO可为空计划采购时间日期型8YES可为空(7)管理员表列名数据类型长度是否为主键可否为空名字字符型50NO可为空联系方式字符型20NO可为空家庭住址字符型50NO可为空工作证号字符型20YES不可为空权限字符型20NO可为空四 详细设计4.1 系统登陆窗体模块的设计private void c_form_Load(object sender, System.EventArgs e) string connstr=Persist Security Info=False;Integrated
15、Security=SSPI;database=ckgldata;server=localhost;Connect Timeout=30; conn=new SqlConnection(connstr); try conn.Open(); catch(Exception ee1) MessageBox.Show(ee1.Message); Application.Exit(); login login1=new login(); login1.ShowDialog(); 4.2 货品入库窗体模块的设计private void jcdl_Load(object sender, System.Eve
16、ntArgs e) c_rq.Value=DateTime.Now; c_form.mydata.Tables.Add(jcmx1); c_form.mydata.Tablesjcmx1.Columns.Add(原料编号); c_form.mydata.Tablesjcmx1.Columns.Add(原料名称); c_form.mydata.Tablesjcmx1.Columns.Add(数量); c_form.mydata.Tablesjcmx1.Columns.Add(单价); c_form.mydata.Tablesjcmx1.Columns.Add(金额); c_form.mydata
17、.Tablesjcmx1.Columns.Add(日期); c_form.mydata.Tablesjcmx1.Columns.Add(备注); grid1.DataSource=c_form.mydata.Tablesjcmx1.DefaultView; showdm(select bh,mc from yldm order by bh desc); 4.3 货品出库窗体模块的设计 private void ccdl_Load(object sender, System.EventArgs e) c_rq.Value=DateTime.Now; c_form.mydata.Tables.Ad
18、d(ccmx1); c_form.mydata.Tablesccmx1.Columns.Add(原料编号); c_form.mydata.Tablesccmx1.Columns.Add(原料名称); c_form.mydata.Tablesccmx1.Columns.Add(数量); c_form.mydata.Tablesccmx1.Columns.Add(单价); c_form.mydata.Tablesccmx1.Columns.Add(金额); c_form.mydata.Tablesccmx1.Columns.Add(日期); c_form.mydata.Tablesccmx1.Co
19、lumns.Add(备注); grid1.DataSource=c_form.mydata.Tablesccmx1.DefaultView; showdm(select a.bh,b.mc from kc a,yldm b where a.bh=b.bh order by a.bh desc); 4.4 货品查询窗体模块的设计 private void jccx_Load(object sender, System.EventArgs e) if(_woot=1) this.Text=进仓明细查询; jczd=select a.id as 自动编号,a.bh as 原料代码,b.mc as 原
20、料名称,a.sl as 数量,a.dj as 单价,a.sl*a.dj as 金额,a.rq as 进仓日期,a.user1 as 操作员,a.bz as 备注from jcmx a,yldm b; else this.Text=出仓明细查询; jczd=select a.id as 自动编号,a.bh as 原料代码,b.mc as 原料名称,a.sl as 数量,a.dj as 单价,a.sl*a.dj as 金额,a.rq as 出仓日期,a.user1 as 操作员,a.bz as 备注from ccmx a,yldm b; string sqlstr=jczd+ where a.bh
21、=b.bh+sqlpx; c_tj1.SelectedIndex=0; c_tj2.SelectedIndex=0; i_tj2.SelectedIndex=0; showdb(sqlstr); 4.5 货品代码维护窗体模块的设计private void yldmwh_Load(object sender, System.EventArgs e) showdb(); t_bh.DataBindings.Add(Text,c_form.mydata,yldm.原料代码); t_mc.DataBindings.Add(Text,c_form.mydata,yldm.原料名称); t_dj.Data
22、Bindings.Add(Text,c_form.mydata,yldm.参考单价); t_bz.DataBindings.Add(Text,c_form.mydata,yldm.备注); 4.6用户注销窗体模块的设计private void yhgl_Load(object sender, System.EventArgs e) showdb(); if(c_form.mydata.Tablesyh1.Rows.Count!=0) bdel.Enabled=true; bedit.Enabled=true; else bdel.Enabled=false; bedit.Enabled=fal
23、se; 五 程序的实现5.1 系统登陆的实现5.2 货品入库的实现5.3 货品入库查询的实现5.4 货品出库的实现5.5 货品出库查询的实现 5.6 用户密码修改的实现六 课程设计总结经过一个多星期的努力,课程设计基本完成了。在整个课程设计的实践中,我学到很多有用的知识,也积累了不少宝贵的开发经验。比如用ADO操作数据库,SQL语句的应用等。本设计通过自己的努力,基本满足了仓库管理的基本需要,实现了用户使用的方便以及管理员管理的方便,在界面上力求做到简单实用,在操作方面尽量做到满足用户使用的习惯,但由于自己的水平有限和时间的不足,在很多方面还不完善,有些功能没有在全局上把握好,比如一些功能函数可以在一个文件中定义,具体页面需要用到再直接引用,SQL语句的执行效果也存在效率不高的问题,关于图书管理的所有操作集中在一个页面实现,出现了一些混淆,程序更改,测试时很不好等。在今后的学习当中将继续完善此系统,使其功能更加强大,满足用户的更多需求。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1