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


    代码
    代码 

    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


     
  • 相关阅读:
    深入剖析.NET运行机制
    在浏览器地址中加参数
    mysql 中文乱码
    今天在看一些面试题的时候遇到的一个关于strcmp()返回值的细节问题
    如何在学习过程中统一IDE的编码!
    通过文件方式,在文件内容开头写入字符串!
    Java编写圆的相关计算
    leetcode 上的Counting Bits 总结
    cocos2dx打包apk
    CEGUI0.8.4例子
  • 原文地址:https://www.cnblogs.com/wanglinglong/p/1701358.html
Copyright © 2020-2023  润新知