家具城进销存管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(12)某家具城进销存管理系统
●实现家具类型、供应商信息的管理;
●实现客户信息、家具信息的管理;
●实现家具入库管理;
●实现家具的销售管理;
●实现收款管理;
●创建触发器,实现家具入库和销售时自动修改库存;
●创建存储过程统计某段时间内各种商品的入库数量和销售数量;
建立数据库相关表之间的参照完整性约束
数据库设计
一、需求分析
家具有买有卖,涉及到买家(客户)、店家、家具库。需求如下:
买家:向店家买家具
卖家:卖家具给买家
家具库:为买家发货
家具信息:家具、家具名称、规格、单位、有效期、进价、数量、当前库存
二、系统功能划分:
1.系统构图:
2.功能图
三、处理对象
商品资料:货号,条形码,品名,类型,生产商,类别,进货价,销售价
供应商资料:供货商号,简称,名称,地址,邮编,区号,地区,类型,电话,传真,电报,开户行,开户行邮编,银行帐号,税号,库房地址,库房电话,业务员,业务部门等。
客户资料: 客户编号,简称,名称,联系人,地址,邮编,去好,地区,
电话,传真,电报,开户行,开户行邮编,银行帐号,税号,性别,业务员,业务部门,授信额度等。
业务员信息:业务员号,姓名,性别,电话,手机,地址,邮编,身
份证号,类别等
仓库信息:仓库号,仓库名,类别,备注等。
订货单信息:订货单编号,日期,用户代码,用户名称,用户地址,用
户姓名,电话,开户行,银行帐号,商品货号,品名,规格,类别,订货数量等。
发货单信息:发货单编号,日期,客户代码,客户名称,客户地址,客
户姓名,电话,开户行,银行帐号,商品货号,品名,规格,类别,发货数量等。
采购合同:供货商号,货号,进价,付款方式,帐期,签定日期,合同期限等。
销售合同:客户编号,货号,售价,付款方式,帐期,签定日期,合同
期限等
四、概念设计:
1.局部E-R图
(1)、店长业务流程(2)供应部业务流程
(3)销售部业务流程:
(4)财务部销售流程:(5)、服务部业务
流程(6)、后勤部业
务流程
E-R图:、
五、创建存储过程:
创建存储过程统计某段时间内,购买家具人数和输入情况;
create proc某时间段购买家具情况
@购买日期datetime
AS
select部门编号,买家信息表,信息,购买时间from部门信息表,发单,where购买时间=@购买时间
go
execute某时间段购买情况
六、创建视图过程
创建视图查询各种药品的库存总数
create view v库存
as select家具信息表.家具编号,家具名称,数量,当前库存,库存from家具信息表,家具信息表where家具信息表.药品编号=家具信息表.家具编号
5
5,典型SQL语句
--数据库的创建 create database JSC on primary
( name = JSC_data,
filename ='D:\JSC_Data.MDF', size = 10, maxsize = 500, filegrowth = 5) log on
( name = JSC_log,
filename ='D:\JSC_Log.LDF', size = 10, maxsize = 200
filegrowth = 5); --建供货商表 create table GHS (
供货商编号nvarchar(20) Not null primary key, 供货商名称nvarchar(20)null, 供货商地址nvarchar(60)null, 供货商电话nvarchar(20)null, 供货商简介nvarchar(80)null, )
--添加顾客信息
create procedure pro_addgk (@顾客编号 nvarchar(20), @顾客姓名 nvarchar(10),
6
@顾客地址 nvarchar(10), @顾客电话 nvarchar(20)) as
insert into gk
values(@顾客编号 ,@顾客姓名, @顾客地址,@顾客电话) --修改顾客信息
create procedure pro_upgk (@顾客编号 nvarchar(20),
@顾客姓名 nvarchar(10),@顾客地址 nvarchar(10),@顾客电话 nvarchar(20)) as
update GK
set 顾客姓名=@顾客姓名,顾客地址 =@顾客地址,顾客电话=@顾客电话 where 顾客编号=@顾客编号 --删除顾客信息
create procedure pro_delgk @顾客编号 nvarchar(20) as
delete from gk
where 顾客编号=@顾客编号 --建采购表 create table CG (
采购单号int
IDENTITY
(500001, 1)Not null,
供应商编号nvarchar(20)Not null, 供应商电话nvarchar(20)null, 管理员
编号nvarchar(20)Not null, 家具编号nvarchar(20)Not null, 家具名称 nvarchar(30)null, 单价money null, 采购数量 int Not null,
金额 AS
单价*采购数量 persisted, 备注 nvarchar
(100) null,
入库日期 datetime Not null, primary key(采购单号,
供应商编号,管理员编号,家具编号) )
create procedure pro_CG (@供货商编号 nvarchar(20), @供应商电话 nvarchar(20), @管理员编号 nvarchar(20), @家具编号 nvarchar(20), @家具名称 nvarchar(30),@单价 money,@采购数量 int, @备注 nvarchar(100)) as
declare @入库日期 datetime set @入库日期 = getdate() declare @金额 money set @金额=@单价*@采购数量 insert into CG values(@供货商编号, @供应商电话,@管理员编号, @家具编号,@家具名称
,@单价,@采购数量,@备注,@入库日期 --采购触发器
create trigger tri_CGGL on CG instead of insert as begin
if(exists (select 家具编号 from KC where 家具编号 = (select 家具编号 from inserted))) begin print '仓库中已有此样式家具的信息' update KC
set 仓库数量 = 仓库数量 + (select 采购数量 from inserted ) where 家具编号 = (select 家具编号 from inserted)
insert into CG