仓库管理系统实训报告.docx
《仓库管理系统实训报告.docx》由会员分享,可在线阅读,更多相关《仓库管理系统实训报告.docx(87页珍藏版)》请在冰点文库上搜索。
![仓库管理系统实训报告.docx](https://file1.bingdoc.com/fileroot1/2023-4/30/021ee271-42a8-48d1-9b1d-7eac472f706b/021ee271-42a8-48d1-9b1d-7eac472f706b1.gif)
仓库管理系统实训报告
天津理工大学华信软件学院
实训报告
姓名张先荣
学号20114837
专业领域软件工程(.Net方向)
指导教师赵威孟繁静
担当项目组长
2014年11月14日
第一章系统概述
1.1今晚房产系统概述
1.1.1项目背景
近年来,Internet技术得到迅速的发展,已经成为计算机产业的一个技术热点。
促成Internet高速发展的因素之一就是Web技术。
Web技术由最初的静态HTML发展到动态网页技术DHTML,CGI(CommandGatewayInterface),脚本语言与ASP(ActiveServerPages)后来居上,并且大有取代CGI的趋势。
Web已经不再局限于仅仅提供大量的信息服务,Web技术的发展使得那些具有交互动态页面、有条理的数据库查询、丰富信息内容的页面成为最吸引人的网页。
浏览Web有着执行Windows程序一样的感觉和操作性。
随着Internet技术的发展,它已经成为一种操作平台,为用户提供强大的服务,例如网上购物,网上电子商务,社会信息数据库服务等。
作为计算机发展最迅速的领域之一的数据库技术,已经形成了一整套独有的理论,并广泛地应用于人们的生产和生活中。
数据库技术与网站的结合是当今Web技术的一个热点。
有了数据库的支持,可以扩展网页的功能,可以方便地设计出交互式页面,可以构造功能强大的后台管理系统,可以为网站的更新、维护提供极大的方便。
因此,作为网络开发者或管理者,数据库知识是必不可少的。
在当前社会,信息已成为一种隐型的财富,人们对信息的需求再也不是局限于单纯的电视、报纸等大众途径。
随着Internet在中国的发展日新月异,人们在日常生活中也越来越多地使用这项新技术来为自己的工作和生活服务,人们通过网络来获取信息的需求越来越大。
基于此种考虑,我做了今晚网房产信息发布系统,该系统能够实现在线更新最新新闻、设置新闻分类导航等功能,此外,网站管理员也可在线对后台进行管理,例如新闻的修改、删除等操作,以保证新闻的及时、准确性。
由于篇幅有限,本人不能在此做一一详细的说明。
1.1.1开发意义
现阶段我国已经步入了市场经济时期,随着网络技术的飞速发展,Internet用户的数量也与日俱增,许多公司及企业都将目光投向了网络这个商机无限的领域,许多公司以在其他网站加入广告或建立公司网站的形式来吸引更多的顾客,而新闻发布系统是几乎所有网站都不可或缺的一个重要组成部分,有人说,“现代社会,信息就是财富!
”所以说本课题的研究在信息交流领域有其一定的价值。
综上所述,本课题的研究对于了解网络编程、构建个人或商业网站都有较大的帮助,是步入网络时代必不可少的组成部分。
毕业实习是软件工程专业实践教学计划中的重要组成部分,是毕业设计的基础和准备。
主要目标是培养学生分析与解决问题的能力,为最终完成毕业设计做好铺垫,同时也可使我们毕业后能胜任与本专业有关的相关工作。
培养我们综合运用所学的软件工程专业的基础理论、基本技能和专业知识分析问题和解决问题的能力,培养学生的专业素质、应用科学的思维方法和计算技巧,使我们了解科学研究工作的一般程序和方法,撰写科技论文的能力;培养大家直接参与(进行)科研活动、科研文献和资料的调研,对研究工作以及相关的研究结果分析、综合的能力;提高我们的实践能力、科研能力和解决本专业实际问题的能力,培养大家积极的创新精神、严肃认真的科学态度和严谨求实的工作作风,增强我们的综合素质以及对毕业后工作岗位的适应能力;重点掌握一些软件工程技术的发展前沿。
1.2仓库管理系统概述
1.2.1项目背景
仓储是现代物流的一个重要组成部分,在物流系统中起着至关重要的作用,是厂商研究和规划的重点。
高效合理的仓库管理系统可以帮助厂商加快物资流动的速度,降低成本,保障生产的顺利进行,并可以实现对资源有效控制和管理,现代物流的发展需要现代化的仓库管理系统,仓储的发展经历了不同的历史时期和阶段,从原始的人工仓库管理到现在的智能仓库管理系统,通过各种高新技术对仓储的支持,仓储的效率得到了大幅度的提高。
但是,目前很多仓库的管理工作还停留在纸质记录的原始方式上。
由于产品的种类多、数量多,将产品准确地分门别类、快速检索并对供销商进行联系,手工进行非常困难,往往是终于查到了产品的信息,但此产品没有库存或库存不足,因此检索速度较慢、效率低。
这样的操作过程不但繁琐,而且在这一系列的操作中,无论哪一步出了错误,对工作的正常进行都有很大的影响。
1.2.1开发意义
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对仓库信息进行管理,具有手工管理所无法比拟的优点.例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
仓库管理是与我们日常生活息息相关的问题,随着改革开放的不断深入,经济飞速的发展,企业要想生存、发展,要想在激烈的市场竞争中立于不败之地,没有现代化的管理是万万不行的,仓库管理的全面自动化、信息化则是其中极其重要的部分。
仓库管理信息系统正是基于这样的需求背景下研制开发的。
本文按照软件工程思想和管理信息系统的开发步骤,设计并实现了一个仓库管理信息系统。
以系统开发过程为主线,介绍了系统从需求分析,逻辑设计,总体设计,详细设计以及系统测试、实施各阶段的主要内容和成果,包括系统结构图、业务流程图、数据流程图、E-R模型、物理表实现及其关系、功能模块、界面设计等等。
最后对实现系统的优缺点进行了分析,提出了今后进一步完善系统的方向和方法。
设计实现的管理系统能够正确有效地完成仓库管理的日常入库出库等工作,极大提高了管理工作的效率和正确性,并能够根据需求进行灵活的查询,完成数据查询等功能;系统与数据库管理系统结合,提供了功能较为强大的数据查询功能,防止了越权操作、误操作,;系统界面友好,操作简单,效率高易掌握。
仓库管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
本人所开发的仓库管理系统,重点着眼于存物与取物的系统性便利管理。
这次我做的仓库管理系统主要技术应用到了Linq以及SQLsever2008。
第二章WINFORM项目仓库管理系统
2.1系统需求分析
2.1.1系统规划
作为一个信息管理系统,在设计时首先要充分考虑问题的可行性。
依据现有的设备及人员安排分析该管理系统具有可行解。
其次是听取用户的需求,针对用户需求做出具体实施方案,对系统实现的功能、性能、系统要求的运行环境提出完整、准确、清晰、具体的要求。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对仓库信息进行管理,具有手工管理所无法比拟的优点.例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高仓库管理的效率,也是企业的科学化、正规化管理与世界接轨的重要条件。
企业通过使用本系统,可以实现对产品和供应商实现添加、删除、修改等管理,对操作员进行添加、删除、修改密码等操作,以及查询出库入库产品信息和供应商信息等功能,这样就提高了效率,避免出错。
仓库管理系统软件切实推进了仓库管理的信息化。
该软件是以面向对象编程语言为实现语言,其功能在系统内部有源代码直接完成。
操作人员只需输入一些简单的汉字、数字,即可完成操作,达到自己的目标。
大大提高了工作效率,做到信息的规范管理,科学统计和快速查询,让仓库管理系统更好的为企业服务。
2.1.2用例分析
(1)系统管理员:
销售管理,员工管理,产品管理,客户管理,进货管理,发货管理,员工权限管理。
(2)录入员:
销售管理,员工管理,产品管理,客户管理,进货管理,发货管理。
(3)登陆:
:
所有用户都必须首先登录,认证用户身份,并获得相应使用权限。
登录是系统所有其他用例的前提条件。
(4)销售管理,分为我的销售,和销售查询,对销售的信息的增加修改删除,以及按照某个条件查询。
(5)产品管理:
对产品的信息的增加修改删除,并且分页显示。
(6)员工管理,对员工信息的增加修改删除。
(7)客户管理,对客户信息的增加修改删除。
(8)进货管理:
分为我的进货和进货查询,对进货的信息的增加修改删除,并且分页显示。
(9)发货管理:
对发货的信息的增加修改删除,并且分页显示。
(10)员工权限管理:
对员工权限的信息的增加修改删除,并且分页显示。
管理员和普通用户主要区别在于能否对员工信息管理,和员工的权限管理,如图2.1和图2.2所示,分别为管理员和普通用户的用例图。
图2.1管理员用例图
图2.2普通用户用例图
2.1.3功能需求分析
仓库管理系统的功能主要包括八大模块:
销售管理,员工管理,产品管理,客户管理,系统管理,进货管理,发货管理,员工权限管理。
考虑到系统的互动性,将其设计为C/S模式,管理员和普通职员在客户端完成处理的相关操作。
在初步需求分析的基础上制定出的本系统功能模块划分方案如图2.3所示。
图2.3功能模块
管理员可以对员工进行操作,主要包括对员工管理与员工的权限管理,其中对员工的管理包括用户编号,用户名称,员工角色,年龄,登录名,登录密码的管理,每个员工都有唯一的员工编号,所以它与数据库中的id相对应。
员工名称就是他的姓名。
员工角色分为管理员与普通员工,登录名与登录密码在登录系统时候要用到。
可以实现对这些信息的增加,删除与修改。
对员工权限的管理只有管理员可以实现。
主要是对员工权限的修改。
2.1.4数据流图与数据字典
在为系统确定最终的需求分析时,主要采用的是软件工程需求分析方法中面向数据流的分析方法,在面向数据流的分析方法中使用的是结构化(SA)分析方法,它是由美国Yourdon公司在上世纪70年代提出的,其基本思想是将系统分析看成工程项目,有计划、有步骤地进行工作。
这是一种特别适用于分析大型信息系统的开发方法。
虽然仓库管理系统规模不大,但也使用了SA方法进行分析。
下面列出了系统需求分析阶段完成的数据流图和数据字典。
仓库管理系统中,几项重要的功能分别是员工权限管理(在数据流图第0层中编号P1),销售信息管理(在数据流图第0层中编号P2),客户信息管理(在数据流图第0层中编号P3),进货信息管理(在数据流图第0层中编号P4),由于纸张尺寸有限,现将顶层数据流图以及第一层数据流图画出来,第0层就不在累述,因此以上功能的第一层数据流图如图2.4,图2.5,图2.6,图2.7,管理系统的顶层数据流图如图2.8所示。
图2.4员工权限管理
图2.5销售信息管理
图2.6客户管理
图2.7进货管理
图2.8顶层图
数据字典(DataDictionary,DD)是关于数据的信息的集合,也就是对数据流图中包含的元素的定义的集合。
数据字典提供软件分析和设计过程中有关数据的描述信息,在数据流图中出现的命名元素在数据字典中都作为一个词条加以定义,使每个图形元素的名字都有一个确切的解释。
数据字典和数据流图共同构成系统的逻辑模型,只有把数据流图和数据流图中每个元素的确切定义放在一起,才能构成系统的需求规格说明,下面是学生选课管理系统的数据字典:
1.数据流描述
表格2-1员工权限数据流
系统名称
仓库管理系统
编号
F1
名称
员工权限
来源:
管理员
去处:
员工权限表
数据流结构:
员工权限表=ID+员工ID+员工权限
简要说明:
员工ID是员工的唯一标识
表格2-2员工信息数据流
系统名称
仓库管理系统
编号
F2
名称
员工信息
来源:
管理员
去处:
员工信息表
数据流结构:
员工信息=用户编号+用户名+角色+年龄+性别+登录名+登录密码
简要说明:
员工编号即员工ID
表格2-3销售信息数据流
系统名称
仓库管理系统
编号
F3
名称
销售信息
来源:
普通职员
去处:
销售信息表
数据流结构:
销售信息=销售编号+产品名+产品单价+销售日期+销售数量+客户名称+销售备注
简要说明:
销售备注记录产品详细信
表格2-4客户信息数据流
系统名称
仓库管理系统
编号
F4
名称
客户信息
来源:
普通职员
去处:
客户信息表
数据流结构:
客户信息=客户编号+客户名称+客户类型
简要说明:
客户ID是客户的唯一标识
表格2-5进货信息数据流
系统名称
仓库管理系统
编号
F5
名称
进货信息
来源:
普通职员
去处:
进货信息表
数据流结构:
进货信息=进货单号+进货名称+进货单价+进货数量+进货负责人
简要说明:
进货单号是唯一标识
2.数据存储描述
表2-6员工权限数据存储
系统名称
仓库管理系统
编号
D1
名称
员工权限
组织形式:
按照编号从小到大排列
关键字:
员工ID
记录组成:
员工权限表=ID+员工ID+员工权限
简要说明:
存放所有员工权限的基本信息
表2-7员工信息数据存储
系统名称
仓库管理系统
编号
D2
名称
员工信息
组织形式:
按照编号从小到大排列
关键字:
员工ID
记录组成:
员工信息=用户编号+用户名+角色+年龄+性别+登录名+登录密码
简要说明:
存放所有员工的基本信息
表2-8销售信息数据存储
系统名称
仓库管理系统
编号
D3
名称
销售信息
组织形式:
按照编号从小到大排列
关键字:
销售编号
记录组成:
销售信息=销售编号+产品名+产品单价+销售日期+销售数量+客户名称+销售备注
简要说明:
存放所有销售掉产品的基本信息
表2-9客户信息数据存储
系统名称
仓库管理系统
编号
D4
名称
客户信息
组织形式:
按照编号从小到大排列
关键字:
客户编号
记录组成:
客户信息=客户编号+客户名称+客户类型
简要说明:
存放所有客户的基本信息
表2-10进货信息数据存储
系统名称
仓库管理系统
编号
D5
名称
进货信息
组织形式:
按照编号从小到大排列
关键字:
进货单号
记录组成:
进货信息=进货单号+进货名称+进货单价+进货数量+进货负责人
简要说明:
存放所有进货的基本信息
3.数据处理描述
表2-11处理员工信息
系统名称
仓库管理系统
编号
P2
名称
处理员工信息
输入:
员工ID
输出:
员工信息报表
处理过程:
包括增加、删除、修改员工信息,返回处理结果
简要说明:
管理员利用该处理实现对员工信息的管理
表2-12处理销售信息
系统名称
仓库管理系统
编号
P3
名称
处理销售信息
输入:
销售编号,销售产品名称
输出:
销售信息报表
处理过程:
包括增加、删除、修改销售信息,返回处理结果
简要说明:
员工利用该处理实现对销售信息的管理
表2-13处理客户信息
系统名称
仓库管理系统
编号
P4
名称
处理客户信息
输入:
客户编号
输出:
客户信息报表
处理过程:
包括增加、删除、修改客户信息,返回处理结果
简要说明:
员工利用该处理实现对客户信息的管理
表2-14处理进货信息
系统名称
仓库管理系统
编号
P5
名称
处理进货信息
输入:
进货编号
输出:
进货信息报表
处理过程:
包括增加、删除、修改进货信息,返回处理结果
简要说明:
员工利用该处理实现对进货信息的管理
2.2数据库设计
2.2.1数据库管理系统选择
由于本系统的主要开发工具是VisualStudio2010,故确定了使用与该工具衔接较好的MicrosoftSQLServer2008。
SQLServer是由美国Microsoft公司开发和推广的关系数据库管理系统(DBMS),它是一个可扩展的、高性能的、高效率的数据库管理系统。
其主要特点如下:
(1)真正的客户机/服务器结构
(2)图形化用户界面,使得系统管理和数据库管理更加直观、简单。
(3)支持分布式系统,实现了与WindowsNT的有机结合。
(4)支持触发器、存储过程与函数,并且具有自主的SQL语言。
SQLServer以其内置的数据复制功能、强大的管理工具、与Internet的紧密集成和开放的系统结构为广大用户、开发人员和系统集成商提供了一个出众的数据库平台。
2.2.2数据库设计
数据库设计是建立数据库及其应用系统的关键技术,是信息系统开发和建设的核心技术,具体说,数据库设计是指对于一个给定的应用环境,构造最优的数据模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。
将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。
它是整个数据库设计的关键。
描述概念模型的有力工具是E-R(Entity-Relationship,实体-联系)模型,本系统就是采用这种工具进行的概念模型设计。
设计概念结构通常有四种方法:
自顶向下、自底向上、逐步扩张和混合策略(即将自顶向下和自底向上相结合)。
本系统采用的是自底向上的方法,即自顶向下进行需求分析,然后再自底向上的设计概念结构(逐一设计分E-R图,然后再组合成完整的系统E-R图)。
本系统涉及的参考表单有:
●产品管理表——属性有ID,产品号,产品名,单价。
●登陆表——属性有ID,用户名,密码等。
●发货管理表——属性有ID,销售产品名称,发货状态等。
●进货管理表——属性有ID,进货名称,进货编号,进货单价,进货数量,进货负责人等。
●客户管理表——属性ID,客户编号,客户名称,客户类型等。
●客户权限表——属性有ID,客户ID,客户级别等。
●客户权限对应表——属性有ID,客户级别,对应权限等。
●权限表——属性有ID,员工权限,员工级别等。
●我的销售表——属性有ID,销售编号,产品名称,产品单价,销售日期,销售数量,客户名称,销售备注等。
●员工管理表——属性有ID,用户编号,用户名,角色,性别,年龄,登录名,密码。
●员工权限——员工ID,员工权限。
2.2.3数据库表结构
1.产品管理表,主要属性有产品号,产品名称,产品单价,用来存放产品的相关信息,如图表所示。
表2-15产品管理表
字段名
数据类型及长度
关键字
可空
产品号
varchar
是
否
产品名称
varchar
否
是
单价
varchar
否
是
2.登录表,主要属性为用户名和密码,主要是登陆时候要用到,如下表所示。
表2-16登录表
字段名
数据类型及长度
关键字
可空
Id
Int
是
否
用户名
varchar
是
否
密码
varchar
否
是
3.发货管理表,主要是为了记录发货状态,主要属性有销售产品的名称和发货状态两个属性,如表所示。
表2-17发货管理表
字段名
数据类型及长度
关键字
可空
ID
int
是
否
销售名称
varchar
是
否
发货状态
varchar
否
是
4.进货管理表,主要属性字段如下所示,用来描述进货的信息,如表所示。
表2-18进货管理表
字段名
数据类型及长度
关键字
可空
ID
Int
是
否
进货单号
varchar
是
否
进货名称
varchar
否
是
进货单价
varchar
否
是
进货数量
varchar
否
是
进货负责人
varchar
否
是
5.客户管理表,用来描述客户的信息,如表所示。
表2-19客户管理表
字段名
数据类型及长度
关键字
可空
ID
Int
是
否
客户编号
varchar
是
否
客户名称
varchar
否
是
客户类型
varchar
否
是
6.客户权限表,用来显示客户是哪个级别,可以对级别高的客户给与相应的优惠等,客户信息如表所示。
表2-20客户权限表
字段名
数据类型及长度
关键字
可空
ID
Int
是
否
客户ID
varchar
是
否
客户级别
varchar
否
是
7.客户权限对应表,每个客户级别对应一个客户权限,如表所示。
表2-21客户权限对应表
字段名
数据类型及长度
关键字
可空
ID
Int
是
否
客户权限
varchar
是
否
客户级别
varchar
否
是
8.权限表,用来描述员工的权限与级别的对应关系,属性如表所示。
表2-22权限表
字段名
数据类型及长度
关键字
可空
ID
Int
是
否
员工权限
varchar
是
否
员工级别
varchar
否
是
9.我的销售表,对销售信息的显示,如表所示
表2-23我的销售表
字段名
数据类型及长度
关键字
可空
ID
Int
是
否
销售编号
varchar
是
否
产品名称
varchar
否
是
产品单价
varchar
否
是
销售日期
varchar
否
是
销售数量
varchar
否
是
客户名称
varchar
否
是
销售备注
varchar
否
是
10.员工管理表,当员工入职和离职时就要用到这个表,而且还可以修改,此表记录了员工详细信息。
如表.
表2-24员工管理表
字段名
数据类型及长度
关键字
可空
ID
Int
是
否
用户编号
varchar
是
否
用户名
varchar
否
是
角色
varchar
否
是
性别
varchar
否
是
年龄
varchar
否
是
登录名
varchar
否
是
登录密码
varchar
否
是
11.员工权限表,对员工权限的管理,登录系统时,权限低的会少一部分功能,详细信息如表所示。
表2-25员工权限表
字段名
数据类型及长度
关键字
可空
ID
Int
是
否
员工ID
varchar
是
否
员工权限
varchar
否
是
2.3系统详细设计与实现
2.3.1LINQTOSQL简介
在具体实现系统过程中,用到的主要技术是LinqtoSql。
What‘sLINQ?
LanguageIntegratedQuery。
说得再明白一些,这是编程语言的一种新特性,能够将数据查询语句集成到编程语言中。
目前,LINQ支持的语言有C#和VB。
为啥会有LINQ,主要还是因为现在的数据格式越来越多,数据库、XML、数组、哈希表……每一种都有自己操作数据的方式,学起来费事费力。
于是,就有了LINQ诞生的理由——以一种统一的方式操作各种数据源,减少数据访问的复杂性。
LINQ带来很多开发上的便利。
首先,他可以利用VisualS