《毕业设计(定稿).doc》由会员分享,可在线阅读,更多相关《毕业设计(定稿).doc(73页珍藏版)》请在三一办公上搜索。
1、目录1 系统概述11.1 绪论11.1.1 系统开发的目的与意义11.1.2 系统开发背景11.1.3 系统任务概述11.1.4 系统实现的方法与目标22 可行性研究与需求分析32.1 可行性研究32.1.1 技术可行性32.1.2 经济可行性32.1.3 操作可行性32.1.4 可行性研究结论32.2 需求分析32.2.1 系统的目的32.2.2 系统功能及用户需求分析42.2.3 系统流程图42.2.4 数据描述62.2.5 安全性、完整性需求113 设计原理与主要技术123.1 项目设计的基本原理123.2 设计方法与技术133.2.1 项目设计采用的主要方法133.2.2项目设计采用的
2、主要技术134 总体设计184.1 总体设计原理184.2 系统功能模块设计184.2.1 系统需要实现的功能184.2.2 功能实现194.3 系统流程图214.4 软硬件环境224.4.1硬件环境224.4.2 软件环境224.5 运行设计224.5.1 运行模块的设计224.6 出错处理224.6.1 出错输出信息224.6.2 出错处理对策235 详细设计245.1 数据库的概念设计245.1.1 数据抽象245.1.2 系统概念数据模型275.1.3 系统物理数据模型285.2 程序描述285.2.1 身份验证系统285.2.2 入库系统295.2.3 出库系统295.2.4 借出系
3、统305.3 程序流程图316 系统的实现与调试346.1 仓库数据库的建立346.2 系统具体设计366.2.1 登录界面366.2.2.主界面376.2.3 供应商信息界面396.2.4 购货商信息界面426.2.5 货物信息界面446.2.6 库存操作界面456.2.7 出库界面476.2.8库存信息界面487 测试与运行记录497.1 测试目的497.2 测试目标497.3 测试计划497.3.1 测试方案497.3.2 测试项目497.3.3 测试准备507.4 测试与运行记录507.4.1 用户登录操作517.4.2 供货商信息查询操作517.4.3 指定供货商信息查询操作517.
4、4.4 添加供货商信息操作527.4.5 购货商信息查询操作527.4.6 指定购货商信息查询操作527.4.7 添加购货商信息操作537.4.8 商品信息查询操作537.4.9 指定商品信息查询操作547.4.10 商品信息添加操作547.4.11 查询入库信息操作557.4.12 查询指定商品入库信息操作557.4.13 入库信息添加557.4.14 查询出库信息操作567.4.15 查询指定商品出库信息操作567.4.16 出库信息添加567.4.17 库存信息查询操作577.5 测试结论578 总结58参考文献59致谢60附录 主要源程序代码611 系统概述1.1绪论1.1.1 系统开
5、发的目的与意义随着国民经济的发展和社会进步,企业的数字化管理成为现代企业的重要组成部分。其中数字化、信息化的产品库存管理也有了较快的发展,代表了库存管理自动化发展的趋势。由于信息量的增大,产品内容的丰富,继续使用手工的管理方式则显得力不从心,因此发展产品库存管理的自动化就成为当务之急,重中之重的一件大事。用好、管理好产品库存,更好的发挥其作用,已渐渐成为研究的一个重要课题。利用高科技,科学合理的配置人力、物力等各种资源,进行系统的、有效的管理,是目前的研究方向。1.1.2 系统开发背景在我国商品经验快速发展的背景下,我们的库存管理观念正经受到当代先进的管理理论和思想的冲击,落后的管理观念和低效
6、的管理技术手段难以适应当前发展和企业改革的需要。这样的情况对我们库存管理工作来说不仅是挑战,也是发展机遇,它对我们管理工作提出了新的要求,促使我们进一步深化管理体制改革,不断采用高效的库存管理信息手段,将库存管理过程中产生的大量信息需求,及时、动态地进行处理,提高管理效率,逐步建立和完善面向信息网络、开放安全高效的现代库存管理信息网络系统。1.1.3 系统任务概述(1) 目标 为了库存管理系统更完善; 为了库存管理人员对库内商品的管理更方便; 为了减轻产品库存管理人员的工作负担。(2) 应用目标通过本系统软件,能帮助库存管理人员利用计算机,快速方便地对现有库内商品,入库管理,出库管理等进行高效
7、的管理。(3) 作用及范围本软件适用于现代产品库存系统使用,它是比较完善的系统管理软件,可以快速方便地对现有库内商品,入库管理,出库管理等进行高效的管理。1.1.4 系统实现的方法与目标我将此次设计的重点放在库存管理子系统的设计,此子系统包括入库管理、出库管理、购货商信息查询,库存信息查询等功能,在本论文中将具体讲解此子系统各个功能的详细实现过程。本系统主要将采用图形界面,直接单击按钮而驱动相应的处理程序,以使系统具友好的界面,方便操作人员的使用,减少操作失误,增强系统的容错性、使用户得到满意的结果。2 可行性研究与需求分析2.1 可行性研究2.1.1 技术可行性随着信息时代的到来,越来越多的
8、计算机和网络逐步走进了多层次的应用领域。现代企业管理中,信息的共享性和及时性决定了企业的发展。而基于计算机的信息管理在世界上也已取得广泛的认可。 该产品库存管理系统是基于Microsoft Visual Studio技术,建立以Server为结构模式、以数据库为后台核心应用、以服务为目的信息平台,对资源进行科学的加工整序和管理维护,为提高库存管理的效率、安全、和数据的及时性、共享性而开发的系统。2.1.2 经济可行性经济可行性主要依据是成本/效益分析,该系统的目标是以最低的成本,最高的效率、在最短的期限内开发出具有产品入库、产品出库、及商品查询功能的系统。目标系统开发需求比较低,加上具有成熟的
9、软硬件环境,所以在软硬件的支出上十分有限。而且,目标系统并不是十分的复杂,开发的周期较短,人员经济支出有限。2.1.3 操作可行性使用本软件人员要求有一定计算机基础的人员,系统管理员要求有计算机的专业知识,所有人员都要经过专业培训。管理人员也需经一般培训。经过培训人员将会熟练使用本软件。 两名系统管理员,一名审计员将进行专业培训,他们将熟练管理本系统2.1.4 可行性研究结论综上所述,该项目在技术、经济、操作和社会效益上是完全可行的。2.2 需求分析2.2.1 系统的目的货物仓库管理系统主要针对于日常库存信息的管理,它针对仓库日常发生的业务,分为了两大类,即入库和出库,用户通过相应的模块,对仓
10、库里的物品的基本情况进行操作,对库存数量进行查询,用户通过简单的操作即可轻松的管理仓库。2.2.2 系统功能及用户需求分析2.2.2.1 功能需求该系统主要分为三大功能: 管理员功能、信息安全功能、用户功能。(1) 管理员功能包括:产品入库登记、确认入库信息、删除库内信息、借出信息登记、产品分类管理、添加人员、删除人员、查询库内信息、系统配置、查看系统事件。(2) 信息安全功能包括:数据检测、人员权限区分、事件记录、数据警告;(3) 用户功能包括:查询库内信息、查询出库信息、查询入库信息、修改本用户密码。2.2.2.2 用户需求根据用户需求,该系统应该实现以下功能:(1) 进、出库管理。对进、
11、出库信息进行记录。(2) 查询功能。对购货商,供货商,库存产品,进出库情况等信息进行查询。(3) 部门资料管理与库存报表生成。资料管理包括了人员信息管理,财政支出信息管理,以及各项业务单据的资料管理。(4) 应用计算机管理后,由于计算机能存贮大量的数据,而且数据只要一次存入,便可多次重复使用,所以管理数据达到完整,统一,原始记录能保证及时,准确。(5) 应用计算机管理后,许多重复性的工作,都可由计算机去执行,从而使管理人员从事务性工作解脱出来,真正变为从事一些信息的分析,判断,决策等创造性的工作。2.2.3 系统流程图系统流程图是概括地描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子形
12、式描绘组成系统的每个部件(程序,文档,数据库等)。系统流程图表达的是数据在系统各部件之间流动的情况,而不是对数据进行加工处理的控制过程,因此尽管系统流程图的某些符号和程序流程图的符号形式相同,但是它却是物理数据流图而不是程序流程图。(1) 系统流程图符号如图2.1所示:处理输入输出联机存储图2.1 系统流程图符号说明(2) 本系统使用的总的系统总体流图2.2所示:查询操作库存操作原因库存操作定货报告入库信息处理出库信息处理购货商需求表采购货物入库仓库管理系统存储文件出库信息表入库信息库存报表库存月报表供货商出入库库存日报表图2.2 系统总体流图2.2.4 数据描述2.2.4.1 数据流图 数据
13、流图(DFD)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被处理的逻辑过程。(1) 本系统中使用的数据流图符号如图2.3所示:数据的源点/终点数据流数据流数据存储图2.3 数据流图符号 (2) 本系统的顶层数据流图如图2.4所示:仓库管理系统仓库管理员供应商定货报告管理员入/出库信息 库存信息表 入库出库信息图2.4 顶层数据流图(3) 细化后的数据流图如图2.5所示:入库信息表管理员货物入库信息管理入库、出库信息及库存信息货物库存信息管理管理员入库信息供应商货物出库信息管理 定货报告出库信息库存信息
14、表出库信息表图2.5 细化后的数据流图2.2.4.2 数据字典数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。数据流图和数据字典共同构成系统的逻辑模型。下面用数据字典来定义数据流图中各元素的确切内容:(1) 数据项定义:表2-1 供应商表Client字段名数据类型可否为空说明ClientIDVarchar(10)Not null供应商编号(主键)ClientnameVarchar(50)Not null供应商名称AddressVarchar(50)Null供应商地址PostcodeVarchar(30)Null供应商邮编TelenoVarchar(30)Null供
15、应商电话 表2-2 管理员表Users字段名数据类型可否为空说明UserIDVarchar(10)Not null管理员编号(主键)usernameVarchar(10)Null管理员名userpasswordVarchar(6)Null管理员密码表2-3 货物信息表Goods字段名可否为空数据类型说明GoodsIDNot nullVarchar(10)货物号(主键)PriceNullDecimal 15,2货物价格GoodsnameNot NullVarchar(50)货物名称In_dateNullDatetime入库时间ClientIDNullVarchar(10)供应商编号NumberN
16、ullChar(10)货物数量BuyerIDNullVarchar(10)购货商编号 表2-4货物入库表Goods_in字段名数据类型可否为空说明InIDVarchar(10)Not null入库货物号(主键)In_dateDatetimeNot Null入库时间(主键)ClientIDVarchar(10)Null供应商编号In_numberChar(10)Null入库数量UsernameVarchar(10)Null经办人表2-5 货物出库表Goods_out字段名数据类型可否为空说明Out_dateDatetimeNot Null出库时间OutIDVarchar(10)Not null出
17、库货物号(主键)BuyerIDVarchar(10)Null购货商编号UsernameVarchar(10)Null经办人Out_numberChar(10)Null出库数量表2-6 现有库存表Goodsstore字段名数据类型可否为空说明StoreIDVarchar(10)Not null库存货物号(主键)Store_numberChar(10)Null库存数量UserIDVarchar(10)Null管理员编号表2-6 购货商表Buyer字段名数据类型可否为空说明BuyerIDVarchar(10)Not null购货商编号(主键)BuyernameVarchar(50)Not null购
18、货商名称NeedIDVarchar(10)Not null需求货物号Need_numberChar(10)Null需求数量(2) 数据流定义: 名称:入库信息描述:入库信息由仓库管理员输入到仓库管理系统中,并修改系统原数据定义:入库信息=货物名称+货物号+数量+入库时间+单价位置:仓库管理员货物入库信息管理名称:出库信息描述:出库信息由仓库管理员输入到仓库管理系统中,并修改系统原数据定义:出库信息=货物名称+货物号+数量+出库时间+单价位置:仓库管理员货物出库信息管理名称:库存信息描述:库存信息保存在仓库管理系统的存储文件中,根据入库及出库信息修改,并且输出给工作人员,以作出采购决策定义:库存
19、信息=货物名称+货物号+数量+单价位置:库存信息管理工作人员(3) 数据存储定义:名称:入库信息管理描述:由仓库管理员将入库信息输入到入库信息管理系统中存储输入:入库信息输出:入库信息表数据结构:货物名称+货物号+数量+入库时间名称:出库信息管理描述:由仓库管理员将出库信息输入到出库信息管理系统中存储输入:出库信息输出:出库信息表数据结构:货物名称+货物号+数量+出库时间名称:库存信息管理描述:入库信息和出库信息共同存入库存信息管理系统输入:入库信息+出库信息输出:库存信息表数据结构:货物名称+货物号+数量(4) 数据处理数据处理名称:管理员登陆管理 标志符:P1处理定义:管理员信息增加,修改
20、,删除激发条件:输入各种管理员信息输入:管理员管理信息输出:产品入库登记、确认入库信息、删除库内信息、借出信息登记、产品分类管理、添加人员、删除人员、查询库内信息、系统配置、查看系统事件 数据处理名称:用户登录 标志符:P1处理定义:登录系统 激发条件:所输入的编号和密码正确输入:登录信息输出:查询库内信息、查询出库信息、查询入库信息、修改本用户密码。 数据处理名称:信息安全 标志符:P2处理定义:数据检测、人员权限区分、事件记录、数据警告激发条件:检查信息安全输入:检测项目 输出:待检测项目结果 数据处理名称:借出管理 标志符:P3处理定义:借出当前库内商品 激发条件:输入商品号并查询当前库
21、输入:商品号输出:商品信息及借出登记 数据处理名称:入库管理 标志符:P4 处理定义:添加当前库内商品 激发条件:商品编号输入:商品编号或借出单号输出:原始商品信息及当前商品信息 2.2.5 安全性、完整性需求(1) 数据精确度 系统处理的数据精确度是系统的重要性能之一。在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理数据的精确度能够满足企业对信息处理的需求。(2) 时间特性 系统处理的准确性和及时性是系统的必要性能。在系统设计和开发过程中,要充分考虑系统的运行所需时间、处理时间和故障间断时间。数据对本系统是十分重要的。所以要求在进行系统设计时充分考虑系统发生故障
22、的概率和恢复时间,并进行必要的防范。(3) 适应性 在信息时代,面对各种各样的操作系统是十分正常的。所以要求在通用环境下,系统可正常工作,在UNLIX、LIUX也可以正常工作。(4) 系统的开放性和可扩展性 在实际的使用过程中,难免会出现一些问题。这就要求系统有可扩展性,能进行程序的修补工作。同时要求系统可自动备份当前数据。(5) 数据的完整性、准确性及安全性 拥有用户、密码模块管理用户权限。 可根据各种条件进行查询。 相应的数据项检测功能3 设计原理与主要技术3.1 项目设计的基本原理软件工程的基本原理包括七条,如下所述:(1) 用分阶段的生命周期计划严格管理。即把软件生命周期划分成若干个阶
23、段,并相应地制定出切实可行的计划,然后严格按照计划对软件的开发与维护工作进行管理。(2) 坚持进行阶段评审。即在每个阶段都进行严格的评审,以便尽早发现在软件开发过程中所犯的错误,是一条必须遵循的重要原则。(3) 实行严格的产品控制。在软件开发过程中不应随意改变需求,因为改变一项需求往往需要付出较高的代价。但是,在开发的过程中改变需求又是难免的,为了保持软件各个配置成分的一致性,必须实行严格的产品控制,其中主要是实行基准配置管理,绝对不能谁想修改软件就随意进行修改。 (4) 采用现代程序设计技术。采用先进的技术不仅可以提高软件开发和维护的效率,而且可以提高软件产品的质量。 (5) 结果应能清楚地
24、审查。软件产品不同于一般的物理产品,它是看不见摸不着的逻辑产品。为了提高软件开发过程的可见性,更好地进行管理,应该根据软件开发项目的总目标及完成期限,规定开发组织的责任和产品标准,从而使所得到的结果能够清楚地审查。(6) 开发小组的人员应该少而精。开发小组人员的素质和数量是影响软件产品质量和开发效率的重要因素,因此,开发小组的人员应该少而精。(7) 承认不断改进软件实践的必要性。所以在软件开发过程中应该考虑到创新原则,体现先进性、超前性,同时应考虑软件的使用性。这七条原理是确保本次软件开发产品开发质量和开发效率的原理的最小集合,这七条原理是互相独立的,其中任意六条原理的组合都不能代替另一条原理
25、,因此,它们是缺一不可不最小集合。3.2 设计方法与技术3.2.1 项目设计采用的主要方法 本系统的设计是采用面向对象方法学进行的。与传统方法相反,面向对象方法把数据和行为看成同等重要,它是一种以数据为主线,把数据和对数据的操作紧密地结合起来的方法。概括地说,面向对象方法学具有下述4个要点。(1)把对象(object)作为融合了数据及在数据上的操作行为的统一的软件构件。面向对象程序是由对象组成的,程序中任何元素都是对象,复杂对象由比较简单的对象组合而成。也就是说,用对象分解取代了传统方法的功能分解。(2)把所有对象都划分成类(class)。每个类都定义了一组数据和一组操作,类是对具有相同数据和
26、相同操作的一组相似对象的定义。数据用于表示对象的静态属性,是对象的状态信息,而施加于数据之上的操作用于实现对象的动态行为。(3)按照父类(或称为基类)与子类(或称为派生类)的关系,把若干个相关类组成一个层次结构的系统(也称为类等级)。在类等级中,下层派生类自动拥有上层基类中定义的数据和操作,这种现象称为继承。 (4)对象彼此间仅能通过发送消息互相联系。对象与传统数据有本质区别,它不是被动地等待外界对它施加操作,相反,它是数据处理的主体,必须向它发消息请求它执行它的某个操作以处理它的数据,而不能从外界直接对它的数据进行处理。也就是说,对象的所有私有信息都被封装在该对象内,不能从外界直接访问,这就
27、是通常所说的封装性。面向对象方法学的出发点和基本原则,是尽量模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界解决问题的方法与过程,从而使描述问题的问题空间(也称为问题域)与实现解法的解空间(也称为求解域)在结构上尽可能一致。3.2.2项目设计采用的主要技术本系统主要利用Visual Basic作前端的应用开发工具 ,利用SQL Server2000作为 后台的数据库,利用Windows XP作为系统平台。Windows XP以其友好的图形界面、易学易用的操作方法、强大的多任务功能、健全的内在管理以及先进的程序设计方法为广大数据库软件开发人员所熟悉。对它的操作环境的熟悉,使得
28、我们在其上开发数据库应用程序更加方便、可靠。(1) Visual Basic语言Visual Basic是一种可视化的、面对对象和条用事件驱动方式的结构化高级程序设计,可用于开发Windows环境下的种类应用程序。它简单易学、效率高,且功能强大,可以与Windows的专业开发工具SDK相媲美,而且程序开发人员不必具有C/C+编程基础。在Visual Basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口(API)函数,以及动态链接库(DLL)、动态数据交换(DDE)、对象的链接与嵌入(OLE)、开放式数据访问(ODBC)等技术,可以高效、快速地
29、开发出Windows环境下功能强大、图形界面丰富的应用软件系统。总的来说,Visual Basic具有以下特点:可视化编程:用传统程序设计语言设计程序时,都是通过编写程序代码来设计用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察。如果对界面的效果不满意,还要回到程序中修改。有时候,这种编程-编译-修改的操作可能要反复多次,大大影响了软件开发效率。Visual Basic提供了可视化设计工具,把Windows界面设计的复杂性“封装”起来,开发人员不必为界面设计而编写大量程序代码。只需要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对象,并设置这
30、些图形对象的属性。Visual Basic自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而可以大大提高程序设计的效率。面向对象的程序设计4.0版以后的Visual Basic支持面向对象的程序设计,但它与一般的面向对象的程序设计语言(C+)不完全相同。在一般的面向对象程序设计语言中,对象由程序代码和数据组成,是抽象的概念;而Visual Basic则是应用面向对象的程序设计方法(OOP),把程序和数据封装起来作为一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西。在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,Visual Basic
31、自动生成对象的程序代码并封装起来。每个对象以图形方式显示在界面上,都是可视的。结构化程序设计语言Visual Basic是在BASIC语言的基础上发展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维方式。Visual Basic语句简单易懂,其编辑器支持彩色代码,可自动进行语法错误检查,同时具有功能强大且使用灵活的调试器和编译器1。Visual Basic是解释型语言,在输入代码的同时,解释系统将高级语言分解翻译成计算机可以识别的机器指令,并判断每个语句的语法错误。在设计Visual Basic程序的过程中,随时可以运行程序,而在整个程序设计好之后,可以编译生成可执行文件
32、(.EXE),脱离Visual Basic环境,直接在Windows环境下运行2。事件驱动编程机制Visual Basic通过事件来执行对象的操作。一个对象可能会产生多个事件,每个事件都可以通过一段程序来响应。例如,命令按钮是一个对象,当用户单击该按钮时,将产生一个“单击“(CLICK)事件,而在产生该事件时将执行一段程序,用来实现指定的操作3。在用Visual Basic设计大型应用软件时,不必建立具有明显开始和结束的程序,而是编写若干个微小的子程序,即过程4。这些过程分别面向不同的对象,由用户操作引发某个事件来驱动完成某种特定的功能,或者由事件驱动程序调用通用过程来执行指定的操作,这样可以
33、方便编程人员,提高效率5。访问数据库Visual Basic提供开放式数据连接,即ODBC功能,可通过直接访问或建立连接的方式使用并操作后台大型网络数据库,如SQL Server,Oracle等6。在应用程序中,可以使用结构化查询语言SQL数据标准,直接访问服务器上的数据库,并提供了简单的面向对象的库操作指令和多用户数据库访问的加锁机制和网络数据库的SQL的编程技术,为单机上运行的数据库提供了SQL网络接口,以便在分布式环境中快速而有效地实现客户/服务器(client/server)方案。(2) 数据库技术数据库是数据管理的最新技术,是计算机科学的重要分支。今天,信息资源已成为各个部门的重要财
34、富和资源。建立一个满足各级部门信息处理要求的行之有效的信息系统也成为一个企业或组织生存和发慌的重要条件。因此,作为信息系统核心和基础的数据库技术得到越来越广泛的应用,从小型单项事务处理到大型信息系统,从联机事务处理到联机分析处理,从一般企业管理到计算辅助设计与制造(CAD/CAM)、计算机集成制造系统(CIMS)、办公信息系统(OIS)、地理信息系统(GIS)等,越来越多新的应用领域采用数据库存储和处理他们的信息资源。对于一个国家来说,数据为的建设规模、数据库信息量的大小和使用频度已成为衡量这个国家信息化程度的重要标志数据库技术是应数据管理任务的需要而产生的。数据的处理是指对各种数据进行收集、
35、存储、加工和传播的一系列活动的总和。数据管理则是指对数据进行分类、组织、编码、存储、检索和维护,它是数据处理的中心问题。目前流行和成熟的数据库技术为关系数据库系统。关系数据库系统是用一种称为“关系”的表来组织数据的。而在背后,是一个很复杂的数据结构,以保证对各种查询的快速响应。但与以前的数据库系统不同,关系数据库系统的用户并不关心数据库系统的存储结构,而是使查询能用很高级的语言(SQL)来实现,从而大大提高了数据库开发人员的效率。DBMS一般采用关系型(本人所使用的MS SQL Server 就是关系型的DBMS),因此数据库的逻辑设计过程就是把ER图转化为关系模式的过程。由于关系模型所具有的
36、优点,逻辑设计可以充分运用关系数据库规范化理论,使设计过程形式化地进行。设计结果是一组关系模式的定义。SQL(Structured Query Language,结构查询语言)是一个功能强大的数据库语言。SQL通常使用于数据库的通讯。ANSI(美国国家标准学会)声称,SQL是关系数据库管理系统的标准语言。SQL语句通常用于完成一些数据库的操作任务,比如在数据库中更新数据,或者从数据库中检索数据。使用SQL的常见关系数据库管理系统有:Oracle、 Sybase、 Microsoft SQL Server、 Access、 Ingres等等。虽然绝大多数的数据库系统使用SQL,但是它们同样有它们
37、自立另外的专有扩展功能用于它们的系统。但是,标准的SQL命令,比如Select、 Insert、 Update、 Delete、 Create和 Drop常常被用于完成绝大多数数据库的操作。MS SQL Server 就是用的Transact- SQL。 SQL语言有着非常突出的优点,主要是: 非过程化语言:SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集,所有SQL 语句接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。 SQL不要求用户指定
38、对数据的存放方法, 这种特性使用户更易集中精力于要得到的结果;所有SQL语句使用查询优化器,它是RDBMS的一部分,由它决定对指定数据存取的最快速度的手段,查询优化器知道存在什么索引,在哪儿使用索引合适,而用户则从不需要知道表是否有索引、有什么类型的索引7。 统一的语言:SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、 应用程序员、决策支持系统人员及许多其它类型的终端用户。 SQL为许多任务提供了命令,其中包括:查询数据;在表中插入、修改和删除记录;建立、修改和删除数据对象;控制对数据和数据对象的存取;保证数据库一致性和完整性。 以前的数据库管理系统为上述各类操作提供单独的语
39、言,而SQL 将全部任务统一在一种语言中。 是所有关系数据库的公共语言:由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS(关系数据库管理系统)转到另一个,所有用SQL编写的程序都是可以移植的8。 4总体设计4.1 总体设计原理在需求规格说明书中我们阐述了有关本系统的规格和部分性能指标。在本次总体设计说明书中,我们将重点研究系统的处理流程、接口设计、数据结构等和本系统相关的软硬件。为下一步系统的详细设计指明方向。采用模块化原理可以使软件结构清晰,不仅容易设计也容易阅读和理解。因为程序的错误通常局限在有关的模块及它们之间的接口中,所以模块化使软件容易测试和
40、调试。应而有助于提高系统的可靠性。并且模块化还能够提高软件的可修改性,也有助于软件开发工程的组织管理。因此,在进行软件结构设计时应该遵循的最主要的原理就是模块化独立原理9。其中,对相关术语定义如下:前端管理员:负责与用户直接沟通,对数据库无实际管理权。可对数据库管理员的数据更改加以审核。数据库管理员:不和用户直接沟通,对数据库有实际管理权。负责审核前端管理员的数据更改请求。 一级身份: 普通用户身份,不可进行数据库操作。 二级身份: 管理员身份,可对数据库进行操作。 互制性: 前端管理员和数据库管理员互相审核对方的申请。一方否决,申请即失败10。4.2 系统功能模块设计4.2.1 系统需要实现
41、的功能主要如下:“基本信息管理”、“库存操作管理”、“统计查询管理”、“用户登录管理”模块。其中前三部分模块是整个系统的核心。系统的功能模块图如下图所示:货物仓库管理系统库存操作管理基本信息管理统计查询管理供货商信息管理购货商信息管理管理员信息管理出库操作管理入库操作管理库存盘点管理产品入库统计表产品出库统计图 4.1 功能模块图4.2.2 功能实现(1) 基本信息管理功能:基本信息包括供货商信息、客户商信息和用户信息。在产品采购和入库时,需要提供供应商的信息;在出库时,需要客户商的信息。管理员是指对系统操作的人员。 供应商信息包括供应商编号、供应商名称、供应商电话、供应商地址、供应商邮编。
42、管理员信息包括管理员编号、管理员名、管理员密码。 购货商信息包括购货商编号、购货商名称、需求货物号、需求数量。(2) 库存操作管理功能:库存操作包括由仓库管理员执行,就是把产品放入仓库或把产品从仓库中取出的操作,即入库和出库。库存操作管理模块可以实现以下功能: 入库操作:入库操作主要是采购入库,采购入库指将从供应商处采购的产品入库,入库操作需要记录相关的货物号、入库时间、供货商信息、入库数量、经办人等信息。 出库操作:出库操作主要指用料出库,用料出库指本企业部门由于需求从仓库提出货物到生产线,出库操作需要记录相关的货物号、购货商、出库时间、经办人、出库数量等信息。 库存盘点:库存盘点是指对库存
43、产品进行整理,纠正不准确的库存数据。由于人为操作等原因,系统中的库存数据与实际数据之间可能会存在误差。所以每隔一段时间就需要对库存进行盘点,从而保证库存数据的准确性。(3) 统计查询管理功能:统计查询管理模块可以对库存产品进行各种类型的统计和查询,从而使用户能够全面地了解库存状况。统计查询管理模块可以实现以下功能: 产品入库统计; 产品出库统计。4.3 系统流程图 供货商显示相关信息入库单查询入库单信息入库单确认入库单未确认入库更新库内信息记录错误信息入库信息录入返回错误信息 图4.2 入库流程图出库信息录入购货商显示相关信息出库单查询出库单信息出库单确认出库更新库内信息出库单未确认记录错误信息返回错误信息