存储过程

CREATE PROCEDURE PRO_FLOW
      @OA_ID  varchar(20),             
      @DO_NO  varchar(20),             
      @STATUS varchar(500),             
      @IsFINISH varchar(1)            
    as
Declare @Str NVARCHAR(100)
declare @splitchar char(1)
declare @I int = 0
declare @S int = 0
declare @Sql NVARCHAR(500) 
declare @index int=1
PRINT(@STATUS)
SET @Sql = 'UPDATE ADMIN_DB..OA_FLOW SET SYS_DATE = GETDATE(),STATUS = '''+@STATUS+''''
PRINT(@Sql)
SET @splitchar=','


SET @Sql = @Sql+',FINSIGH' + '=''' + @IsFinish+''''
IF(@IsFinish='Y')
BEGIN
WHILE (@I<=LEN(@STATUS))
  BEGIN
   declare @f nvarchar(50)
   SET @S = CHARINDEX(@splitchar,@STATUS,@I)
   IF(@S=0)
    BEGIN
     SET @S = LEN(@STATUS)+1
    END
   IF(@I=0)
    BEGIN
    set @f= SUBSTRING(@STATUS,@I,@S)
    END
   ELSE
    BEGIN
    set @f= SUBSTRING(@STATUS,@I,@S-@I)
    END 
  PRINT(@f) 
  SET @I = @S+1 
  PRINT(@I)
  DECLARE @D INT
  SET @D = CHARINDEX('/',@f,0)
  SET @Sql = @Sql+',F'+CONVERT(varchar(10),@index) + '='''+ CONVERT(varchar(10),@index)+''',F'+CONVERT(varchar(10),@index) +'_CONF=''Y''' +',F'+CONVERT(varchar(10),@index) +'_USER=''' + SUBSTRING(@f,0,@D)+''',F'+CONVERT(varchar(10),@index) +'_DATE='''+ SUBSTRING(@f,@D+1,LEN(@f)-@D-1)+''''
  SET @index = @index + 1
  END
END
  SET @Sql = @Sql + ' WHERE DO_NO='''+@DO_NO +''''
  PRINT(@Sql)
  EXEC(@Sql)
GO  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值