超市进销存管理系统分析与设计Word文档下载推荐.docx
《超市进销存管理系统分析与设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《超市进销存管理系统分析与设计Word文档下载推荐.docx(39页珍藏版)》请在冰点文库上搜索。
另外,还提供经济订货量计算功能和打印订货采购单功能。
(6)支持超市盘点功能,可按仓库、物料进行盘点,自动汇总盘点数据,及时生成盘赢亏调整单
(7)可及时打印超市余额,方便领导决策或安排及时定货.
开发环境:
VB是微软公司出品的一个快速可视化程序开发工具软件,借助微软在操作系统和办公软件的垄断地位,VB在短短的几年内风靡全球。
VB是极有特色和功能强大的软件,主要表现在:
所见即所得的界面设计,基于对象的设计方法,极短的软件开发周期,较易维护的生成代码。
美国微软公司在1991年推出VB1.0至今已经经历了6个版本,VB6.0运行在Win9x或Winme,Win2000,Winxp,WindowsNT等操作系统下,是一个32位的应用程序开发工具。
Access2000就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。
Access的优点在于它能使用数据表示图或自定义窗体收集信息。
数据表示图提供了一种类似于Excel的电子表格,可以使数据库一目了然。
另外,Access允许创建自定义报表用于打印或输出数据库中的信息。
Access也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。
Access是一种关系数据库工具,关系数据库是已开发的最通用的数据库之一。
如上所述,Access作为关系数据库开发具备了许多优点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。
2需求分析
2.1系统功能分析
(1)基本信息的维护
商品类型的建立与维护,包括商品类型的新建、修改和删除等。
商品基本信息管理:
包括商品基本信息的新建、修改和删除等。
供货商信息管理:
包括供货商信息的新建、修改和删除等。
管理员信息管理:
系统管理员的添加、删除和修改密码等。
(2)进货管理
商品进货信息管理:
商品进货信息包括商品进货数量、单价、供货商等。
商品进货管理功能完成进货信息登记、修改和删除等。
分类查看:
可以根据商品类型来查看某种商品的进货情况。
更新库存:
进货信息的变动直接关系到库存的变化。
进货分析:
列出当前进货量最多的前几项商品和进货量最少的前几项商品。
库存分析:
列出当前库存量最多的前几项商品和库存量最少的前几项商品。
(3)销售管理
商品销售信息管理:
商品销售信息包括商品销售数量、单价、统计日期等。
商品销售管理功能完成销售信息登记、修改和删除等。
可以根据商品类型来查看某种商品的销售情况。
销售信息的变动直接关系到库存的变化。
销售分析:
列出当前销售量最多的前几项商品和销售量最少的前几项商品。
(4)报损管理
商品报损信息管理:
商品报损信息包括商品报损数量、报损原因等。
商品报损管理功能完成报损信息登记、修改和删除等。
可以根据商品类型来查看某种商品的报损情况。
报损信息的变动同样直接关系到库存的变化。
报损分析:
列出当前报损量最多的前几项商品和报损量最少的前几项商品。
2.2系统性能分析
(1)多层结构设计
严格意义上的三层结构设计,其程序逻辑结构分为用户界面层、业务逻辑处理层和数据存储层。
本系统采用的上有三层结构进一步扩展而成的多层结构。
(2)面向对象设计
在系统中将商品类型、商品等都封装成相应的类,同时每个类都有自己对应的集合类和操作类,从而再次提高了对数据库操作的安全性和程序的可扩展性。
(3)指导经营的功能
进销存管理系统并不仅仅能代替传统的书面操作,更重要的是它提供了信息分析的功能,只要单击一个按钮就可以查到目前销售最好的商品或是库存最多的商品,从而起到指导经营的作用。
2.3系统功能模块设计
按结构化程序设计思想,分析得本系统有以下几大部分
如下系统功能模块图:
有管理员登录,商品管理模块,供货商,商品进货,销售管理,报损管理,销售分析等。
图2.1系统功能模块图
2.4技术可行性分析
本系统是一个典型的数据库应用程序。
现有的数据库应用程序开发技术已非常成熟,利用现有技术完全可以实现预定的功能。
VisualBasic语言简单、功能强大并容易掌握,而Access是一个非常优秀的小型数据库管理软件,方便使用,性能稳定。
于是,采用VisualBasic+Acess技术完全能够实现本系统的开发。
本系统在使用上比较方便、简单;
界面设计上美观大方;
后期维护上比较容易,如要对功能模块方面作修改,则无需进行整个系统的重新架构
2.5系统流程图
超市管理系统的基本流程
入库:
供货单位发货---运输---货物到达后测试检验---送货单---库管人员查收入库---入库单处理各种入库业务,如:
工业企业的生产入库、委外加工入库、其他入库等入库业务;
按入库类型可以分别在不同模块录入入库单据信息。
出库:
超市统计表---各使用单位---领料单----库管人员出库---出库单
处理各种出库业务,如:
工业企业的生产领料、委外领料、其他出库等出库业务;
按出库类型可以分别在不同模块录入出库单据信息。
退货:
产品不合格通知书---各使用单位----领料单存根---库管人员退货---退货单
订货:
超市进销存管理部门向采购部门发出采购单---采购部门向供应单位传递订货单---供应单位组织发货---运输----货物到达后测试检验---入库
盘点:
备份超市数据,打印盘点表,可按仓库、批次进行盘点,并根据盘点表生成盘盈、盘亏表,调整超市账。
盘点的功能是检查仓库现有超市量与帐面数量是否一致。
若盘点结果是仓库现有超市量大于帐面数量,则盘盈;
若盘点结果是仓库现有超市量小于帐面数量,则盘亏。
无论是盘盈还是盘亏,它们的差异量都记录在盘点调整单。
如图2.2
图2.2系统流程图
3设计
超市进销存管理系统将包含以下内容:
(1)能对企业内的各类货物进行ABC分类管理,并提供最低超市量、最高超市量、安全超市量的预警功能。
(2)可以存储各类信息档案包括物资、产品基本信息、供货单位信息、使用单位信息等。
(3)可以方便快捷的进行物资入库管理\物资出库管理等等,安全、高效;
(4)提供退货管理功能
(5)通过查询超市,及时了解超市余额信息,便于订货下单,以免由于缺货,影响生产。
(6)支持超市盘点功能,可按仓库、物料进行盘点,自动汇总盘点数据,及时生成盘赢亏调整单。
(7)可及时打印超市余额,方便领导决策或安排及时定货看。
如下图3.1
图3.1系统功能模块图
4数据库设计
4.1数据库需求分析
(1)针对超市进销存管理系统,分别对采购部门、销售部门和库存保管部门进行详细的调研和分析,总结出如下的需求信息:
商品按类管理,所以需要有一商品类型信息。
商品必须属于一个商品类型。
如果一个商品类型存在商品,或存在下级商品类型,则该类型不可删除。
需要记录供应商品信息。
在涉及商品数量的地方,要给出相应的单位。
商品销售信息单中要包含登记商品销售数量、单价等信息。
在进货信息中要包含商品供应商等信息。
商品报损要有报损原因。
进货、销售、报损操作要有相应操作员信息。
只有管理员登录之后才可以使用系统。
默认的管理员不可以删除。
进货、销售、库存、报损信息都要可以添加、修改、删除、分类查找。
当进行进货、销售和报损操作后,能相应更新库存。
需要对进货、销售、库存、报损进行分析,总结热门商品。
(2)经上述系统功能分析和需求总结,考虑到将来功能的扩展,设计如下的数据项和数据结构:
商品类型信息,包括数据项有:
商品类型编号、商品类型名称等。
商品信息,包括的数据项有:
商品编号、商品名称、商品介绍、库存量等。
商品单位信息,包括单位编号、单位名称等。
供应商信息,包括供应商名称、介绍等。
进货信息,包括进货商品、数量、单位、单价、进货时间经手人等。
销售信息,包括销售商品、数量、单位、单价、登记时间等。
报损信息,包括报损商品、数量、单位、原因、登记时间等。
管理员信息,包括管理员账号、密码、是否是默认账号等。
4.2数据库概念结构设计
本系统根据以上的设计规划出的实体有:
商品类型信息实体、商品信息实体、商品单位信息实体、供应商信息实体、进货信息实体、销售信息实体、报损信息实体和管理员信息实体。
4.3数据库逻辑结构设计
首先将罪犯管理信息系统的数据库概念结构转化为Access数据库或SQLServer2000数据库系统所支持的实际数据模型,即:
数据库的逻辑结构。
其各个表格的设计
表4.1商品类型信息表(MerchandiseType)
列名
数据类型
字段大小
必填字段
默认值
说明
MT_ID_N
自动编号
长整型
是
商品类型号,递增,主键
MT_Name_S
文本
15
商品类型名
MT_RemarkR
备注
表4.2:
商品信息表(Merchandise)
M_Id_N
商品编号,递增,主键
M_Name_S
80
商品名称
M_Introduce_S
255
商品介绍
M_TypeId_N
数字
1
商品类型ID
M_Storage_N
库存量
M_UnitId_N
单位编号
M_Remark_R
表4.3:
商品单位信息表(Unit)
U_ID_N
单位编号,递增,主健
U_NAME_S
10
单位名称
表4.4:
供应商信息表(Provider)
P_Id_N
供货商编号,主健
P_Name_S
50
供货商名称
P_Introduce_S
供货商简介
P_Remark_R
表4.5:
进货信息表(Buy)
B_ID_N
进货ID,递增,主健
B_ProviderId_N
供应商ID
B_MerchandiseId_N
数学
商品ID
B_StockDate_D
日期
短日期
Dare()
进货时间
B_Deliver_S
20
送货人姓名
B_Consignee_S
经手人姓名
B_Count_N
购入量
B_StockPrice_N
单精度型
进货单价
B_OperatorId_S
操作员ID
B_Remark_R
表4.6:
销售信息表(Sell)
S_ID_N
销售编号,递增,主键
S_MerchandiseID_D
S_RegDate_D
Date()
登记日期
S_Count_N
售出数量
S_SellPrice_N
卖出单价
S_OperatorId_S
S_Remark_R
表4.7:
报损信息表(Dispose)
D_ID_N
报损编号,递增,主键
D_MerchandiseID_N
D_RegDate_D
D_Count_N
报损数量
D_Reason_S
报损原因
D_Operatorld_S
D_Remark_R
表4.8:
管理员信息实体(Admins)
A_Account_S
账号,主键
A_Pwd_S
密码
A_IsDefault_B
是/否
False
是否是默认用户
4.4数据库的生成与配置
经过以上的需求分析和概念结构设计以后,得到数据库的逻辑结构。
现在就可以在Access数据库中创建表了。
4.5创建应用程序结构
(1)创建用户界面端程序
VB中选择文件-新建工程,打开,选择VB应用程序向导。
设置后将向导生成的模块命名mdlMain保存与文件夹Merchandise中。
(2)创建业务逻辑处理组件
新建ActiveXDLL工程-设置工程属性-加入对ADO的引用。
(3)创建基本界面组件
新建ActiveXDLL工程-设置工程属性-加入对业务逻辑组件的引用。
(4)在界面端程序中使用组件
在工程资源管理器中选中工程Merchandise,选择菜单工程-引用命令。
打开引用对话框,在可用的引用列表中选择BuySellStorageUI和BuySellStorageDB。
5详细设计
5.1开发业务逻辑处理组件
进销存业务处理组件用来处理进销存管理系统中的业务逻辑,既负责与界面进行数据传递,同时也要将界面端的请求应用业务逻辑之后对数据库进行操作。
它包含以下功能:
商品类型信息管理,对应clsMType类和clsMTypes类。
商品信息管理,对应clsMerchandise类和clsMerchandises类。
供应商信息管理,对应ClsProvider类和ClsProviders类。
进货信息管理,对应clsBuy类和clsBuys类.销售信息管理,对应clsSell类和clsSells类。
报损信息管理,对应clsDispose类和clsDisposes类。
管理员信息管理,对应clsAdmini类和clsAdminis类。
5.1.1信息管理类加集合类的设计思想
在本组件中,每一个模块的设计都是由这个模块的信息管理类加与之对应的集合类求实现的。
具体完成的功能如下:
在信息管理类:
实现与单个信息相关的操作,包括添加、修改和删除。
在信息管理集合类:
实现与多个信息先观的操作,主要是根据不用的条件查找。
因此,每个模块在设计上都是独立的,除非它在逻辑上有不可分割的关系,如进货信息的操作,与商品库存直接挂钩,将进货信息表的操作与商品表的操作放入到一个事务中,这样来确保数据的安全性与一致性。
5.1.2商品类型信息管理模块
商品类型信息管理模块的功能需要由clsMType和clsMTypes两个类来实现,它的主要功能是:
添加商品类型信息。
修改商品类型信息。
删除商品类型信息。
查找商品类型信息。
其他与商品类型相关的常用操作。
(1)商品类型信息管理类clsMType创建clsMType类并添加属性
商品类型信息类clsMType用来处理单个商品类型的信息,实现商品类型操作的基本功能,如添加、修改、删除等。
选择菜单[工程]—[添加类模块]命令,打开“添加类模块”对话框,选择“VB类生成器”,使用类生成器向工程中添加clsMType类,基于下拉列表框中选择clsDBbase。
如下表所示。
表5.1
属性名称
属性声明
ID
Long
Get/Let
SuperID
TypeName
String
属性添加完毕并应用后,可以看到在clsMType类中已经自动添加了类的成员变量和属性。
(2)AddNew方法功能:
添加耽搁商品类型。
参数设计:
无。
返回值:
gxcAddNew类型请参考clsPublic类中gxcAddNew枚举类型的定义。
(3)Update方法功能:
修改商品类型。
gxcUpdate类型,请参考clsPublic类中gxcUpdate枚举类型的定义。
(4)Delete方法功能:
删除商品类型。
可选参数lngID表示商品类型ID,默认为-1。
gxcDelete类型,请参考clsPublic类中gxcDelete枚举类型的定义。
商品类型信息管理集合类clsMTypes
商品类型信息集合类clsMTypes用来处理多个商品类型的信息,其最小的单元是clsMType,它完成与一组商品类型信息相关的操作,比如查找功能。
选择菜单[工程]—[添加类模块]命令,打开“添加类模块”对话框,选择“VB类生成器”,使用类生成器在工程中添加一个集合类,命名为clsMTypes类,在“基于”下拉列表框中选择clsDBbases,在“集合组成”栏中选择clsMType类。
应用设置后系统会自动生成一个标准集合类所具有的最基本属性与方法,另外也加入了clsDBbases中方法的定义。
添加AddEx方法添加Find方法
功能:
根据给定参数查找商品类型,结果以clsMTypes类型返回。
一个可选的类型ID,默认值为-1。
clsMTypes类型,一个clsMType的集合。
省略参数时,返回全部商品类型。
5.1.3商品信息管理模块
商品信息管理模块的功能需要有clsMerch和clsMerchs两个类来实现,它的主要功能是:
添加商品信息修改商品,信息删除商品信息查找商品信息,其他与商品信息相关的常用操作
(1)商品信息管理类clsMerch
创建clsMerch类并添加属性
商品编号
MerchName
Introduce
Integer
TypeId
gxcSex
Storage
UnitID
Remark
商品类型名称
AddNew方法,功能:
添加单个商品信息,参数设计:
gxcAddNew类型,参考clsPublic类中gxcAddNew枚举类型的定义。
Update方法,功能:
修改商品信息。
Delete方法功能:
删除商品信息。
可选参数lngID表示商品ID,默认为-1。
商品信息管理集合类clsMerchs
商品信息集合类clsMerchs用来具体处理多个商品的信息,其最小的单元是clsMerch,它完成与一组商品信息相关的操作,比如查找等。
选择菜单[工程]—[添加类模块]命令,打开“添加类模块”对话框,选择“VB类生成器”,使用类生成器在工程中添加一个集合类,命名为clsMerchs类,在“基于”下拉列表框中选择clsDBbases,在“集合组成”栏中选择clsMerch类。
应用设置后系统会自动生成一个标准集合类所具有的最基本属性与方法,下面,为clsMerchs添加必要的方法。
添加AddEx方法,添加Find方法功能:
根据给定参数查找商品信息,结果以clsMerchs类型返回。
如下表5.2。
clsMerchs类型,一个clsMerch的集合。
显然当上面两个参数都不指定时,返回全部商品。