




已阅读5页,还剩24页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
辽 宁 工 业 大 学数据库应用技术课 程 设 计 说 明 书题目: 仓库管理系统 学院(系): 专业班级: 学 号: 学生姓名: 指导教师: 教师职称: 起止时间: 目录第一章 概述4第二章 问题定义5第三章 需求分析6第四章 数据库设计11第五章 界面设计19第六章 代码与注释24设计总结26参考文献27第一章 概述本仓库货物管理系统针对企业仓库进货管理方面的问题。它能实现仓库进货的综合管理,减少不必要的手工上报,也为基层单位上报数据提供便利,减少人工劳动。对仓库进货信息资源,出货信息资源管理的货号、货物名称、进出货时间、数量、生产单位;货物报表登记货物的基本档案,货号、货名、入库日期、存放地点、存放情况;日常管理中货物性质、存放要求、保质期等信息进行全面、系统的管理。在整个系统开发的过程中,运用了软件工程的基本概念、相关技术和方法。并且采用了系统生命周期的结构化程序设计方法,从而将整个系统开发各阶段(系统分析、系统设计、系统实施)的基本活动贯穿起来。第二章 问题定义随着科学技术的发展,社会进步,计算机迅速的发展,仓库货物管理的方法也日新月异,以前全是由人工管理的方法现存在很多的缺点:管理效率低,劳动强度大,信息处理速度低而且准确率也不够令人满意。为了提高仓库货物管理效率,减轻劳动强度提高,信息处理速度和准确性;为管理员提供更方便、科学的服务项目。为管理员提供的一种更先进、科学的服务系统。于是我们便选择了由计算机来设计一个仓库货物管理系统的方案。让计算机对仓库货物进行自动管理,管理员可以直接在计算机上实现仓库货物的信息管理,并能在一定程度上实现自动化。我们在现行系统初步调查的基础上提出了新系统目标,即新系统建立后所要求达到的运行指标,这是系统开发和评价的依据。第三章 需求分析一、数据库需求分析该系统主要包括系统功能输入模块、基本资料维护模块、报表模块、综合查询功能模块和统计模块等。系统要实现基本信息录入、修改、查询等功能:1、 信息的输入,包括溢货信息、缺货信息、货物入库信息、库存信息、货源信息、货价信息等。2、 信息的修改、删除。3、 根据要求,查询统计符合条件的各类信息。4、 依据实际需要,对重要新信息进行统计。二、数据流图需求单位需求仓库现有库存向供应单位进货管理事物处理设备进货设备入库设备出库设备出货库存清 单出货清 单进货清 单三、数据字典(DD):数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。由于本次设计是小型软件系统的开发,所以采用卡片形式书写数据字典。每张卡片上保存描述一个数据的信息这样做更新和修改起来比较方便,而且能单独处理描述每个数据的信息。下面将列出若干数据元素的数据卡片信息。数据字典卡片:名称:库存清单别名:库存报表描述:仓库货物存储的描述定义:货物编号+名称+生产日期+有效期+数量+单价+上、下限位置:输出到打印机保存到磁盘名字:货物编号别名:描述:惟一地标识库存清单中一个特定货物的关键域定义:货物编号=8字符8位置:进货报表 库存清单 事务名称:货物现存量清单别名:描述:仓库货物存量描述定义:货物编号+名称+生产日期+有效期+数量+上下限 + +状态标志(正常、紧急、警告、严重)位置:输出到打印机保存到磁盘名称:进货清单别名:进货报表描述:每次进货的货物描述定义:货物编号+名称+生产日期+有效期+数量位置:输出到打印机保存到磁盘名字:货物生产单位别名:生产商描述:惟一的标识仓库货物生产的一个特定的单位定义:单位名+负责人+联系电话位置:进货报表 出货报表 库存清单名字:货物供应单位别名:供应商描述:惟一的标识仓库货物来源的一个特定的单位定义:单位名+负责人+联系电话位置:进货报表 出货报表 库存清单 名字:需求数量别名:本次数量描述:某种货物一次被某单位领取的数量定义:本次数量=1数字5位置:货物出库信息 名字:上期数量别名: 描述:某种货物的库存数量定义:上期数量=1数字5位置:货物入库信息货物出库信息名字:进货数量别名:本次数量描述:某种货物的一次入库数量定义:本次数量=1数字5位置:货物入库信息名字:出货清单别名:出货报表描述:每次出货的货物描述定义:货物编号+名称+生产日期+有效期+数量位置:输出到打印机保存到磁盘名字:需求单位名别名: 描述:惟一的标识需要货物的一个特定的单位定义:单位名=20字符20位置:部门表 货物入库信息货物出库信息名字:需求单位表别名:需求单位信息描述:是对需要货物的各单位的信息进行统计定义: 单位名+负责人+负责人联系电话+操作员 +所属工作位置:货物入库信息货物出库信息名字:操作用户表别名:操作用户信息描述:是对使用本系统的用户进行身份和权限验证用的定义:用户名+密码+所属单位+权限一+权限二+权限三+操作员位置:班级表货物需求单位信息表货物信息表货物出库表货物入库表名字:用户名别名: 描述:惟一标识本系统的用户身份定义:用户名=8字符8位置:操作用户表名字:密码别名: 描述:验证本系统的用户身份定义:密码=8字符8位置:操作用户表名字:权限三别名: 描述:标识本系统的用户对本系统查询权的使用权限定义:权限四=8字符8位置:操作用户表名字:权限二别名: 描述:标识本系统的用户对本系统出入库权的使用权限定义:权限三=8字符8位置:操作用户表名字:权限一别名: 描述:标识本系统的用户对本系统管理权使用权限定义:权限一=8字符8位置:操作用户表四、数据库概念的结构设计数据库一般分为三级模式:外模式、概念模式和内模式。外模式也就是不同用户所对的数据视图,它将数据库内部抽象的数据及其互相之间的关系表示为简单、直观的应用界面。概念模式是数据库中全部数据的逻辑结构和特征描述,通常以某种数据模型为基础。内模式是对数据的物理结构和存储方式的描述。在这里我们将要设计的是数据库的概念模式,通过对仓库货物管理系统的内容和数据流程分析及E-R图,设计如下数据项和数据结构。仓库信息。包括库房名称、库位名称、库存货物、来往客户信息、库房编号、库位编号,仓库管理员等。货物信息。包括名称、供应单位、生产单位、生产日期、货物数量、货物单价、入库时间、货物编号等。单位信息。包括单位名称、负责人、地址、联系电话等信息。货物入库信息。包括货物编号、货物名、生产单位、供应单位、本次数量、生产时间、货物单价、入库时间、经办人等信息。货物出库信息。包括货物编号、货物名、生产单位、供应单位、货物需求单位名、本次数量、生产时间、货物单价、出库时间、经办人等信息。用户信息。包括用户名称、密码、所在单位、用户权限信息、操作员、最后修改时间。数据库概念结构设计,是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及他们之间的关系,为后面的逻辑结构设计打下基础。五、数据库的逻辑结构设计:在数据库设计中相当重要的一步就是将概念模型转化为计算机上DBMS所支持的数据模型,例如,将E-R图模型转化为关系模型,道理很简单,我们设计概念模型基本上都是一些抽象的关系,在再数据库设计的实现过程中,在计算机上有效地表示出这些关系就成了数据库设计的关键。根据仓库货物管理系统的功能要求,选取SQLServer 2000作为后台数据库。在上面的实体和实体之间的E-R图设计基础上,形成数据库中的表格及表格之间的关系。该数据库由6个表组成,需求单位表、货物表、供应单位表、入库信息表、出库信息表、操作用户表。一、主表的结构设计1.需求单位信息需求单位表是对需求单位信息进行统计,包括单位名、单位编号、取货时间、地址、负责人、联系电话、操作员、所需货物、货物单价、货物数量等信息。2.供应单位信息 供应单位信息表是提供货物的单位信息的统计,包括单位编号、单位名称、负责人、联系电话、地址、所供应货物、货物单价、货物商量等信息。3.货物信息货物表是对货物信息的统计,包括名称、供应单位、生产单位、生产时间、货物数量、货物单价、入库时间、编号等。4.货物入库信息货物入库信息是对入库信息的统计,包括货物编号、货物名称、生产单位、供应单位、本次数量、生产时间、货物单价、入库时间、经办人等信息。5.操作用户信息操作用户表是对使用本系统的用户进行身份和权限验证用的,包括用户名称、密码、所在单位、用户权限信息、操作员、最后修改时间。6、货物出库信息货物出库表是对出库信息的统计。包括货物编号、货物名称、生产单位、需求单位、本次数量、生产时间、货物单价、出库时间、经办人等信息。六、仓库货物管理系统系统模块可以根据模块独立原理对软件结构进行精化。为了合理的分解,得到尽可能高的内聚、尽可能松散的耦合,最终要的是,为了得到一个易于实现、易于测试和易于维护的软件结构,应该对模块进行再分解或合并。系统功能模块图如图7.1所示:仓库货物管理系统系统模块输入模块维护模块查询模块报表模块帮助模块打印设置日志管理入库模块出库模块还原模块需求模块进货模块图4.1 系统功能模块图第四章 数据库设计一、概念设计:系统ER图根据对数据流图和数据字典的分析,我们可以确定该应用中的实体,属性和实体之间的关系,并画出如下所示的E-R图。编号取货时间负责人联系电话需求单位名需求单位操作员地址货物单价 图1.3 需求单位实体E-R生产单位供应单位生产日期名 称上 下 限货 物 货物编号需求单位货物单价货物数量入库时间图1.4货物实体E-R图库 房库房编号库房名称库存量供应单位货物电话地址管理员需求单位 图1.5 仓库E-R图供货时间货物编号单位地址单位编号单位名称供应单位联系电话负责人 图1.6 供应单位实体E-R图货物编号货物名称生产单位供应单位生产时间货物单价入库时间经办人本次数量入库信息 图1.7 入库信息实体E-R图生产单位货物名称供应单位本次数量出库信息货物单价出库时间货物编号生产时间经办人需求单位名 图1.8 出库信息实体E-R图所在单位用户权限用户名称密码操作员修改时间用 户图1.9 用户实体E-R图地址货物编号负责人负责人地址货物编号名称名称电话电话供应单位需求单位单位编号单位编号需求生产日期供应数量编号货物单价名称入库时间生产单位存储仓库名称编号货物库存量需求单位供应单位地址电话查询用户修改时间拥护权限操作员所在单位密码名称图3.10 实体和实体之间的E-R图二、逻辑设计:下面列出几个主要的数据库表设计:表2-1. 需求单位结构表列 名数据类型长 度是否允许为空说明xqdwnumbermoney8否编号(主键)xqdwnamevarchar50否单位名xqdwadressvarchar20否地址xqdwmanagervarchar8否负责人xqdwtelvarchar20是联系电话operatorvarchar8是操作员xqpricemoney8是单价xqhwvarchar20是所需货物xqamountint4否货物数量qhtimedatatime8否取货时间表2-2 供应单位信息结构表列 名数据类型长 度是否为空说 明gydwnumbermoney8否编号(主键)gydwnamevarchar20否单位名称gydwmanagervarchar8是负责人gydwtelvarchar50是联系电话gydwadressvarchar20否地址operatorvarchar8是操作员gypricemoney8是单价gyhwvarchar20是供应货物gyamountint4否货物数量表2-3 货物结构表列 名数据类型长 度是否为空说 明gydwvarchar50是供应单位hwnamevarchar8是货物名称scdwvarchar20是生产单位sctimedatatime8是生产时间amountint4是货物数量pricemoney8是货物单价rktimedatatime8是入库时间operatorvarchar8是操作员hwnumbermoney8否编号(主键)表2-4 货物入库信息结构表列名数据类型长度是否为空说 明hwnumberint4否货物编号hwnamevarchar50否货物名称scdwvarchar8否生产单位gydwvarchar50是供应单位bcslint4是本次数量sctimevarchar8是生产日期pricemoney8是货物单价rktimedatetime8是入库时间jbrvarchar8是经办人表2-5 操作用户结构表列名数据类型长度是否为空说明usernamevarchar8否用户名passwordvarchar20否密码szdwvarchar20是所在单位Qx1bit1是权限一Qx2bit1是权限二Qx3bit1是权限三operatorvarchar8是操作员表2-6 货物出库信息结构表列名数据类型长度是否为空说明hwnumberint4否货物号hwnamevarchar50否货物名scdwvarchar20否生产单位xqdwvarchar20否需求单位bcslint4是本次数量sctimevarchar8是生产日期pricemoney8是货物单价outtimedatetime8是出库时间jbrvarchar8是经办人三、物理设计在数据库中创建索引时,查询所使用的索引信息存储在索引页中。连续索引页由从一个页到下一个页的指针链接在一起。当对数据的更改影响到索引时,索引中的信息可能会在数据库中分散开来。重建索引可以重新组织索引数据(对于聚集索引还包括表数据)的存储,清除碎片。这可通过减少获得请求数据所需的页读取数来提高磁盘性能。 在 SQL Server 2000 中,如果要用一个步骤重新创建索引,而不想删除旧索引并重新创建同一索引,则使用 CREATE INDEX 语句的 DROP_EXISTING 子句可以提高效率。这一优点既适用于聚集索引也适用于非聚集索引。 以删除旧索引然后重新创建同一索引的方式重建聚集索引,是一种昂贵的方法,因为所有二级索引都使用聚集键指向数据行。如果只是删除聚集索引然后重新创建,则会使所有非聚集索引都被删除和重新创建两次。一旦删除聚集索引并再次重建该索引,就会发生这种情形。通过在一个步骤中重新创建索引,可以避免这一昂贵的做法。在一个步骤中重新创建索引时,会告诉 SQL Server 要重新组织现有索引,避免了删除和重新创建非聚集索引这些不必要的工作。该方法的另一个重要优点是可以使用现有索引中的数据排序次序,从而避免了对数据重新排序。这对于聚集索引和非聚集索引都十分有用,可以显著减少重建索引的成本。另外,通过使用 DBCC DBREINDEX 语句,SQL Server 还允许对一个表重建一个或多个索引,而不必单独重建每个索引。 DBCC DBREINDEX 也可用于重建执行 PRIMARY KEY 或 UNIQUE 约束的索引,而不必删除并创建这些约束(因为对于为执行 PRIMARY KEY 或 UNIQUE 约束而创建的索引,必须先删除该约束,然后才能删除该索引)第五章 界面设计一、程序流程图:该系统数据流程图如图3.2所示:更新库存清 单处理进 货产生进货报 表处理出 库处理出 货产生出货报 表仓库管理员经办人产生出库报 表D1 库存清单D1 库存清单D2 进货信息D4 出库信息更新 事物库存信息库存清单进货信息进货信息进货报表接收事务出货 信息出货报表D3 出货信息出货信息出库信息出库信息库存清单出库报表 图3.2 系统数据流程图二、登录界面及密码修改1、登录界面如图5.3所示 图5.3 登录界面图在用户登录时,在输入用户名和密码及用户类型的前提下将其与数据库中的数据进行对比,若一致,则打开主窗体,若不一致提示错误,并要求再次输入,若输入次数超过三次,则关闭系统。在这个部分中,需要对用户的类型存入一个全局变量,予以判断其所具有的系统使用权限,例如,用户类型为DBA,则该用户拥有系统的一切权力,可以对每一部分进行添加、删除、查找、统计等操作;而其他用户类型都依据其类型的属性,可以使用的部分也会相应减少,而只能使用一部分与其类型相匹配的功能。2、增加新用户如图5.4所示 图5.4 增加新用户三、货物添加操作及修改1、货物添加如图5.5所示: 图5.5 货物添加如图管理员查询某货物时货物名及货物号与数据库中的数据不相一致,系统提示所查货物在仓库里为空,即仓库从没存储该货物。然后管理员可根据仓库管理的需求是否保存该货物。2、货物修改此功能是对货物单价、库位、编号修改。首先系统将从数据库中读取所有可用的货物信息,其中包括编号、名称、入库时间、单价等信息,管理员可视情况分别修改。修改完毕并确认后,系统将所做修改保存,并将新的记录保存于数据库中。在仓库货物管理操作中,为了保护数据库以及考虑实际因素,对单价、编号的修改时都不能留空,同时编号的修改也不能有重复,若出现此类情况则提示出错。四、查询操作查询操作如图5.7所示 图5.7 查询操作图在执行查询操作之前通常要先在单行文本框中输入被查询的条件,在单行文本框失去聚焦时将查询条件传递给查询按钮的单击事件中,然后过滤语句依据此过滤条件过滤得出相应的数据,并显示在其他数据窗体控件中。在通常情况下,用户可以在得到要查询的信息后,对它们的各个字段进行修改,经过修改后,在退出时系统会提示进行存储。在完成了用户界面设计和程序过程设计后,基本上完成了详细设计的内容。第六章 代码与注释一、登录代码Option ExplicitDim cnt As Integer 记录确定次数Private Sub Command1_Click()Dim sql As StringDim rs_login As New ADODB.RecordsetIf Trim(txtuser.Text) = Then 判断输入的用户名是否为空 MsgBox 没有这个用户, vbOKOnly + vbExclamation, txtuser.SetFocusElse sql = select * from 系统管理 where 用户名= & txtuser.Text & rs_login.Open sql, conn, adOpenKeyset, adLockPessimistic If rs_login.EOF = True Then MsgBox 没有这个用户, vbOKOnly + vbExclamation, txtuser.SetFocus Else 检验密码是否正确 If Trim(rs_login.Fields(1) = Trim(txtpwd.Text) Then userID = txtuser.Text userpow = rs_login.Fields(2) rs_login.Close Unload Me MDIForm1.Show Else MsgBox 密码不正确, vbOKOnly + vbExclamation, txtpwd.SetFocus End If End IfEnd Ifcnt = cnt + 1If cnt = 3 Then Unload MeEnd IfExit SubEnd SubPrivate Sub Command2_Click()Unload MeEnd SubPrivate Sub Form_Load()Dim connectionstring As Stringconnectionstring = provider=Microsoft.Jet.oledb.4.0; & _ data source=cangku.mdbconn.Open connectionstringcnt = 0End SubPrivate Sub Timer1_Timer()Label3.Caption = TimeLabel4.Caption = DateEnd SubOption ExplicitDim rs_find As New ADODB.RecordsetPrivate Sub Command1_Click()On Error GoTo cmderrorDim find_date1 As StringDim find_date2 As StringIf Option1.Value = True Then sqlfind = select * from 入出库 where 货单号 between & _ Combo1(0).Text & & and & & Combo1(1).Text & End IfIf Option2.Value = True Then find_date1 = Format(CDate(comboy(0).Text & - & _ combom(0).Text & - & combod(0).Text), yyyy-mm-dd) find_date2 = Format(CDate(comboy(1).Text & - & _ combom(1).Text & - & combod(1).Text), yyyy-mm-dd) sqlfind = select * from 入出库 where 日期 between # & _ find_date1 & # & and & # & find_date2 & #End Ifrs_data1.Open sqlfind, conn, adOpenKeyset, adLockPessimistickumanage.displaygrid1Unload Mekumanage.Showcmderror:If Err.Number 0 Then MsgBox 请输入正确的查询条件!, vbOKOnly + vbExclamation, 警告End IfEnd SubPrivate Sub Command2_Click()Unload MeEnd SubPrivate Sub Form_Load()Dim i As IntegerDim j As IntegerDim sql As StringIf findok = True Then rs_data1.CloseEnd Ifsql = select * from 入出库 order by 货单号 descrs_find.CursorLocation = adUseClientrs_find.Open sql, conn, adOpenKeyset, adLockPessimisticIf rs_find.EOF = False Then 添加货单号 With rs_find Do While Not .EOF Combo1(0).AddItem .Fields(0) Combo1(1).AddItem .Fields(0) .MoveNext Loop End WithEnd IfFor i = 2001 To 2005 添加年 comboy(0).AddItem i comboy(1).AddItem iNext iFor
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 聚焦动物健康2025年生物饲料添加剂研发成果鉴定报告
- 消费金融公司用户画像精准营销策略:2025年行业深度研究报告001
- 2025年医药电商平台医药电商物流配送模式与合规监管分析报告
- 2025年元宇宙社交平台虚拟现实社交平台品牌建设研究报告
- 2025年互联网金融平台合规整改与业务模式创新研究报告
- 2025年远程医疗服务模式与医疗资源配置优化研究报告
- 2025年医院电子病历系统在医疗信息化中的应用优化与医院管理报告
- 2025年基层医疗卫生机构信息化建设标准与规范报告001
- 2025年医药企业研发外包(CRO)模式质量管理体系优化报告
- 2025年医药企业研发外包(CRO)模式企业社会责任履行报告
- 2025春季学期国开电大本科《管理英语3》一平台在线形考综合测试形考任务试题及答案
- 购房违约免责协议书
- 清华大学语文试题及答案
- 陆游旅游攻略
- 2022爱德华EST3系统SDU软件激活设备
- 2025年上半年山东济宁市任城区事业单位招聘工作人员(卫生类)161人易考易错模拟试题(共500题)试卷后附参考答案
- 股骨头坏死中医护理常规
- 血小板减少课件
- 2024《突发事件应对法》及其应用案例知识培训
- 233KWh 定制户外一体柜储能系统项目技术方案
- 12J12无障碍设施图集
评论
0/150
提交评论