/****** 创建入库存储过程(rk_gc) Script Date: 2004-09-30 9:31:31 ******/
CREATE PROCEDURE rkgc
@rkdh varchar --入库单号
as
--把入库明细表里面的到货数量为'0'的删除
--delete rk_mx where '入库单号'=@rkdh and '到货数量'=0 or '到货数量'=null
--修改库存表
declare
@dhsl float, --计算入库数量
@spbm varchar --商品编码
--建立游标a crsrkcount为入库明细表同一个入库单号
declare crsrkcount cursor
for
select [商品编码],[到货数量] from rk_mx where [入库单号]=@rkdh order by '商品编码'
open crsrkcount
fetch next from crsrkcount into @spbm,@dhsl
--修改库存
while @@fetch_status=0
begin
update info_spxx set 库存数量=库存数量+@dhsl where 商品编码=@spbm
Fetch next from crsrkcount into @spbm,@dhsl
end
--关闭游标
close crsrkcount
--释放游标
deallocate crsrkcount
GO
请大家看看为什么不能修改info_spxx表里面的相关记录
CREATE PROCEDURE rkgc
@rkdh varchar --入库单号
as
--把入库明细表里面的到货数量为'0'的删除
--delete rk_mx where '入库单号'=@rkdh and '到货数量'=0 or '到货数量'=null
--修改库存表
declare
@dhsl float, --计算入库数量
@spbm varchar --商品编码
--建立游标a crsrkcount为入库明细表同一个入库单号
declare crsrkcount cursor
for
select [商品编码],[到货数量] from rk_mx where [入库单号]=@rkdh order by '商品编码'
open crsrkcount
fetch next from crsrkcount into @spbm,@dhsl
--修改库存
while @@fetch_status=0
begin
update info_spxx set 库存数量=库存数量+@dhsl where 商品编码=@spbm
Fetch next from crsrkcount into @spbm,@dhsl
end
--关闭游标
close crsrkcount
--释放游标
deallocate crsrkcount
GO
请大家看看为什么不能修改info_spxx表里面的相关记录
select [商品编码],[到货数量] from rk_mx where [入库单号]=@rkdh order by '商品编码'
查不出结果或者
@spbm varchar
的长度不够