联系方式: 微信:biyebang QQ: 629001810
摘要: 在经济全球化和信息技术飞速发展的今天,企业信息化水平的高低是带动企业技术创新和各项工作升级与否的关键。目前,基于B/S (Browser/ Server)模式的MIS(Management information system)日益成熟,企业的Web已从静态的HTML到动态的网页,使系统的开发、管理和维护变得非常方便。因此,本系统研究并开发了基于B/S模式的库存管理信息系统。 库存管理系统是将企业的存和转等企业的经营业务有机的结合起来,达到数据共享、降低成本、提高效率。本系统前台采用.NET,后台数据库采用SQL Server 2000,语言采用C#。本系统实现的主要功能有库存查询、进货作业、领料作业、库存盘点、损坏处理等。在系统完成后对工作进行了总结,对系统功能进行了测试,并指出了系统中的问题和需要改进的地方。 B/S,C#,库存管理系统,.NET
数据库设计是系统设计中非常重要的一个环节,因为数据库设计就像在建设高楼大厦的根基一样,如果设计不好,在后来的系统维护,变更和功能扩充时,甚至于在系统开发过程中,将会引起比较大的问题,有时大量的工作将会重新进行。因此,设计出合理的数据库成为本系统设计一个十分关键的步骤。 至今,数据库设计的很多工作仍需要人工来做,除了关系型数据库已有一套较完整的数据范式理论可用来部分地指导数据库设计之外,尚缺乏一套完善的数据库设计理论、方法和工具,以实现数据库设计的自动化或交互式的半自动化设计。所以数据库设计今后的研究发展方向是研究数据库设计理论,寻求能够更有效地表达语义关系的数据模型,为各阶段的设计提供自动或半自动的设计工具和集成化的开发环境,使数据库的设计更加工程化、更加规范化和更加方便易行,使得在数据库的设计中充分体现软件工程的先进思想和方法。 用户的需求具体体现在各种信息的提供,保存,更新和查询,这就要求数据库结构能充分满足各类信息的输入和输出。收集基本数据,数据结构以及数据处理的流程而制作一份详细的数据库需求分析表,为合理的数据库结构设计打下坚实的基础。 根据毕业设计库存管理系统的一般要求,再通过需求分析得出系统的实体表:用户管理表:ADMIN_LIST,总库存表:GOODS_LIST,货物明细表:GOODS_LIST,货物种类表:GOODS_TYPES,货物名表:GOODSNAME_LIST,进货明细表:JINHUO_LIST,出货明细表:CHUHUO_LIST,货物调拨表:MOVE_LIST,盘点表:PanDian_LIST,货物损坏表:SUNHUAI_LIST。共10张表。 根据系统运行分析和数据流程分析,设计出实际的数据库实体,以及他们之间的关系,为后边的数据库逻辑结构设计打基础。这些实体包括各种具体信息,通过相互之间的作用形成数据的流动。通过Microsoft Office Visio 2003软件绘制出表与表之间的逻辑关系。(如图1) 图1 库存管理系统E-R图 经过前面的需求分析和数据库表的逻辑结构设计。系统采用Microsoft SQL Server 2000作为数据库开发工具,创建名为KunCunManage数据库,根据数据功能的实现和将来系统功能的扩展,设计如下数据项: 表1 用户管理表ADMIN_LIST 简称 列名 数据类型 长度 允许空 备注 用户ID UserId char 10 not null PK 用户密码 Password char 10 not null 权限 Jurisdiction char 10 not null 表2 货物明细表GOODS_LIST 简称 列名 数据类型 长度 允许空 备注 货物号 HuoWuId char 10 not null PK 厂家 BusinessId char 10 not null PK 货物名 HuoWuName char 20 null 种类号 TypeId char 5 null 数量 SiQty int 4 null 进货价 EnterPrice decimal 9 null 出售价 OutPrice decimal 9 null 表3 总库存表GOODS_LIST 简称 列名 数据类型 长度 允许空 备注 种类名 TypeName char 50 null 种类号 TypeId char 10 not null PK 数量 SiQty int 4 null 仓库号 StoreHouseId char 10 null 库存金额 StorePrice decimal 9 null 表4 货物种类表GOODS_TYPES 简称 列名 数据类型 长度 允许空 备注 种类号 TypeId char 10 not null PK 种类名 TypeName char 50 null 表5 货物名表GOODSNAME_LIST 简称 列名 数据类型 长度 允许空 备注 货物号 HuoWuId char 10 not null PK 货物名 HuoWuName char 20 null 表6 进货明细表JINHUO_LIST 简称 列名 数据类型 长度 允许空 备注 清单编号 SeriaNumber int 4 not null PK 货物号 HuoWuId char 10 null 货物名 HuoWuName char 20 null 种类号 TypeId char 10 null 进货数量 JinHuoSiQty int 4 null 进货单价 EnterPrice decimal 9 null 进货总价 EnterTotalPrice decimal 9 null 仓库号 StoreHouseId char 10 null 厂家 BusinessId char 10 null 进货日期 DateTime datetime 8 null 表7 出货明细表CHUHUO_LIST 简称 列名 数据类型 长度 允许空 备注 清单编号 SeriaNumber int 4 not null PK 货物名 HuoWuName char 20 null 货物号 HuoWuId char 10 null 种类号 TypeId char 10 null 出货数量 ChuHuoSiQty int 4 null 出售单价 OutPrice decimal 9 null 出售总价 OutTotalPrice decimal 9 null 仓库 StoreHouseId char 10 null 厂家 BusinessId char 10 null 出货日期 DateTime datetime 8 null 领料人 PeopleName char 10 null 表8 货物调拨表MOVE_LIST 简称 列名 数据类型 长度 允许空 备注 清单编号 SeriaNumber int 4 not null PK 源仓库 SourceStoreHouseId char 10 null 目的仓库 DestinationStoreHouseId char 10 null 种类号 TypeId char 10 null 种类名 TypeName char 10 null 数量 SiQty int 4 null 日期 DateTime datetime 8 null 经手人 PeopleName varchar 50 null 表9 盘点表PanDian_LIST 简称 列名 数据类型 长度 允许空 备注 清单编号 SeriaNumber int 4 not null PK 货物号 HuoWuId char 10 null 货物名 HuoWuName char 10 null 厂家 BusinessId char 10 null 盘点数量 PanDianSiQty int 4 null 库存数量 StoreSiQty int 4 null 出售价 OutPrice decimal 9 null 盘盈 PanY decimal 9 null 盘亏 PanK decimal 9 null 日期 DateTime datetime 8 null 表10 货物损坏表SUNHUAI_LIST 简称 列名 数据类型 长度 允许空 备注 清单编号 SeriaNumber int 4 not null PK 货物名 HuoWuName char 20 null 货物号 HuoWuId char 10 null 种类号 TypeId char 10 null 损坏数量 SunHuaiSiQty int 4 null 厂家 BusinessId char 10 null 日期 DateTime datetime 8 null 1) 系统登录:与一般的登录系统相似,主要是对登录用户的身份进行合法性验证。登录身份分为两种:一般用户和管理员。若为为注册用户,则需先注册后才能登录系统。 2) 用户注册:在登录界面未注册用户通过点击注册按钮跳转到注册界面。与一般的注册流程一样,用户在注册时需检验用户名是否可用,以及密码与确认密码是否匹配。 3) 用户管理:一般用户和管理员的权限的管理都在“用户管理”模块中,系统管理员可以查看所有合法用户的信息,有权添加、删除和修改所有合法用户的信息,一般用户没有该权限。 4) 库存查询:系统的合法用户可以通过汇总查询查看库存中的所有信息,也可以选择种类名和货物名查看自己所想找的货物。 5) 进货作业:由管理员输入所进货物的详细信息,在进货单中生成一条记录。此时要判断货物几种情况:(1)该货物在库存中已经存在;(2)所进的货物在库存中不存在时又分三种情况:1是在库存中有该种类和名字但没有该厂家的货物(如库存中有墨盒1,厂家为A;墨盒1,厂家B;所进货物为墨盒1,厂家C);2是在库中有该种类但没有该名字的货物(如库中有墨盒1,墨盒2,所进货物为墨盒3);3是库中没有该种类的货物。管理员在确定数据无误后,系统会根据不同的情况对不同的表进行插入和更新。 6) 领料作业:由管理员输入所领货物的详细信息,在领货单中生成一条记录。此时要判断领出货物数量的情况:首先要判断所输入的数量是否合法(是否超出了库存数量);其次判断所领货物的数量小于和等于库存中该产品的数量。管理员在确认后,系统会根据不同的情况对不同的表进行更新和删除操作。 7) 损坏清理:属于领料作业的子功能,系统将通过损坏的货物数量对明细表和总库存表进行更新和删除操作。 8) 库存转库:管理员输入目的仓库后,系统将选定的货物的仓库转向目的仓库,达到调拨货物的作用。同种类的商品都分在同个仓库中,需要调库时需将所有同种类的货物进行转库,不再对同种类不同货物名的商品进行细分。 9) 库存盘点:管理员将实际盘存的货物数量输入计算机,计算机自动与数据库中的库存数量进行核对,并产生盘盈盘亏统计信息。计算盘盈盘亏采用了教为简便的方法,即将实际盘存的货物数量与数据库中的库存数量进行相减,得到正值即为盘盈,负值为盘亏。 10) 历史查询:用户通过输入日期,系统将列出符合该日期的数据。分为三种情况:1是只输入起始日期,则系统输出符合从起始日期开始的所有数据;2是只输入截止日期,则系统输出符合到截止日期之前包括截止日期的所有数据;3是既有起始日期也有截止日期,则系统输出满足这段时间的数据。 系统功能模块层次,如图2 图2 库存管理功能模块
3.1 数据库设计
3.2 系统模块分析与设计
版权所有© 帮我毕业网 并保留所有权利