超市管理系统ER图+模块图+数据字典+源代码目录第一章1.1系统开发目的………………………………………………………………………………….31.2背景说明 …………………………………………………………………………………31.3项目确立 ………………………………………………………………………………….31.4应用范围 ………………………………………………………………………………….31.5 定义 …………………………………………………………………………………..3第二章2.1系统功能 ……………………………………………………………………………………5 2.2系统模块 ……………………………………………………………………………………62.3数据字典 ……………………………………………………………………………………92.4、系统环境需求………………………………………………………………………………13第三章3、系统ER图:…………………………………………………………………………………15第四章4、逻辑设计文档…………………………………………………………………………………16第五章5、物理设计文档…………………………………………………………………………………19第六章6、小结 ……………………………………………………………………………………24第七章7、页面例子 ……………………………………………………………………………………25参考文献 …………………………………………………………………………………….161
超市管理系统第一章 系统概述1.1系统开发目的(1)大大提高超市的运作效率;(2)通过全面的信息采集和处理,辅助提高超市的决策水平;(3)使用本系统,可以迅速提升超市的管理水平,为降低经营成本, 提高效益,增强超市扩张力, 提供有效的技术保障。1.2背景说明21世纪,超市的竞争也进入到了一个全新的领域,竞争已不再是规模的竞争,而是技术的竞争、管理的竞争、人才的竞争。技术的提升和管理的升级是超市业的竞争核心。零售领域目前呈多元发展趋势,多种业态:超市、仓储店、便利店、特许加盟店、专卖店、货仓等相互并存。如何在激烈的竞争中扩大销售额、降低经营成本、扩大经营规模,成为超市营业者努力追求的目标。1.3项目确立针对超市的特点,为了帮助超市解决现在面临的问题,提高小型超市的竞争力,我们将开发以下系统:前台POS销售系统、后台管理系统,其中这两个子系统又包含其它一些子功能。1.4应用范围本系统适应于各种小型的超市。1.5 定义(1)商品条形码:每种商品具有唯一的条形码,对于某些价格一样的商品,可以使用自定义条形码。(2)交易清单:包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号。(3)商品积压:在一定时期内,远无法完成销售计划的商品会造成积压。(4)促销:在一定时期内,某些商品会按低于原价的促销价格销售。库存告警提示:当商品的库存数量低于库存报警数量时发出提示。(5)盘点:计算出库存、销售额、盈利等经营指标。
第二章 逻辑分析与详细分析
2.1系统功能 (1)、零售前台管理系统,本系统必须具有以下功能:○1 商品录入:根据超巿业务特点制定相关功能,可以通过输入唯一编号、扫描条形码、商品名称等来实现精确或模糊的商品扫描录入。该扫描录入方法可以充分保证各种电脑操作水平层次的人员均能准确快速地进行商品扫描录入。○2收银业务:通过扫描条形码或者直接输入商品名称(对于同类多件商品采用一次录入加数量的方式)自动计算本次交易的总金额。在顾客付款后,自动计算找零,同时打印交易清单(包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号)。如果顾客是本店会员并持有本人会员卡,则在交易前先扫描会员卡,并对所购物品全部实行95折优惠,并将所购物品的总金额累计到该会员的总消费金额中。 会员卡的有效期限为一年,满一年未续卡者,该会员卡将被注销。○3安全性:OS登陆、退出、换班与操作锁定等权限验证保护;断电自动保护最大限度防止意外及恶意非法操作。 ○4独立作业:有的断网收银即在网络服务器断开或网络不通的情况下,收银机仍能正常作业(2)、后台管理系统,本系统必须具备以下功能○1进货管理: 根据销售情况及库存情况,自动制定进货计划(亦可手工制定修改),可以避免盲目进货造成商品积压。 按计划单有选择性地进行自动入库登记。 综合查询打印计划进货与入库记录及金额。○2销售管理: 商品正常销售、促销与限量、限期及禁止销售控制。 综合查询各种销售明细记录、各地收银员收银记录以及交结账情况等。 按多种方式统计生成销售排行榜,灵活察看和打印商品销售日、月、年报表。○3库存管理: 综合查询库存明细记录。 库存状态自动告警提示。如库存过剩、少货、缺货等。软件为您预警,避免库存商品积压损失和缺货。 库存自动盘点计算。○4人员管理: 员工、会员、供货商、厂商等基本信息登记管理。 员工操作权限管理。 客户销售权限管理。
2.2系统模块主模块【注:结账日期设定:用于设置企业的每月结账日期; 模拟结账:用于进行模拟结账操作。因为结账操作是不可逆的,也就是说正式结账后商品进销汇总的数据就无法更改了,也就是说正式结账前往往要进行模拟结账,以查看结账数据是否正确;】
超市管理信息系统2.3数据字典:数据流名:商品信息说明:商品信息的存储并对其进行编码,来区别各类商品数据流来源:人工输入数据流去向:数据库并各种报表打印数据流组成:{货号,品名,拼音编码,规格,单位,产地,类别,进货价,销售价,最低售价}【注:拼音编码是商品名称的拼音简称,目的是在程序中可通过拼音编码方便地查询到所要的商品】
数据元素:供货商资料组成:{供货商号,拼音编码,简称,名称,地址,电话,传真,电报,联系人,业务员,备注}
数据流名:客户资料说明:各大客户资料数据流来源:人工输入数据流去向:数据库并报表打印数据流组成:{客户编号,拼音编码,简称,名称,联系人,地址,邮编,电话,传真,电报,性质,业务员,授信额度}【注:性质:企业的类型; 业务员:本企业与其的联系人。】
数据流名:业务员信息说明:本公司各个业务员信息数据流来源:人工输入数据流去向:数据库并各种报表打印数据流组成:{业务员号,姓名,性别,出生年月,地址,身份证号,电话,手机,类别,部门,部门主管,备注}
数据元素:仓库信息组成:{仓库号,仓库名,类别,管理员编号,备注}
数据元素名:采购合同说明:用于维护企业与供货商签订的采购合同组成:{供货商号,货号,进货价,付款方式,帐期,签订日期,合同期限,备注}
数据元素名:销售合同说明:用于维护企业与客户签订的销售合同组成:{客户编号,货号,售价,付款方式,帐期,签订日期,合同期限,备注}
数据元素名:会员资料说明:超市的会员的基本信息组成:会员编号,会员名,会员类别(普通会员、银会员、金会员),地址,电话,入会日期,积分,备注}
数据元素名:采购订单说明:用于录入企业的采购订单组成;{编号,供货商号,订货日期,有效起日,有效止日,业务员,制单员,税价合计,扣率,税率,不含税价,税额,备注}
数据元素名:采购订单明细说明:采购订单的从表组成:{编号,订单号,货号,订货数量,进价,税价合计,扣率,税率,不含税价,税额,备注}
数据元素名:进货单说明:用于录入企业的进货单组成;{编号,供货商号,进货日期,业务员,制单员,验收员,保管员,税价合计,不含税价,税额,订单号,备注}
数据元素名:进货单明细说明:进货单明细组成:{编号,进货单号,货号,进货数量,进价,售价合计,扣率,税率,不含税价,税额,仓库号,货物数量,备注}
数据元素名:销售订单说明:用于录入企业的销售订单组成:{编号,客户编号,销售日期,有效起日,有效止日,业务员,制单员,税价合计,不含税价,税额,订单号,备注}
数据元素名:销售明细说明:销售单的从表组成:{编号,销售单号,货号,销售数量,销售价,税价合计,扣率,税率,不含税价,税额,仓库号,备注}
数据元素名:销售退货单说明:用于录入企业销售退货单组成:{编号,销售单编号,货号,退货数量,销售价,税价合计,扣率,税率,不含税价,税额,仓库号,备注}
数据元素名:零售收款说明:用于门市店的pos收款管理组成:{货号,品名,单价,数量,金额,总计}
数据元素名:零售历史、说明:班次结账管理组成:{编号,业务员号,姓名,班次,日期,收款时起,收款时至,收款机号,货号,销售数量,应收金额,实收金额,库存单价,备注}
数据元素名:零售会员收款组成:{会员编号,会员类别,货号,品名,单价,数量,金额,会员折扣,总计,积分,总积分}
数据元素名:付款单说明:用于录入企业支付货款的凭证和销售应付款组成:{编号,发票号,填票日期,进货单号,货号,供货商号,数量,进货单价,金额,付款日期,详细说明,进货日期,状态,减预付,备注}【注:状态:是说明,此款项付了否】
数据元素名:收款单说明:用于录入企业收回货款的凭证和销售应收款组成:{编号,发票号,填票日期,销售单号,货号,客户编号,数量,销售价,金额,收款日期,详细说明,销售日期,状态,减预收,备注}2.4、系统环境需求2.4.1、系统模式 本系统采用C/S模式作为开发模式2.4.2、硬件环境 服务器端:高性能的计算机一台, 普通的双绞线作为连接。 客户端: 普通的计算机或者工作站, 普通的双绞线作为连接。2.4.3、软件环境 服务器端:安装Microsoft Access的服务器版本,安装windows 2000服务器版本, 配置了诺顿等必须的防毒软件。 客户端: 安装Microsoft Access的服务器版本, 安装了VB等可视化开发工具软件, 安装windows2000服务器版本。
2.5、系统安全问题信息系统尽管功能强大,技术先进,但由于受到自身体系结构,设计思路以及运行机制等限制,也隐含许多不安全因素。常见因素有:数据的输入,输出,存取与备份,源程序以及应用软件,数据库,操作系统等漏洞或缺陷,硬件,通信部分的漏洞,企业内部人员的因素,病毒,“黑客”等因素。因此,为使本系统能够真正安全,可靠,稳定地工作,必须考虑如下问题:为保证安全,不致使系统遭到意外事故的损害,系统因该能防止火,盗或其他形式的人为破坏。系统要能重建,系统应该是可审查的,系统应能进行有效控制,抗干扰能力强,系统使用者的使用权限是可识别的。
超市管理信息系统源代码第三章 系统ER图:3、系统ER图: 图3.1系统ER图说明1) 商店中的所有用户(员工)可以销售多种商品,每种商品可由不同用户(员工)销售;2) 每个顾客可以购买多种商品,不同商品可由不同顾客购买;每个供货商可以供应多种不同商品,每种商品可由多个供应商供第四章 逻辑设计文档4.1、系统关系模型1)商品信息表(商品编号,商品名称,价格,条形码,促销价格,促销起日期,促销止日期,允许打折,库存数量,库存报警数量,计划进货数,允许销售,厂商编号,供货商编号)2) 用户表(用户编号,用户名称,用户密码,用户类型)3) 会员表(会员编号,会员卡号,累积消费金额,注册日期)4) 销售表(销售编号,商品编号,销售数量,销售金额,销售日期)5) 交易表(交易编号,用户名称,交易金额,会员卡号,交易日期)6) 进货入库表(入库编号,入库商品编号,入库数量,单额,总额,入库日期,计划进货日期,入库状态)7) 供货商表(供货商编号,供货商名称,供货商地址,供货商电话)8) 厂商表(厂商编号,厂商名称,厂商地址,厂商电话)4.2、系统数据库表结构数据库表索引 表名 中文名MerchInfo 商品信息表User 用户表Menber 会员表Sale 销售表Dealing 交易表Stock 进货入库表Provide 供货商表Factory 厂商表 表4-2-1商品信息表(MerchInfo)字段名 字段类型 长度 主/外键 字段值约束 对应中文名MerchID int 4 P Not null 商品编号MerchName Varchar 50 Not null 商品名称MerchPrice Money 4 Not null 价格MerchNum Int 4 Not null 库存数量CautionNum Int 4 Not null 库存报警数量PlanNum Int 4 null 计划进货数BarCode Varchar 50 Not null 条形码SalesProPrice Money 4 促销价格SalesProDateS Datetime 8 促销起日期SalesProDateE Datetime 8 促销止日期AllowAbate Int 4 Not null 允许打折AllowSale Int 4 Not null 允许销售FactoryID Varchar 10 F Not null 厂商编号ProvideID Varchar 10 F Not null 供货商编号 表4-2-2用户表(User)字段名 字段类型 长度 主/外键 字段值约束 对应中文名UserID varchar 10 P Not null 用户编号UserName Varchar 25 Not null 用户名称UserPW Varchar 50 Not null 用户密码UserStyle Int 4 Not null 用户类型 表4-2-3会员表(Menber)字段名 字段类型 长度 主/外键 字段值约束 对应中文名MemberID Varchar 10 P Not null 会员编号MemberCard Varchar 20 Not null 会员卡号TotalCost Money 4 Not null 累积消费金额RegDate Datetime 8 Not null 注册日期 表4-2-4销售表(Sale)字段名 字段类型 长度 主/外键 字段值约束 对应中文名SaleID Varchar 10 P Not null 销售编号MerChID Varchar 10 F Not null 商品编号SaleDate Datetime 8 Not null 销售日期SaleNum Int 4 Not null 销售数量SalePrice Money 4 Not null 销售单额 表4-2-5交易表(Dealing)字段名 字段类型 长度 主/外键 字段值约束 对应中文名DealingID Varchar 10 P Not null 交易编号DealingPrice Money 4 Not null 交易金额DealingDate Money 4 Not null 交易日期MemberID Varchar 10 会员卡号UserName Varchar 10 F Not null 用户名称 表4-2-6入库纪录表(Stock)字段名 字段类型 长度 主/外键 字段值约束 对应中文名StockID Varchar 10 P Not null 入库编号MerchID Varchar 10 F Not null 入库商品编号MerchNum Int 4 Not null 入库数量MerchPrice Money 4 Not null 单额TotalPrice Money 4 Not null 总额StockDate Datetime 8 Datetime 入库日期PlanDate Datetime 8 Datetime 计划进货日期StockState Int 4 Not null 入库状态 表4-2-7供货商表(Provide)字段名 字段类型 长度 主/外键 字段值约束 对应中文名ProvideID varchar 10 P Not null 供货商编号ProvideName Varchar 50 Not null 供货商名称ProvideAddress Varchar 250 供货商地址ProvidePhone Varchar 25 供货商电话 表4-2-8厂商表(Provide)字段名 字段类型 长度 主/外键 字段值约束 对应中文名FactoryID varchar 10 P Not null 厂商编号FactoryName Varchar 50 Not null 厂商名称FactoryAddress Varchar 250 厂商地址FactoryPhone Varchar 25 厂商电话 表4-2-9
超市管理系统ER图+模块图+数据字典+源代码第五章 物理设计5、物理设计文档/*----------创建数据库----------*/create database SuperMarketdbon primary(name=SuperMarketdb,filename='C:\Program Files\Microsoft SQL Server\MSSQL\Data\SuperMarketdb.mdf',size=100MB,maxsize=200MB,filegrowth=20MB)log on(name=SuperMarketlog,filename='C:\Program Files\Microsoft SQL Server\MSSQL\Data\SuperMarketdb.ldf',size=60MB,maxsize=200MB,filegrowth=20MB)go
/*----------创建基本表----------*/use [SuperMarketdb]go/*创建交易表*/CREATE TABLE Dealing ( DealingID int identity(1,1) Primary key , DealingDate datetime NOT NULL , DealingPrice money NOT NULL , UserName varchar(25) NULL , MemberCard varchar(20) NULL) GO/*创建厂商表*/CREATE TABLE Factory ( FactoryID varchar(10) Primary key , FactoryName varchar(50) NOT NULL , FactoryAddress varchar(250) NULL , FactoryPhone varchar(50) NULL )GO/*创建会员表*/CREATE TABLE Member ( MemberID varchar(10) Primary key , MemberCard varchar(20) NOT NULL , TotalCost money NOT NULL , RegDate datetime NOT NULL )GO/*创建商品信息表*/CREATE TABLE MerchInfo ( MerchID int identity(1,1) Primary key , MerchName varchar(50) Unique NOT NULL , MerchPrice money NOT NULL , MerchNum int NOT NULL , CautionNum int NOT NULL , PlanNum int NOT NULL , BarCode varchar(20) Unique NOT NULL , SalesProPrice money NULL , SalesProDateS datetime NULL , SalesProDateE datetime NULL , AllowAbate int NOT NULL , AllowSale int NOT NULL , FactoryID int NOT NULL , ProvideID int NOT NULL) GO/*创建供应商表*/CREATE TABLE Provide ( ProvideID varchar(10) Primary key , ProvideName varchar(50) NOT NULL , ProvideAddress varchar(250) NULL , ProvidePhone varchar(25) NULL )GO/*创建销售表*/CREATE TABLE Sale ( SaleID int identity(1,1) Primary key , MerChID int NOT NULL , SaleDate datetime NOT NULL , SaleNum int NOT NULL, SalePrice money NOT NULL) GO/*创建入库表*/CREATE TABLE Stock ( StockID int identity(1,1) Primary key , MerchID int NOT NULL , MerchNum int NOT NULL , MerchPrice money NULL , TotalPrice money NULL ,lwfree.cn UserName varchar(25) NOT NULL , UserPW varchar(50) NOT NULL , UserStyle int NOT NULL ,)GO
/*----------创建表间约束----------*//*商品信息表中厂商编号、供应商编号分别与厂商表、供应商表之间的外键约束*/ALTER TABLE MerchInfo ADD CONSTRAINT [FK_MerchInfo_Factory] FOREIGN KEY ( [FactoryID] ) REFERENCES Factory ( [FactoryID] ), CONSTRAINT [FK_MerchInfo_Provide] FOREIGN KEY ( [ProvideID] ) REFERENCES Provide ( [ProvideID] )GO/*销售表中商品编号与商品信息表之间的外键约束*/ALTER TABLE Sale ADD CONSTRAINT [FK_Sale_MerchInfo] FOREIGN KEY
超市管理信息系统[MerChID] ) REFERENCES MerchInfo ( [MerchID] ) ON DELETE CASCADE GO/*入库表中商品编号与商品信息表之间的外键约束*/ALTER TABLE Stock ADD CONSTRAINT [FK_Stock_MerchInfo] FOREIGN KEY ( [MerchID] ) REFERENCES MerchInfo ( [MerchID] ) ON DELETE CASCADE GO
/*----------创建索引----------*//*在交易表上建立一个以交易编号、交易日期为索引项的非聚集索引*/CREATE nonclustered INDEX IX_Dealing ON Dealing(DealingID, DealingDate)GO/*在商品信息表上建立一个以商品编号为索引项的非聚集索引*/CREATE nonclustered INDEX IX_MerchInfo ON MerchInfo(MerchID)GO/*在销售表上建立一个以销售编号、销售日期为索引项的非聚集索引*/CREATE nonclustered INDEX IX_Sale ON Sale(SaleID, SaleDate)GO/*在入库表上建立一个以入库编号、入库日期、商品编号为索引项的非聚集索引*/CREATE nonclustered INDEX IX_Stock ON Stock(StockID, StockDate, MerchID)GO
/*----------创建视图----------*//*创建用于查询交易情况的视图*/CREATE VIEW v_DealingASSELECT DealingDate as 交易日期, UserName as 员工名称, MemberCard as 会员卡号, DealingPrice as 交易金额FROM Dealing GO/*创建用于查询进货计划的视图*/CREATE VIEW v_PlanStockASSELECT Stock.StockID as SID, MerchInfo.MerchName as 商品名称, MerchInfo.BarCode as 条形码, Factory.FactoryName as 厂商, Provide.ProvideName as 供货商, Stock.MerchNum as 计划进货数量, Stock.PlanDate as 计划进货日期FROM Stock,MerchInfo,Provide,FactoryWhere Stock.MerchID = MerchInfo.MerchID and Provide.ProvideID=MerchInfo.ProvideID and Factory.FactoryID=MerchInfo.FactoryID and Stock.StockState=0 GO/*创建用于查询销售明细记录的视图*/CREATE VIEW v_SaleASSELECT MerchInfo.MerchName as 商品名称, MerchInfo.BarCode as 条形码, MerchInfo.MerchPrice as 商品价格, Sale.SalePrice as 销售价格, Sale.SaleNum as 销售数量, Sale.SaleDate as 销售日期FROM Sale INNER JOIN MerchInfo ON Sale.MerChID = MerchInfo.MerchID GO/*创建用于查询入库情况的视图*/CREATE VIEW v_StockASSELECT MerchInfo.MerchName as 商品名称, MerchInfo.BarCode as 条形码, Factory.FactoryName as 厂商, Provide.ProvideName as 供货商, Stock.MerchPrice as 入库价格, Stock.MerchNum as 入库数量, Stock.TotalPrice as 入库总额, Stock.StockDate as 入库日期FROM Stock,MerchInfo,Provide,FactoryWhere Stock.MerchID = MerchInfo.MerchID and Provide.ProvideID=MerchInfo.ProvideID and Factory.FactoryID=MerchInfo.FactoryID and Stock.StockState=1 GO
超市管理系统ER图+模块图+数据字典+源代码第六章6、小结和传统管理模式相比较,使用本系统,毫无疑问会大大提高超市的运作效率,辅助提高超市的决策水平,管理水平,为降低经营成本, 提高效益,减少差错,节省人力,减少顾客购物时间,增加客流量,提高顾客满意度,增强超市扩张能力, 提供有效的技术保障。由于开发者能力有限,加上时间仓促,本系统难免会出现一些不足之处,例如:1) 本系统只适合小型超市使用,不能适合中大型超市使用;2) 超市管理系统涉及范围宽,要解决的问题多,功能复杂,实现困难,但由于限于时间,本系统只能做出其中的一部分功能;对于以上出现的问题,我们深表歉意,如发现还有其它问题,希望老师批评指正第七章 界面设计7、页面设计 例子如下: