dbo.sp_groupinv_bc271

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

Name Data Type Length Description
@datadiff varchar -1
@cmd varchar 10

SQL Script

SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
CREATE PROCEDURE dbo.sp_groupinv_bc271
(@datadiff varchar(max), @cmd varchar(10))
AS
BEGIN
   declare @datasplit varchar(8000)
   declare @nobl varchar(50)
   declare @tgbl date 
   declare @noinv varchar(50)
   declare @tginv date
   set @nobl = '-'
   if @cmd='cancel'
    begin
  declare @id_nonhib_hdr bigint
  DECLARE b_cursor CURSOR FOR select f_result from dbo.fn_ParseCSVString (@datadiff, '|')
  OPEN b_cursor
  FETCH NEXT FROM b_cursor INTO @datasplit
  WHILE @@FETCH_STATUS = 0 
  BEGIN -- begin here
   set @id_nonhib_hdr = (select data from dbo.Split(@datasplit, ',') where id=1)
   if (select COUNT(*) as cnt from dbo.tbl_nonhib where id_nonhib_hdr=@id_nonhib_hdr and status<>'new') >0
   begin
    select '02' as status, ' Ada data yang sudah diproses menjadi data bc, '+CHAR(13)+CHAR(10)+' silahkan recalculate data jika ingin mengubah invoice '+CHAR(13)+CHAR(10)+(select data from dbo.Split(@datasplit, ',') where id=2) as description 
    CLOSE b_cursor
    DEALLOCATE b_cursor
    return 
   end
  
  FETCH NEXT FROM b_cursor INTO @datasplit
  END
  CLOSE b_cursor
  DEALLOCATE b_cursor 
    
  -- if (select COUNT(*) as cnt from dbo.tbl_bc_in_hdr where nobl=@nobl and tglbl=@tgbl) > 0
  -- begin
  --select '02' as status, ' Ada data yang sudah diproses menjadi data bc, '+CHAR(13)+CHAR(10)+' silahkan recalculate data jika ingin mengubah invoice' as description
  --return
  -- end
    
  DECLARE a_cursor CURSOR FOR select f_result from dbo.fn_ParseCSVString (@datadiff, '|')
  OPEN a_cursor
  FETCH NEXT FROM a_cursor INTO @datasplit
  WHILE @@FETCH_STATUS = 0 
  BEGIN -- begin here
   
   --set @noinv = (select data from dbo.Split(@datasplit, ',') where id=3)
   --set @tginv = (select data from dbo.Split(@datasplit, ',') where id=4)
   update dbo.tbl_nonhib set  nobl = @nobl, tgbl =  null where [id_nonhib_hdr] = (select data from dbo.Split(@datasplit, ',') where id=1)
  
  FETCH NEXT FROM a_cursor INTO @datasplit
  END
  CLOSE a_cursor
  DEALLOCATE a_cursor 
  
  select '00' as status, ' SUKSES CANCLED' as description
 end
 
 if @cmd='proses'
    begin
  if (select COUNT(*) as cnt from dbo.tbl_bc_in_hdr where nobl=@nobl and tglbl=@tgbl) > 0 
  begin
   select '02' as status, ' Ada data yang sudah diproses menjadi data bc, '+CHAR(13)+CHAR(10)+' silahkan recalculate data jika ingin mengubah invoice' as description 
   return        
  end  
  
  
  set @tgbl = GETDATE()
  declare @hasil varchar(50)
  exec [dbo].[spu_seq] @nomor_untuk = N'noajubc271', @hasil = @hasil OUTPUT
  set @nobl = @hasil 
  
   
  DECLARE a_cursor CURSOR FOR select f_result from dbo.fn_ParseCSVString (@datadiff, '|')
  OPEN a_cursor
  FETCH NEXT FROM a_cursor INTO @datasplit
  WHILE @@FETCH_STATUS = 0 
  BEGIN -- begin here
   set @noinv = (select data from dbo.Split(@datasplit, ',') where id=2)
   set @tginv = (select data from dbo.Split(@datasplit, ',') where id=3)
   update dbo.tbl_nonhib set  nobl = @nobl, tgbl = @tgbl where [id_nonhib_hdr] = (select data from dbo.Split(@datasplit, ',') where id=1)
  FETCH NEXT FROM a_cursor INTO @datasplit
  END
  CLOSE a_cursor
  DEALLOCATE a_cursor 
  
  select '00' as status, ' SUKSES UPDATED' as description
    
    end
 
END

GO

Used By

No items found