alter procedure [dbo].[fin_providers]
@provider_temp_id varchar (20), --申请流水号(临时编号)(供应商申领材料款表)
@sq_total_money decimal (10,5) , --申请总金额 (供应商申领材料款表)
@R_f_id varchar (20), --实际上每条记录的编号
@R_f_money decimal (10,5), --实际上每条记录申领金额
@sq_money decimal(24,12),--每条记录剩余可申请金额
@errorsum int output --传出去的
as begin tran
declare @err int , --异常数
@wheretable nvarchar(2), --修改到哪张表
@rowcount int --返回执行的条数
set @err=0
begin
------------------
insert into Fin_provider_detail (F_p_id,Costid,[Money]) values (@provider_temp_id,@R_f_id ,@R_f_money) --供应商申领材料款详细表
set @rowcount=@@ROWCOUNT
--------------------
end
set @err=@err +@@error
begin
set @wheretable=( select SUBSTRING (@R_f_id,4,1))
if @wheretable='A'
begin
update Cost_material_after set Applylimit=@sq_money where Number=@R_f_id
set @rowcount=@@ROWCOUNT
set @err=@err +@@error
end
else if @wheretable='B'
begin
update Cost_machine_after set Applylimit=@sq_money where Number=@R_f_id
set @rowcount=@@ROWCOUNT
set @err=@err +@@error
end
else if @wheretable='C'
begin
update Cost_man_after set Applylimit=@sq_money where Number=@R_f_id
set @rowcount=@@ROWCOUNT
set @err=@err +@@error
end
else if @wheretable='D'
begin
update Cost_plant_after set Applylimit=@sq_money where Number=@R_f_id
set @rowcount=@@ROWCOUNT
set @err=@err +@@error
end
else
set @err=@err +@@error
end
if @err <>0 or @rowcount=0
begin
set @errorsum=0
rollback tran
return 0
end
else
begin
set @errorsum=1
commit tran
end
该怎样解决呀!!!!!!!!!!!!!!在线等
@provider_temp_id varchar (20), --申请流水号(临时编号)(供应商申领材料款表)
@sq_total_money decimal (10,5) , --申请总金额 (供应商申领材料款表)
@R_f_id varchar (20), --实际上每条记录的编号
@R_f_money decimal (10,5), --实际上每条记录申领金额
@sq_money decimal(24,12),--每条记录剩余可申请金额
@errorsum int output --传出去的
as begin tran
declare @err int , --异常数
@wheretable nvarchar(2), --修改到哪张表
@rowcount int --返回执行的条数
set @err=0
begin
------------------
insert into Fin_provider_detail (F_p_id,Costid,[Money]) values (@provider_temp_id,@R_f_id ,@R_f_money) --供应商申领材料款详细表
set @rowcount=@@ROWCOUNT
--------------------
end
set @err=@err +@@error
begin
set @wheretable=( select SUBSTRING (@R_f_id,4,1))
if @wheretable='A'
begin
update Cost_material_after set Applylimit=@sq_money where Number=@R_f_id
set @rowcount=@@ROWCOUNT
set @err=@err +@@error
end
else if @wheretable='B'
begin
update Cost_machine_after set Applylimit=@sq_money where Number=@R_f_id
set @rowcount=@@ROWCOUNT
set @err=@err +@@error
end
else if @wheretable='C'
begin
update Cost_man_after set Applylimit=@sq_money where Number=@R_f_id
set @rowcount=@@ROWCOUNT
set @err=@err +@@error
end
else if @wheretable='D'
begin
update Cost_plant_after set Applylimit=@sq_money where Number=@R_f_id
set @rowcount=@@ROWCOUNT
set @err=@err +@@error
end
else
set @err=@err +@@error
end
if @err <>0 or @rowcount=0
begin
set @errorsum=0
rollback tran
return 0
end
else
begin
set @errorsum=1
commit tran
end
该怎样解决呀!!!!!!!!!!!!!!在线等
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货