NJC__Documentation::DB

dbo.spi_incoming_bc27pasi_out

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

Name Data Type Length Description
@id_data_in_hdr bigint 8
@user varchar 70

SQL Script

SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
CREATE PROCEDURE dbo.spi_incoming_bc27pasi_out
 (@id_data_in_hdr bigint, @user varchar(70))
AS
BEGIN
 declare @sts_no varchar(2)  
 declare @sts_des varchar(500)  
 declare @doc_out_no varchar(50)
    declare @hasil varchar(50)
    exec [dbo].[spu_seq] @nomor_untuk = N'stock_transfer', @hasil = @hasil OUTPUT
    set @doc_out_no = @hasil 
 -- CHECK APAKA ID VGI HDR SUDAH DI ADA? doc_out_to_id = 1 data out produksi
 declare @userx varchar(100)
 set  @userx=@user
   if (

 SELECT     COUNT(*) AS Expr1
 FROM         tbl_data_out_hdr
 WHERE     (doc_out_to_id = 10) AND (id_terkait = @id_data_in_hdr))>0
 begin
 set @sts_no  ='09'
 set @sts_des ='Sudah Pernah di transfer'
 goto f
 end
 
 if (select COUNT(*) from tbl_data_in_hdr where doc_in_from_id=4 and [id_data_in_hdr] = @id_data_in_hdr)=0
 begin
  
  set @sts_no  ='01'
  set @sts_des ='Data Tidak Ditemukan'
  goto f 
 end


BEGIN TRY  
 BEGIN TRANSACTION 
 --insert header
 

 declare @id_data_out_hdr bigint
 insert into tbl_data_out_hdr(
  doc_out_no
  ,doc_out_date
  ,id_terkait
  ,doc_out_to_id
   ,[create_by]
      ,[update_by]
      ,[update_date]
      ,[create_date]
       
 ) select 
 @doc_out_no
 ,doc_in_date
 ,@id_data_in_hdr
 ,10  -- keluar ke produksi kanban
 ,@user
 ,@user
 ,GETDATE()
 ,GETDATE()
 from tbl_data_in_hdr where [id_data_in_hdr] = @id_data_in_hdr
 
 set @id_data_out_hdr=@@IDENTITY
 
 -- insert h status
 declare @id_data_out_hdr_h_status bigint
 INSERT INTO tbl_data_out_hdr_h_status
        (id_data_out_hdr, status_date, status, create_by, create_date, update_by, update_date)
 VALUES     (@id_data_out_hdr, GETDATE(), 'DATA PROCESSED', @user, GETDATE(), @user, GETDATE())
 set @id_data_out_hdr_h_status =@@IDENTITY

 declare @date_out date
 set @date_out = (select top 1 doc_out_date from tbl_data_out_hdr where id_data_out_hdr=@id_data_out_hdr)

 INSERT INTO tbl_data_out_dtl
    (
  id_data_out_hdr
  ,id_part_number
  ,out_date
  ,part_name_customs
  ,part_number
  ,qty
  ,qty_supply
  ,unit_out
  ,unit_konversi
  ,pengali
  ,box
  ,pack
  ,assy_code
  ,type_items
  )
 select 
 @id_data_out_hdr
 ,0
 ,@date_out
 ,part_name_customs
 ,[part_number]
 ,isnull(qty_in,0)
 ,isnull(qty_in,0)
 ,'M'
 ,'M'
 ,1
 ,1
 ,1
 ,'-'
 ,'RM'
 from dbo.[tbl_data_in_dtl] where [id_data_in_hdr] = @id_data_in_hdr
 
 
 
 UPDATE    tbl_data_out_hdr
 SET              id_data_out_hdr_h_status = @id_data_out_hdr_h_status
 WHERE     (id_data_out_hdr = @id_data_out_hdr)

 declare @idterkait bigint
 set @idterkait = (select top 1 id_terkait from tbl_data_out_hdr where id_data_out_hdr=@id_data_out_hdr)

 EXEC dbo.[spi_outgoing_approved]
   @id_data_out_hdr=@id_data_out_hdr , 
   @id_terkait=@idterkait, 
   @doc_out_to_id =10, 
   @user=@userx
 
  
 
 COMMIT
END TRY
BEGIN CATCH
  -- Whoops, there was an error
  IF @@TRANCOUNT > 0
     ROLLBACK

  -- Raise an error with the details of the exception
  DECLARE @ErrMsg nvarchar(4000), @ErrSeverity int
  Set @ErrMsg = ERROR_MESSAGE()
  set @ErrSeverity = ERROR_SEVERITY()
  select @ErrMsg as description,@ErrSeverity as status
  RAISERROR(@ErrMsg, @ErrSeverity, 1)
END CATCH    

set @sts_no  ='00'
 set @sts_des ='Data Processed with ID '+CAST(@id_data_out_hdr as varchar(255))
 goto f
 
f:
set nocount off
 select @sts_no as status , @sts_des as description
END


--GO

--EXEC [dbo].[sp_stock_transfer]
-- @id_vgi_hdr = 23

--GO
GO

Used By

No items found