设计报告 仓库管理

上传人:痛*** 文档编号:60066971 上传时间:2022-03-06 格式:DOCX 页数:24 大小:2.04MB
返回 下载 相关 举报
设计报告 仓库管理_第1页
第1页 / 共24页
设计报告 仓库管理_第2页
第2页 / 共24页
设计报告 仓库管理_第3页
第3页 / 共24页
点击查看更多>>
资源描述
东北石油大学本科生课程设计东 北 石 油 大 学课 程 设 计课 程 数据库课程设计 题 目 库存管理系统 院 系 计算机与信息技术学院 专业班级 学生姓名 学生学号 指导教师 2011年 7月 8日东北石油大学课程设计任务书课程 数据库课程设计题目 库存管理系统专业 计算机科学与技术 姓名 学号 一、主要内容:开发一个库存管理系统。设计并实现这样的一个系统主要是锻炼学生采用面向对象方法、设计思路等开发软件的能力。二、基本要求:系统主要有以下功能:首页、货物管理、仓库管理、存储规则管理、订单、货物需求、退出系统。货物管理包含货物修改、货物删除、货物添加;仓库管理包含仓库修改、添加、删除;存储管理包存储添加、修改、删除;订单包含查询和提交订单的出货、进货情况;货物需求包含查询功能。系统用户根据操作权限的差异可分为3类,即仓库管理员、分仓库管理员和采购员。除了实现上述功能以外,库存管理系统还具有友好、简洁的界面,安全性要高,稳定性要强。三、主要参考资料:1 曹斌,韩中孝.ASP.NET数据库系统项目开发实践 M.北京科学出版社,2003:93-972 陈宗兴,杜国.ASP.NET网络系统程序开发M.北京:中国水利水电出版社,2008:92-1023 徐娟,吴志山,陈金良.网页制作实用技术M.北京:清华大学出版社,2003:21-524 陈玉峰.SQL Server2000数据库开发教程M.北京:科学出版社.2003:210-211完成期限 19-20周 指导教师 专业负责人 年 月 日目 录第1章 系统分析11.1开发背景11.2系统需求分析11.3开发环境2第2章 系统设计32.1系统架构32.2系统功能模块42.3系统数据库设计5第3章 系统实现83.1登录界面83.2货物管理模块93.3货物浏览模块113.4订货单模块13第4章 系统测试154.1测试目的154.2测试项目154.3项目说明154.4测试结果16第5章 结束语19参考文献2021第1章 系统分析1.1开发背景1、计算机已经成为我们学习和工作的得力助手今天,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面:首先,计算机可以代替人工进行许多繁杂的劳动;其次,计算机可以节省许多资源;第三,计算机可以大大的提高人们的工作效率;第四,计算机可以使敏感文档更加安全,等等。2、在企事业单位用计算机管理库存物资的意义现在我国很多企事业单位对库存物资等的管理还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。归纳起来,在企事业单位用计算机代替人工管理库存物资大约有以下几点好处:1)可以存储大量的库存信息和物资相关信息,安全、高效;2)只需一到二名信息录入员即可操作系统,节省大量人力;3)可以迅速查到所需信息。1.2系统需求分析21世纪以来,人类经济高速发展,人们发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。使原本的旧的管理方法越来越不适应现在社会的发展。为了适应现代社会人们高度强烈的时间观念,库存物资管理系统为企事业单位带来了极大的方便。设计一个数据库系统,首先必须确认数据库系统的用户和用途。由于数据库系统是一个组织部门的模拟,数据库系统设计者必须对一个组织部门的基本情况有所了解,比如该组织部门的组织机构、各部门的联系、有关事物和活动以及描述它们的数据、信息流程、政策和制度、报表及其格式和有关的文档等。收集和分析这些资料的过程称为需求分析。需求分析的目标是给出应用领域中数据项、数据项之间的关系和数据操作任务的详细定义,为数据库系统的概念设计、逻辑设计和物理设计奠定基础,为优化数据库系统的逻辑结构和物理结构提供可靠依据。设计人员应与用户密切合作,用户则应积极参与,从而使设计人员对用户需求有全面、准确的理解。需求分析的过程是对现实世界深入了解的过程,数据库系统能否正确的反映现实世界主要取决于需求分析,需求分析人员既要对数据库技术有一定的了解,又要对组织部门的情况比较熟悉,一般由数据库系统设计人员和本组织部门的有关工作人员合作进行。1.2.1数据流图 数据字典以文字的形式对数据流程图中的各个成分的内容和特征进行详细解释和描述,避免人们对某些成分产生歧义,对数据进行具体的说明。数据字典中有六类条目:数据元素、数据结构、数据流、数据存储、处理过程、外部实体。不同类型的条目有不同的属性需要描述。下文将会根据它们对学生成绩管理系统进行详细的分析。开始相应管理操作退出图1-1 系统总体流程图1.3开发环境数据库是数据管理的最新技术,是计算机科学的重要分支。十年来,数据库管理系统已从专用的应用程序包发展成为通用系统软件。由于数据库具有数据的结构化、可控冗余度、较高的程序与数据独立性、易于扩充、易于编制应用程序等优点,较大的信息系统都是建立在数据库设计之上的。由于用到的数据表格多,另外考虑到实际情况,如学生基本信息的变动,我们选用SQL Server作为数据库开发,而不用Access,主要是因为Access存放的记录,在实际运用中不适合此系统;而SQL Server是一种常用的关系数据库,能存放和读取大量的数据,管理众多并发的用户,故选用SQL Server数据库。用语言进行编码。 编程语言是微软在.NET计划中重要的开发语言,它具有语法简单,功能强大,快速应用,语言自由,强大的Web服务器控件,支持跨平台,与XML相融合等。因此选择编程语言。第2章 系统设计2.1系统架构整个系统分为四个部分,仓库总管、分仓库总管、采购员和主界面。首先,因为系统是面向特定的某些对象的,所以用户进入系统应该进行身份验证。根据不同的身份进入不同的操作界面。采购员进入库存管理系统后,根据自己的权限进入货物进出维护界面,对出货、进货信息进行查看,根据菜单项可以查看货物需求、修改个人的密码、注销等操作。对于分仓库总管来说,根据自己的权限进入货品进出维护界面,查看一种货品的数量、最大存储量、当前数量等信息,同时又可以插入某种货物的进货出货状况等;还可以根据导航条查看货品需求,进行个人密码修改、注销等操作。对于仓库总管,首先进入货品信息维护界面,可以对所有货品信息进行修改删除操作,可以根据导航条对仓库信息维护、存放规则维护、货物进出记录、个人密码修改、注销等界面进行查看、修改和删除等操作。本系统是以Windows XP系统为操作平台,在.NET环境下编程实现。系统ER图:管理者货物仓库货物进出记录管理提交储存存入写入编号姓名性别权限地址编号库号地址容量最高存储量最低存储量存储量编号名称价格次提供商主提供商需求量类型进货量提交人管理人出货量图2-1 系统E-R图NNN1NNNNN12.2系统功能模块系统模块如下1:库存管理系统分仓库总管仓库总管采购员个人信息维护仓库信息维护存放规则维护货物进出记录个人密码修改货物进出维护货品进出信息货物信息管理货品需求货品需求货物信息添加货物信息修改货物信息删除图2-2 系统模块图2.3系统数据库设计综合以上分析,要实现上面的所有功能模块,数据库共要设计四个表2,它们分别是:货物表、管理员表、记录表、存储表和仓库表。表2-1 货物表序号字段名数据类型数据长度NULLPrimarykey描述1GIDInt4NY货物号2GNamevarchar50YN货物名3GPricemoney10YN当前价格4GProvider1varchar50YN主提供商5GProvider2varchar50YN次提供商6GDescribevarchar50YN描述表2-2 管理员表序号字段名数据类型数据长度NULLPrimarykey描述1UIDint4NY用户号2UNamevarchar50YN姓名3UPasswordvarchar50YN密码4UPowervarchar50YN权限6USexchar2YN性别7UAddressvarchar50YN地址8UTelvarchar50YN电话9UEmailvarchar50YN电邮10UDepint4YN负责人表2-3 记录表序号字段名数据类型数据长度NULLPrimarykey描述1RIDint4NY表号2RGIDint4YN货物号3RWIDintr4YN 仓库号4RQuantityfloat8YN所需量5RTypechar10YN类型6RManagerint4YN管理人号7RHandlervarchar50YN提(送)货人8UIDint4YN用户号9RMaxInfloat8YN最大进货量10RMaxOutfloat8YN最大出货量 表2-5存储表序号字段名数据类型数据长度NULLPrimarykey描述1SIDint4NY存储表号2SGIDint4YN货物号3SWIDint4YN仓库号4STopLinefloat8YN存储上限5SbaseLinefloat8YN存储下限6SQuantityfloat8YN存储量 表2-6仓库表序号字段名数据类型数据长度NULLPrimarykey描述1WIDint4NY仓库号2WNamevarchar50YN仓库名3WAreafloat8YN容量4WAddressvarchar50YN地址5WDescribeVarchar50YN描述6UIDint4YN用户号第3章 系统实现3.1登录界面填写正确的用户名和密码,点击登录按钮,然后根据权限进入不同的页面进行管理3。图 3-1 登录主界面If (dr.Read) ThenLabel3.Text = /将数据库中的字段内容放入session中Session(uid) = dr(uid).ToStringSession(upower) = dr(upower).ToStringSession(udep) = dr(udep).ToStringLabel3.Text = 欢迎您 + Session(uid)/判断登录用户的权限If (Session(upower).ToString().Trim = 仓库总管) ThenResponse.Redirect(goodsmanage.aspx)ElseIf (Session(upower).ToString().Trim = 分仓库管理员) ThenResponse.Redirect(goodsreserve.aspx)ElseIf (Session(upower).ToString().Trim = 采购员) ThenResponse.Redirect(orderlist.aspx)End If3.2货物管理模块图 3-2 货物管理界面仓库总管登录后跳转到此界面4,按照登录号可以对货物进行查询、修改、删除等操作。根据导航条可以跳转到个人信息维护、仓库信息维护、存放规则维护等界面进行查询、修改、删除等操作。/提取文本框中的内容然后进行修改Dim str As String str = GridView1.DataKeys(e.RowIndex).Value.ToString Dim gname As Stringgname = CType(GridView1.Rows(e.RowIndex).Cells(1).Controls(0), TextBox).Text.ToString Dim gprice As String gprice = CType(GridView1.Rows(e.RowIndex).Cells(2).Controls(0), TextBox).Text.ToString Dim gprovider1 As String gprovider1 = CType(GridView1.Rows(e.RowIndex).Cells(3).Controls(0), TextBox).Text.ToStringDim gprovider2 As String gprovider2 = CType(GridView1.Rows(e.RowIndex).Cells(4).Controls(0), TextBox).Text.ToString/连接数据库 Dim conn As OleDbConnection conn = New OleDbConnection(Provider=SQLOLEDB.1;Password=1234;Persist Security Info=True;User ID=sa;Initial Catalog=WMS;Data Source=.) Dim cmd As OleDbCommand Dim sqlstr As String sqlstr = update Goods set GName = + gname + ,GPrice= + gprice + ,GProvider1= + gprovider1 + ,GProvider2= + gprovider2 + where GID = + strcmd = New OleDbCommand(sqlstr, conn)conn.Open()cmd.ExecuteNonQuery()conn.Close()/重新绑定GridView1.EditIndex = -1bindgrid()3.2.1货物添加页面图 3-3 货物添加界面点击添加新货按钮,进入此页面。Dim conn As OleDbConnectionconn = New OleDbConnection(Provider=SQLOLEDB.1;Password=1234;Persist Security Info=True;User ID=sa;Initial Catalog=WMS;Data Source=.)Dim cmd As OleDbCommandconn.Open()Dim getinsertID As StringgetinsertID = select max(GID) from Goodscmd = New OleDbCommand(getinsertID, conn)Dim dr As OleDbDataReaderdr = cmd.ExecuteReaderdr.Read()Dim vargid As IntegerIf (dr(0).ToString = ) Thenvargid = 1Elsevargid = Convert.ToInt32(dr(0).ToString) + 1End IfDim sqlstr As StringDim gprice As Doublegprice = Convert.ToDouble(TextBox2.Text.ToString.Trim)sqlstr = insert into Goods(GID,GName,GPrice,GProvider1,GProvider2,GDescribe) values( & vargid & , & TextBox1.Text & , & gprice & , & TextBox3.Text & , & TextBox4.Text & , & TextBox5.Text & )Dim cmd1 As OleDbCommandcmd1 = New OleDbCommand(sqlstr, conn)cmd1.ExecuteNonQuery()conn.Close()MsgBox(插入成功!)3.3货物浏览模块图 3-4 货物浏览界面根据分仓库总管的权限可以对货物出货、进货进行提交和查看5。Dim conn As OleDbConnectionconn = New OleDbConnection(Provider=SQLOLEDB.1;Password=1234;Persist Security Info=True;User ID=sa;Initial Catalog=WMS;Data Source=.)Dim cmd1 As OleDbCommandDim cmd2 As OleDbCommandconn.Open()Dim getinsertID1 As StringDim getinsertID2 As StringgetinsertID1 = select max(SID) from StoregetinsertID2 = select max(RID) from Recordscmd1 = New OleDbCommand(getinsertID1, conn)cmd2 = New OleDbCommand(getinsertID2, conn)Dim dr As OleDbDataReaderdr = cmd1.ExecuteReaderdr.Read()将数据库中的id字段的最大值自动加1If (dr(0).ToString = ) Thenvarsid = 1Elsevarsid = Convert.ToInt32(dr(0).ToString) + 1End IfDim dr2 As OleDbDataReaderdr2 = cmd2.ExecuteReaderdr2.Read()将数据库中的id字段的最大值自动加1If (dr2(0).ToString = ) Thenvarrid = 1Elsevarrid = Convert.ToInt32(dr2(0).ToString) + 1End If将数据的内容添加入数据库Dim sqlstr1 As Stringsqlstr1 = insert into Store(SID,SGID,SQuantity,STopLine) values( & varsid & , & TextBox7.Text & , & TextBox1.Text & , & TextBox2.Text & )Dim cmd3 As OleDbCommandcmd3 = New OleDbCommand(sqlstr1, conn)Dim sqlstr2 As Stringsqlstr2 = insert into Records(RID,RGID,RQuantity,RType,RHandler,RMaxIn,RMaxOut) values( & varrid & , & TextBox7.Text & , & TextBox5.Text & , & RadioButtonList1.Text & , & TextBox6.Text & , & TextBox4.Text & , & TextBox3.Text & )Dim cmd4 As OleDbCommandcmd4 = New OleDbCommand(sqlstr2, conn)cmd3.ExecuteNonQuery()cmd4.ExecuteNonQuery()conn.Close()MsgBox(插入成功!)3.4订货单模块根据采购员的权限进入订货单界面,查看出货、进货状况,同时也可以修改个人密码、查询货品需求等操作。图 3-5 订货单界面根据文本框内容显示查询结果Dim conn As OleDbConnectionconn = New OleDbConnection(Provider=SQLOLEDB.1;Password=1234;Persist Security Info=True;User ID=sa;Initial Catalog=WMS;Data Source=.)Dim cmd As OleDbCommandDim sqlstr As String查询语句sqlstr = select RID,GName,WName,RQuantity,RType,RManager,RHandler from Records,Goods,Warehouses where RGID=GID AND RWID=WID and Records.RType= & DropDownList1.Text & cmd = New OleDbCommand(sqlstr, conn)conn.Open()Dim adp As New OleDbDataAdapter(cmd)Dim ds As New DataSetadp.Fill(ds, link)GridView1.DataSource = ds.Tables(link).DefaultViewGridView1.DataBind()conn.Close()显示当前用户的id号If Not IsPostBack ThenLabel3.Text = Session(uid)bindgrid()End If第4章 系统测试4.1测试目的测试为了寻找软件缺陷,评估一个程序或系统的属性和能力,确定是否符合其所需结果的活动。以防止“风险”的发生。什么是风险?风险是测试应用通不过可靠性或健壮性测试,可能会给用户带来商业上的上海的可能性有关。4.2测试项目项目测试1) 用户登录的测试;2) 添加用户的测试;3) 修改用户密码的测试;4) 添加货物信息的测试;5) 修改货物信息的测试;6) 添加存储规则的测试;7) 修改存储规则的测试;8) 添加仓库信息的的测试;9) 修改仓库信息的测试;10) 查询货物需求的测试;11) 查询订货信息的测试;4.3项目说明1、用户登录的测试该测试的目的是保证登录窗口的正确性与在错误发生时容错和纠错性。具体的通过登录框中输入空用户名,和错误的用户密码来检测系统的出错运行情况。要求系统在遇到这些情况时能给出正确的错误提示。2、添加用户的测试该测试的目的是保证登录的正确性与在错误发生时容错和纠错性。具体的通过添加记录框中输入重复的用户名,空用户名和用户密码来检测系统的出错运行情况。要求系统在遇到这些情况时能给出正确的错误提示。3、修改用户密码的测试该测试的目的是保证登录窗口的正确性与在错误发生时容错和纠错性。具体的通过添加记录框中输入用户名和密码,新密码是否修改成功来检测系统的出错运行情况。要求系统在遇到这些情况时能给出正确的错误提示。4、添加或者修改货物信息的测试该测试的目的是保证添加或者修改货物的正确性与在错误发生时容错和纠错性。具体的通过添加记录框中输入货物的货号、货物名称、当前价格、主提供商、次提供商,货物信息是否添加或修改成功来检测系统的出错运行情况。要求系统在遇到这些情况时能给出正确的错误提示。5、添加或者修改存储规则信息的测试该测试的目的是保证添加或者修改存储规则信息的正确性与在错误发生时容错和纠错性。具体的通过添加记录框中输入货品名称、存放仓库、存放下限、存放上限、存放数量,存储规则信息是否添加或修改成功来检测系统的出错运行情况。要求系统在遇到这些情况时能给出正确的错误提示。6、添加或者修改仓库信息的测试该测试的目的是保证添加或者修改课程信息窗口的正确性与在错误发生时容错和纠错性。具体的通过添加记录框中输入仓库信息的仓库名称、仓库所处地址、仓库容量、仓库主管人、仓库描述,仓库信息是否添加或修改成功来检测系统的出错运行情况。要求系统在遇到这些情况时能给出正确的错误提示。7、查询货物需求信息和订单信息的测试该测试的目的是保证查询货物需求信息的正确性与在错误发生时容错和纠错性。4.4测试结果1、货物添加图4-1 货物添加页面2、用户密码修改图4-2 用户密码修改页面3、人员信息添加图4-3 人员信息添加页面4、货物需求页面图4-4 货物需求页面第5章 结束语在学习数据库之前一直觉得数据库没有什么深入研究的价值,觉得无非是将数据存起来进行增删改查的操作就是了。直到真正接触到了数据库这门课才真地发现了这里面得奥妙和值得专研的价值。数据已然成为当今信息社会的一种极为重要的资源,各个部门无时无刻不在于数据打交道,对于这些大量数据的处理使得数据库应运而生。作为学习软件的我们对于数据库的学习更加是必不可少。虽然对于SQL语言这些东西以前基本上没有太多的接触,但是清晰易懂语言的模式并没有对学习造成太大的困扰。而实际上这学期的双语教学的确让我的学习变的有些吃力,不是因为读不懂,而是读过之后理解仅仅停留在字面意思上,不能很透彻地理解到位。但是老师课堂上深入浅出的讲解,和对于课件的翻译让我对此有了很大的弥补。对于数据库的理解已经不仅仅是知道增删改查这些简单的基本操作,知道表之间的连接,一些运算,一些模式等等。实际上,对于数据库进行建立与操作是十分复杂的,中间要经过很多考虑对于现实的结合,对于软硬件的要求都需要考虑在内。从某种意义上看来说,对于数据库的学习不仅仅改变了我对与数据库的看法,同时也改变了我对于程序设计的看法。从前简单的看到就做是不科学的,应该经过规划和研究分析才能上手。于此同时,老师留的项目其实是对于我们的所学习知识的一种检验与扩充。因为项目结合很多的其他知识,同时做项目的过程是一个对于知识的重新审视与巩固的过程。总地来说,这学期的数据库课程让我觉得有所收获,有所得。加强了对于课程本身的理解,同时也知道了更广的知识面。参考文献1费贤举,胡智喜. 基于模块化的软件工程课程体系的构建与实现 J. 常州 工学院学报. 2006:1-102 曹斌,韩中孝.ASP.NET数据库系统项目开发实践 M.北京科学出版社,20033 徐娟,吴志山,陈金良.网页制作实用技术M.北京:清华大学出版社,20034 陈宗兴,杜国.ASP.NET网络系统程序开发M.北京:中国水利水电出版社,20085 陈玉峰.SQL Server2000数据库开发教程M.北京:科学出版社,2003 东北石油大学课程设计成绩评价表课程名称数据库课程设计题目名称库存管理系统学生姓名李晓林学号080702140914指导教师姓名佟喜峰职称副教授序号评价项目指 标(优秀)满分评分1选题难度选题难度较高,或者对原题目进行了相当程度的改进。102工作量、工作态度和出勤率工作量饱满,工作努力,遵守纪律,出勤率高,工作作风严谨,善于与他人合作。103课程设计质量按期圆满的完成了规定的任务,方案设计合理,思考问题全面,系统功能完善。404报告质量问题论述思路清晰,结构严谨,文理通顺,撰写规范,图表完备正确。305回答问题在进行课程设计程序系统检查时,能正确回答指导教师所提出的问题。106创新(加分项)工作中有创新意识,对前人工作有改进或有应用价值。在进行系统检查时能对创新性进行说明,并在报告中有相应的论述。+5总分评语:指导教师: 年 月 日
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!