您的位置:首页 > 其它

在一个存储过程里面执行另一个存储过程的应用

2010-03-31 14:08 302 查看
代码

代码

ALTER PROCEDURE [dbo].[VoucherOutBound_BackInsurance]
-- Add the parameters for the stored procedure here
@IU_Id int,
@ICC_ID int,
@IC_ID int,
@UV_CurrentNO varchar(25),
@UV_VMoney decimal(18,2)
AS
DECLARE @snum bigint, @fnum bigint,@VO_StartNumber varchar(25),@outNumber varchar(25),@newCuid bigint,@nextVum varchar(25),@dt datetime,@count int
BEGIN tran

--查询需要插入的下一条记录
set @snum = CAST(substring(@outNumber,7,len(@outNumber)) as bigint)+1
set @nextVum =substring(@outNumber,1,6) + REPLICATE('0',len(@outNumber)-len(@snum)-6)+ cast(@snum as varchar(16))
set @dt=getdate()

--执行添加的存储过程
a_Add 这个是存储过程的名,后面的都是参数 ,@count=@count 这个是输出参数

EXEC a_Add @IC_Id=@IC_Id,@ICC_Id=@ICC_Id,@VO_StartNumber=@outNumber,@VO_StopNumber=@outNumber,@VO_Number=1,@IU_Id=@IU_Id,@VO_CreateDate=@dt,@VO_State=2,@VO_NextOutNum=@nextVum,@count=@count

EXEC b_Add @IC_Id=@IC_Id,@ICC_Id=@ICC_Id,@VC_VoucherNumber=@UV_CurrentNO,@VC_Underwrite=@dt,@IU_Id=@IU_Id,@VC_CreateDate=@dt,@count=@count

if(@@ERROR<>0)
BEGIN
PRINT '有错误,回滚'
ROLLBACK tran --事务回滚语句
END
ELSE
BEGIN
PRINT '成功,提交'
COMMIT tran --事务提交语句
end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐