NJC__Documentation::DB

dbo.MG_MS_BC_OUT_SEND_TO_MODULE

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

Name Data Type Length Description
@PARAMETER xml -1

SQL Script

SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
create procedure dbo.MG_MS_BC_OUT_SEND_TO_MODULE
@PARAMETER xml='' 
---XencX---with encryption
as

SET TRANSACTION ISOLATION LEVEL  READ UNCOMMITTED

declare @pemisah varchar(255)
declare @pemisah_replace varchar(255)
set @pemisah_replace='<br />'
--set @pemisah=CHAR(13) + CHAR(10) + '
'

set @pemisah = '
'


declare @resultX varchar(max)
declare @resultX2 varchar(max)

declare @XmlSts xml
declare @raw xml
declare @xStsnoheader varchar(2),
  @xStsno varchar(2),
  @xStsdes varchar(max)
   
set @xStsnoheader='07'
set @xStsno='00';
set @xStsdes='sukses'
 
BEGIN TRY
SET NOCOUNT ON
DECLARE @NOW datetime
set @NOW =GETDATE() 

DECLARE 
@data_by varchar(50) 
,@ID_HEADER bigint  
,@tdd_kota varchar(255) 
,@tdd_name varchar(255) 
,@tdd_jabatan varchar(255) 

SELECT 
  @data_by=left(ltrim(rtrim(isnull(tempTable.item.value('data_by[1]', 'varchar(100)'),''))),50) 
, @ID_HEADER=isnull(tempTable.item.value('ID_HEADER[1]', 'bigint'),-1)  
, @tdd_kota=left(ltrim(rtrim(isnull(tempTable.item.value('tdd_kota[1]', 'varchar(255)'),'TANGERANG'))),255) 
, @tdd_name=left(ltrim(rtrim(isnull(tempTable.item.value('tdd_name[1]', 'varchar(255)'),''))),255) 
, @tdd_jabatan=left(ltrim(rtrim(isnull(tempTable.item.value('tdd_jabatan[1]', 'varchar(255)'),''))),255) 

FROM @PARAMETER.nodes('param/field')  tempTable(item) 
 
--UPDATE dt_static_value
--SET static_value =@tdd_name
--WHERE (static_id = 10100 )
--UPDATE dt_static_value
--SET static_value = @tdd_jabatan
--WHERE (static_id =10101 )
 

declare @c_id_header bigint
,@c_status_tpb_out_id int
,@c_status_tpb_out_name varchar(255)
,@c_NOMOR_AJU varchar(255)
,@c_TANGGAL_DAFTAR date
,@c_NOMOR_DAFTAR varchar(255)
,@c_ID_HEADER_ORI bigint
 declare @c_KODE_STATUS varchar(10)
if @c_id_header =-1
begin
 set @xStsno='02';
 set @xStsdes='Gagal, Header dokumen tidak di temukan(-1)' ;
 goto f 

end



declare @KODE_DOKUMEN_PABEAN varchar(255)
SELECT   top (1)  
 @c_id_header=ID_HEADER
,@c_status_tpb_out_id= status_tpb_out_id
,@c_status_tpb_out_name= status_tpb_out_name
,@c_NOMOR_AJU=NOMOR_AJU
,@c_TANGGAL_DAFTAR= TANGGAL_DAFTAR
,@c_NOMOR_DAFTAR= NOMOR_DAFTAR
,@c_ID_HEADER_ORI =ID_HEADER_ORI
,@c_KODE_STATUS= KODE_STATUS
,@KODE_DOKUMEN_PABEAN=        KODE_DOKUMEN_PABEAN
FROM            vw_ms_header_bc_out
WHERE        (ID_HEADER = @ID_HEADER)


if @c_id_header is null
begin
 set @xStsno='02';
 set @xStsdes='Gagal, Header dokumen tidak di temukan' ;
 goto f  
end 
  
if @c_status_tpb_out_id = -1  -- CANCEL
begin
 set @xStsno='02';
 set @xStsdes='Gagal,Tidak bisa di kirim ke module, Dokumen dalam Status ' + @c_status_tpb_out_name ;
 goto f  
end


if  @c_status_tpb_out_id = 1  
begin
 set @xStsno='02';
 set @xStsdes='Gagal, Dokumen sudah di kirm ke module ';
 goto f   
end   
 
declare @ID_MODUL varchar(255)
,@KPPBC varchar(255)
,@ALAMAT_PENGUSAHA  varchar(255)
,@NPWP  varchar(255)
,@NOMOR_SKEP  varchar(255)
,@TANGGAL_SKEP date
,@NAMA_PENGUSAHA  varchar(255)
,@ID int
SELECT  
    @ID=ID
  , @ALAMAT_PENGUSAHA=ALAMAT_PENGUSAHA
  , @ID_MODUL=ID_MODUL
  , @KPPBC=KPPBC
  , @NAMA_PENGUSAHA=NAMA_PENGUSAHA
  , @NOMOR_SKEP=NOMOR_SKEP
  , @NPWP=NPWP
   ,@TANGGAL_SKEP=TANGGAL_SKEP 
 FROM OPENQUERY (TPBDB, 'SELECT * FROM tpbdb.aktivasi_aplikasi') 


 declare @NOMOR_API varchar(255)
  ,@ID_NOMOR_API varchar(255)
 SELECT  
  @NOMOR_API=NOMOR_PENGENAL 
 ,@ID_NOMOR_API    =ID_PENGENAL
FROM            OPENQUERY(TPBDB, 'SELECT * FROM tpbdb.referensi_pengusaha') AS derivedtbl_1
 where NPWP=@NPWP
  
  ---KALKULASI HARGA HARGA
  UPDATE       dt_ms_tpb_out_header
 SET   CIF=sum_detail.CIF             
  ,FOB=sum_detail.FOB             
  ,HARGA_INVOICE =sum_detail.HARGA_INVOICE             
  ,CIF_RUPIAH=sum_detail.CIF_RUPIAH             
  ,HARGA_PENYERAHAN=sum_detail.HARGA_PENYERAHAN             
  ,NETTO=sum_detail.NETTO  
  ,JUMLAH_BARANG=sum_detail.JUMLAH_BARANG  
 FROM            dt_ms_tpb_out_header INNER JOIN
         (
         SELECT        ID_HEADER
         , SUM(isnull(FOB,0)) AS FOB
         , SUM(isnull(CIF,0)) AS CIF
         , SUM(isnull(HARGA_INVOICE,0)) AS HARGA_INVOICE
         , SUM(isnull(CIF_RUPIAH,0)) AS CIF_RUPIAH
         , SUM(isnull(HARGA_PENYERAHAN,0)) AS HARGA_PENYERAHAN
         , SUM(isnull(NETTO,0)) AS NETTO
         , COUNT(*) as JUMLAH_BARANG
 FROM            dt_ms_tpb_out_barang
 GROUP BY ID_HEADER  ) AS sum_detail ON dt_ms_tpb_out_header.ID_HEADER = sum_detail.ID_HEADER
 where dt_ms_tpb_out_header.ID_HEADER =@ID_HEADER 


 declare @KOTA_TTD  varchar(255), @JABATAN_TTD  varchar(255), @NAMA_TTD   varchar(255)
 SELECT  
   @KOTA_TTD=KOTA_TTD, @JABATAN_TTD=JABATAN_TTD, @NAMA_TTD=NAMA_TTD
 FROM OPENQUERY (TPBDB, 'SELECT * FROM tpbdb.setting_aplikasi') 
 where KODE_DOKUMEN_PABEAN=@KODE_DOKUMEN_PABEAN
   
 DECLARE @AJU VARCHAR(255)= dbo.FN_CEISA_GET_CAR_AUTO (@KODE_DOKUMEN_PABEAN,500000) 
 set @KOTA_TTD='TANGERANG'

 INSERT OPENQUERY (TPBDB, 
'SELECT ALAMAT_PEMASOK , ALAMAT_PEMILIK , ALAMAT_PENERIMA_BARANG , ALAMAT_PENGIRIM , ALAMAT_PENGUSAHA , API_PEMILIK , API_PENERIMA , API_PENGUSAHA , ASAL_DATA , ASURANSI , BIAYA_TAMBAHAN , BRUTO , CIF , CIF_RUPIAH , DISKON , FLAG_PEMILIK , FLAG_URL_DOKUMEN_PABEAN , FOB , FREIGHT , HARGA_BARANG_LDP , HARGA_INVOICE , HARGA_PENYERAHAN , HARGA_TOTAL , ID_MODUL , ID_PEMASOK , ID_PEMILIK , ID_PENERIMA_BARANG , ID_PENGIRIM , ID_PENGUSAHA , ID_PPJK , JABATAN_TTD , JUMLAH_BARANG , JUMLAH_KEMASAN , JUMLAH_KONTAINER , KESESUAIAN_DOKUMEN , KETERANGAN , KODE_ASAL_BARANG , KODE_ASURANSI , KODE_BENDERA , KODE_CARA_ANGKUT , KODE_CARA_BAYAR , KODE_DAERAH_ASAL , KODE_DOKUMEN_PABEAN , KODE_FASILITAS , KODE_FTZ , KODE_HARGA , KODE_ID_PEMASOK , KODE_ID_PEMILIK , KODE_ID_PENERIMA_BARANG , KODE_ID_PENGIRIM , KODE_ID_PENGUSAHA , KODE_ID_PPJK , KODE_JENIS_API , KODE_JENIS_API_PEMILIK , KODE_JENIS_API_PENERIMA , KODE_JENIS_API_PENGUSAHA , KODE_JENIS_BARANG , KODE_JENIS_BC25 , KODE_JENIS_NILAI , KODE_JENIS_PEMASUKAN01 , KODE_JENIS_PEMASUKAN02 , KODE_JENIS_TPB , KODE_KANTOR , KODE_KANTOR_BONGKAR , KODE_KANTOR_TUJUAN , KODE_LOKASI_BAYAR , KODE_NEGARA_PEMASOK , KODE_NEGARA_PEMILIK , KODE_NEGARA_PENGIRIM , KODE_NEGARA_TUJUAN , KODE_PEL_BONGKAR , KODE_PEL_MUAT , KODE_PEL_TRANSIT , KODE_PEMBAYAR , KODE_STATUS , KODE_STATUS_PENGUSAHA , KODE_STATUS_PERBAIKAN , KODE_TPS , KODE_TUJUAN_PEMASUKAN , KODE_TUJUAN_PENGIRIMAN , KODE_TUJUAN_TPB , KODE_TUTUP_PU , KODE_VALUTA , KOTA_TTD , LOKASI_ASAL , LOKASI_TUJUAN , NAMA_PEMASOK , NAMA_PEMILIK , NAMA_PENERIMA_BARANG , NAMA_PENGANGKUT , NAMA_PENGIRIM , NAMA_PENGUSAHA , NAMA_PPJK , NAMA_TTD , NDPBM , NETTO , NILAI_INCOTERM , NIPER_PENERIMA , NOMOR_AJU , NOMOR_API , NOMOR_BC11 , NOMOR_BILLING , NOMOR_DAFTAR , NOMOR_IJIN_BPK_PEMASOK , NOMOR_IJIN_BPK_PENGUSAHA , NOMOR_IJIN_TPB , NOMOR_IJIN_TPB_PENERIMA , NOMOR_POLISI , NOMOR_VOY_FLIGHT , NPPPJK , NPWP_BILLING , POS_BC11 , SERI , SUBPOS_BC11 , SUBSUBPOS_BC11 , TANGGAL_AJU , TANGGAL_BC11 , TANGGAL_BERANGKAT , TANGGAL_BILLING , TANGGAL_DAFTAR , TANGGAL_IJIN_BPK_PEMASOK , TANGGAL_IJIN_BPK_PENGUSAHA , TANGGAL_IJIN_TPB , TANGGAL_NPPPJK , TANGGAL_TIBA , TANGGAL_TTD , TGL_JATUH_TEMPO_BILLING , TOTAL_BAYAR , TOTAL_BEBAS , TOTAL_DILUNASI , TOTAL_JAMIN , TOTAL_SUDAH_DILUNASI , TOTAL_TANGGUH , TOTAL_TANGGUNG , TOTAL_TIDAK_DIPUNGUT , URL_DOKUMEN_PABEAN , VERSI_MODUL , VOLUME , WAKTU_BONGKAR , WAKTU_STUFFING FROM tpbdb.tpb_header')
  SELECT  ALAMAT_PEMASOK 
, case when KODE_DOKUMEN_PABEAN='25' or  KODE_DOKUMEN_PABEAN='23'  then @ALAMAT_PENGUSAHA else ALAMAT_PENGUSAHA  end --ALAMAT_PEMILIK
, ALAMAT_PENERIMA_BARANG
, ALAMAT_PENGIRIM
, @ALAMAT_PENGUSAHA  
, case when KODE_DOKUMEN_PABEAN='25' or  KODE_DOKUMEN_PABEAN='23' then @NOMOR_API else API_PEMILIK end --API_PEMILIK
, API_PENERIMA
, @NOMOR_API
, ASAL_DATA
, ASURANSI
, BIAYA_TAMBAHAN
, BRUTO
, CIF
, CIF_RUPIAH
, DISKON
, FLAG_PEMILIK
, FLAG_URL_DOKUMEN_PABEAN
, FOB
, FREIGHT
, HARGA_BARANG_LDP
, HARGA_INVOICE
, HARGA_PENYERAHAN
, HARGA_TOTAL
, ID_MODUL
, ID_PEMASOK 
, case when KODE_DOKUMEN_PABEAN='25' or  KODE_DOKUMEN_PABEAN='23'  then @NPWP else ID_PEMILIK end --ID_PEMILIK
, ID_PENERIMA_BARANG
, ID_PENGIRIM
, @NPWP
, ID_PPJK
, @tdd_jabatan
, JUMLAH_BARANG
, JUMLAH_KEMASAN
, JUMLAH_KONTAINER
, KESESUAIAN_DOKUMEN
, KETERANGAN
, KODE_ASAL_BARANG
, KODE_ASURANSI
, KODE_BENDERA
, KODE_CARA_ANGKUT
, KODE_CARA_BAYAR
, KODE_DAERAH_ASAL
, KODE_DOKUMEN_PABEAN
, KODE_FASILITAS
, KODE_FTZ
, KODE_HARGA
, KODE_ID_PEMASOK
, case when KODE_DOKUMEN_PABEAN='25' or  KODE_DOKUMEN_PABEAN='23'  then 1 else KODE_ID_PEMILIK end --KODE_ID_PEMILIK
, KODE_ID_PENERIMA_BARANG
, KODE_ID_PENGIRIM
, 1 --KODE_ID_PENGUSAHA
, KODE_ID_PPJK
, KODE_JENIS_API
, case when KODE_DOKUMEN_PABEAN='25' or  KODE_DOKUMEN_PABEAN='23'  then @ID_NOMOR_API else KODE_JENIS_API_PEMILIK end --KODE_JENIS_API_PEMILIK
, KODE_JENIS_API_PENERIMA
, @ID_NOMOR_API-- KODE_JENIS_API_PENGUSAHA
, KODE_JENIS_BARANG
, KODE_JENIS_BC25
, KODE_JENIS_NILAI
, KODE_JENIS_PEMASUKAN01
, KODE_JENIS_PEMASUKAN02
, KODE_JENIS_TPB
, @KPPBC
, KODE_KANTOR_BONGKAR
, KODE_KANTOR_TUJUAN
, KODE_LOKASI_BAYAR
, KODE_NEGARA_PEMASOK
, KODE_NEGARA_PEMILIK
, KODE_NEGARA_PENGIRIM
, KODE_NEGARA_TUJUAN
, KODE_PEL_BONGKAR
, KODE_PEL_MUAT
, KODE_PEL_TRANSIT
, KODE_PEMBAYAR
, KODE_STATUS
, KODE_STATUS_PENGUSAHA
, KODE_STATUS_PERBAIKAN
, KODE_TPS
, case when KODE_DOKUMEN_PABEAN='23'then null else  nullif(KODE_TUJUAN_PEMASUKAN,'00') end 
, case when KODE_DOKUMEN_PABEAN='23'then null else   nullif(KODE_TUJUAN_PENGIRIMAN,'00') end  
, KODE_TUJUAN_TPB
, KODE_TUTUP_PU
, KODE_VALUTA
, @tdd_kota
, LOKASI_ASAL
, LOKASI_TUJUAN
, NAMA_PEMASOK
, case when KODE_DOKUMEN_PABEAN='25' or  KODE_DOKUMEN_PABEAN='23'  then @NAMA_PENGUSAHA else NAMA_PEMILIK  end --NAMA_PEMILIK
, NAMA_PENERIMA_BARANG
, NAMA_PENGANGKUT
, NAMA_PENGIRIM 
, @NAMA_PENGUSAHA
, NAMA_PPJK
, @tdd_name
, NDPBM
, NETTO
, NILAI_INCOTERM
, NIPER_PENERIMA
, @AJU --NOMOR_AJU
, NOMOR_API
, NOMOR_BC11
, NOMOR_BILLING
, NULL-- NOMOR_DAFTAR
, NOMOR_IJIN_BPK_PEMASOK
, NOMOR_IJIN_BPK_PENGUSAHA
, @NOMOR_SKEP
, NOMOR_IJIN_TPB_PENERIMA
, NOMOR_POLISI
, NOMOR_VOY_FLIGHT
, NPPPJK
, NPWP_BILLING
, POS_BC11
, SERI
, SUBPOS_BC11
, SUBSUBPOS_BC11
, TANGGAL_AJU
, TANGGAL_BC11
, TANGGAL_BERANGKAT
, TANGGAL_BILLING
,NULL-- TANGGAL_DAFTAR
, TANGGAL_IJIN_BPK_PEMASOK
, TANGGAL_IJIN_BPK_PENGUSAHA
, TANGGAL_IJIN_TPB
, TANGGAL_NPPPJK
, TANGGAL_TIBA
, cast(getdate() as date)
, TGL_JATUH_TEMPO_BILLING
, TOTAL_BAYAR
, TOTAL_BEBAS
, TOTAL_DILUNASI
, TOTAL_JAMIN
, TOTAL_SUDAH_DILUNASI
, TOTAL_TANGGUH
, TOTAL_TANGGUNG
, TOTAL_TIDAK_DIPUNGUT
, URL_DOKUMEN_PABEAN
, '3.1.7'
, VOLUME
, WAKTU_BONGKAR
, WAKTU_STUFFING
FROM            dt_ms_tpb_out_header
WHERE        (ID_HEADER = @ID_HEADER)
  

declare @LAST_ID bigint
SET @LAST_ID = (SELECT ID FROM OPENQUERY(TPBDB, 'SELECT * FROM tpbdb.tpb_header')
where NOMOR_AJU =@AJU); 

UPDATE dt_ms_tpb_out_header
set  ID_HEADER_ORI =@LAST_ID
, NOMOR_AJU=@AJU
WHERE        (ID_HEADER = @ID_HEADER)

--select @LAST_ID
 

INSERT OPENQUERY (TPBDB, 
' SELECT ASURANSI, CIF, CIF_RUPIAH, DISKON, FLAG_KENDARAAN, FOB, FREIGHT, HARGA_BARANG_LDP, HARGA_INVOICE, HARGA_PENYERAHAN, HARGA_SATUAN, JENIS_KENDARAAN, JUMLAH_BAHAN_BAKU, JUMLAH_KEMASAN, JUMLAH_SATUAN, KAPASITAS_SILINDER, KATEGORI_BARANG, KODE_ASAL_BARANG, KODE_BARANG, KODE_FASILITAS_DOKUMEN, KODE_GUNA, KODE_JENIS_NILAI, KODE_KEMASAN, KODE_LEBIH_DARI4TAHUN, KODE_NEGARA_ASAL, KODE_SATUAN, KODE_SKEMA_TARIF, KODE_STATUS, KONDISI_BARANG, MERK, NETTO, NILAI_INCOTERM, NILAI_PABEAN, NOMOR_MESIN, NOMOR_RANGKA, POS_TARIF, SERI_BARANG, SERI_IJIN, SERI_POS_TARIF, SPESIFIKASI_LAIN, TAHUN_PEMBUATAN, TIPE, UKURAN, URAIAN, VOLUME, ID_HEADER FROM tpbdb.tpb_barang') 

SELECT        
dt_ms_tpb_out_barang.ASURANSI
, dt_ms_tpb_out_barang.CIF
, dt_ms_tpb_out_barang.CIF_RUPIAH
, dt_ms_tpb_out_barang.DISKON
, dt_ms_tpb_out_barang.FLAG_KENDARAAN
, dt_ms_tpb_out_barang.FOB
, dt_ms_tpb_out_barang.FREIGHT
, dt_ms_tpb_out_barang.HARGA_BARANG_LDP
, dt_ms_tpb_out_barang.HARGA_INVOICE
, dt_ms_tpb_out_barang.HARGA_PENYERAHAN
, dt_ms_tpb_out_barang.HARGA_SATUAN
, dt_ms_tpb_out_barang.JENIS_KENDARAAN
, dt_ms_tpb_out_barang.JUMLAH_BAHAN_BAKU
, dt_ms_tpb_out_barang.JUMLAH_KEMASAN
, dt_ms_tpb_out_barang.JUMLAH_SATUAN
, dt_ms_tpb_out_barang.KAPASITAS_SILINDER
, dt_ms_tpb_out_barang.KATEGORI_BARANG 
, dt_ms_tpb_out_barang.KODE_ASAL_BARANG
, dt_ms_tpb_out_barang.KODE_BARANG
, dt_ms_tpb_out_barang.KODE_FASILITAS_DOKUMEN
, dt_ms_tpb_out_barang.KODE_GUNA
, dt_ms_tpb_out_barang.KODE_JENIS_NILAI
, dt_ms_tpb_out_barang.KODE_KEMASAN
, dt_ms_tpb_out_barang.KODE_LEBIH_DARI4TAHUN
, dt_ms_tpb_out_barang.KODE_NEGARA_ASAL
, dt_ms_tpb_out_barang.KODE_SATUAN
, dt_ms_tpb_out_barang.KODE_SKEMA_TARIF
, dt_ms_tpb_out_barang.KODE_STATUS
, dt_ms_tpb_out_barang.KONDISI_BARANG
, dt_ms_tpb_out_barang.MERK
, dt_ms_tpb_out_barang.NETTO
, dt_ms_tpb_out_barang.NILAI_INCOTERM
, dt_ms_tpb_out_barang.NILAI_PABEAN
, dt_ms_tpb_out_barang.NOMOR_MESIN
, dt_ms_tpb_out_barang.NOMOR_RANGKA
, ISNULL(NULLIF(dt_ms_tpb_out_barang.POS_TARIF,''),MASTER_ITEM.NOHS) as POS_TARIF
, dt_ms_tpb_out_barang.SERI_BARANG
, dt_ms_tpb_out_barang.SERI_IJIN
, dt_ms_tpb_out_barang.SERI_POS_TARIF
, dt_ms_tpb_out_barang.SPESIFIKASI_LAIN
, null--dt_ms_tpb_out_barang.TAHUN_PEMBUATAN
, dt_ms_tpb_out_barang.TIPE
, dt_ms_tpb_out_barang.UKURAN
, dt_ms_tpb_out_barang.URAIAN
, dt_ms_tpb_out_barang.VOLUME
, @LAST_ID AS Expr1
FROM            dt_ms_tpb_out_barang LEFT OUTER JOIN
                             OPENQUERY (TPBDB, 
' SELECT * FROM tpbdb.referensi_kode_barang') AS MASTER_ITEM ON dt_ms_tpb_out_barang.KODE_BARANG = MASTER_ITEM.KODE_BARANG 
where ID_HEADER =@id_header 
order by dt_ms_tpb_out_barang.SERI_BARANG

--SELECT ID, BARANG_KE, KODE_BARANG, MERK, NOHS, SERI, SPESIFIKASI_LAIN, TIPE, URAIAN_BARANG
--FROM referensi_kode_barang
update   dt_ms_tpb_out_barang
set ID_HEADER_ORI=@LAST_ID
where ID_HEADER =@id_header 

update   dt_ms_tpb_out_dokumen
set ID_HEADER_ORI=@LAST_ID
where ID_HEADER =@id_header 


 
;MERGE dt_ms_tpb_out_barang AS target  
USING ( 
  SELECT  ceisaDB.ID as module_barang_id,   dt_ms_tpb_out_barang.ID as barang_id, dt_ms_tpb_out_barang.ID_HEADER 
  FROM            OPENQUERY (TPBDB, 
' SELECT ID, ASURANSI, CIF, CIF_RUPIAH, DISKON, FLAG_KENDARAAN, FOB, FREIGHT, HARGA_BARANG_LDP, HARGA_INVOICE, HARGA_PENYERAHAN, HARGA_SATUAN, JENIS_KENDARAAN, JUMLAH_BAHAN_BAKU, JUMLAH_KEMASAN, JUMLAH_SATUAN, KAPASITAS_SILINDER, KATEGORI_BARANG, KODE_ASAL_BARANG, KODE_BARANG, KODE_FASILITAS_DOKUMEN, KODE_GUNA, KODE_JENIS_NILAI, KODE_KEMASAN, KODE_LEBIH_DARI4TAHUN, KODE_NEGARA_ASAL, KODE_SATUAN, KODE_SKEMA_TARIF, KODE_STATUS, KONDISI_BARANG, MERK, NETTO, NILAI_INCOTERM, NILAI_PABEAN, NOMOR_MESIN, NOMOR_RANGKA, POS_TARIF, SERI_BARANG, SERI_IJIN, SERI_POS_TARIF, SPESIFIKASI_LAIN, TAHUN_PEMBUATAN, TIPE, UKURAN, URAIAN, VOLUME, ID_HEADER FROM tpbdb.tpb_barang')  AS ceisaDB INNER JOIN
  dt_ms_tpb_out_barang ON ceisaDB.SERI_BARANG = dt_ms_tpb_out_barang.SERI_BARANG AND ceisaDB.ID_HEADER = dt_ms_tpb_out_barang.ID_HEADER_ORI
  where dt_ms_tpb_out_barang.ID_HEADER =@id_header 
) AS source (module_barang_id, barang_id,ID_HEADER)  
ON (target.id = source.barang_id)  and  (target.ID_HEADER = source.ID_HEADER) 
WHEN MATCHED THEN   
UPDATE SET ID_ORI = source.module_barang_id ;  
 
 

update dt_ms_tpb_out_barang_tarif 
SET                dt_ms_tpb_out_barang_tarif.ID_BARANG_ORI =dt_ms_tpb_out_barang.ID_ORI 
      ,  dt_ms_tpb_out_barang_tarif.ID_HEADER_ORI = @LAST_ID
      ,  dt_ms_tpb_out_barang_tarif.SERI_BARANG =dt_ms_tpb_out_barang.SERI_BARANG 
FROM            dt_ms_tpb_out_barang_tarif INNER JOIN
                         dt_ms_tpb_out_barang ON dt_ms_tpb_out_barang_tarif.ID_BARANG = dt_ms_tpb_out_barang.ID
WHERE        (dt_ms_tpb_out_barang_tarif.ID_HEADER = @id_header)
  
   

INSERT OPENQUERY (TPBDB, 
'SELECT FLAG_BMT_SEMENTARA, JENIS_TARIF, JUMLAH_SATUAN, KODE_FASILITAS, KODE_KOMODITI_CUKAI, KODE_SATUAN, KODE_SUB_KOMODITI_CUKAI, KODE_TARIF, NILAI_BAYAR, NILAI_FASILITAS, NILAI_SUDAH_DILUNASI, SERI_BARANG, TARIF, TARIF_FASILITAS, ID_BARANG, ID_HEADER FROM tpbdb.tpb_barang_tarif')   

SELECT   
dt_ms_tpb_out_barang_tarif.FLAG_BMT_SEMENTARA
, dt_ms_tpb_out_barang_tarif.JENIS_TARIF
, dt_ms_tpb_out_barang_tarif.JUMLAH_SATUAN
, dt_ms_tpb_out_barang_tarif.KODE_FASILITAS
, dt_ms_tpb_out_barang_tarif.KODE_KOMODITI_CUKAI
, dt_ms_tpb_out_barang_tarif.KODE_SATUAN
, dt_ms_tpb_out_barang_tarif.KODE_SUB_KOMODITI_CUKAI
, dt_ms_tpb_out_barang_tarif.KODE_TARIF
, dt_ms_tpb_out_barang_tarif.NILAI_BAYAR
, dt_ms_tpb_out_barang_tarif.NILAI_FASILITAS
, dt_ms_tpb_out_barang_tarif.NILAI_SUDAH_DILUNASI
, dt_ms_tpb_out_barang_tarif.SERI_BARANG
, dt_ms_tpb_out_barang_tarif.TARIF
, dt_ms_tpb_out_barang_tarif.TARIF_FASILITAS
, dt_ms_tpb_out_barang.ID_ORI
, dt_ms_tpb_out_barang.ID_HEADER_ORI
  
  FROM            dt_ms_tpb_out_barang_tarif INNER JOIN
dt_ms_tpb_out_barang ON dt_ms_tpb_out_barang_tarif.ID_BARANG = dt_ms_tpb_out_barang.ID  
where dt_ms_tpb_out_barang.ID_HEADER =@id_header   

    

   
update dt_ms_tpb_out_bahan_baku 
SET                dt_ms_tpb_out_bahan_baku.ID_BARANG_ORI =dt_ms_tpb_out_barang.ID_ORI 
      ,  dt_ms_tpb_out_bahan_baku.ID_HEADER_ORI = @LAST_ID
      ,  dt_ms_tpb_out_bahan_baku.SERI_BARANG =dt_ms_tpb_out_barang.SERI_BARANG 
FROM            dt_ms_tpb_out_bahan_baku INNER JOIN
                         dt_ms_tpb_out_barang ON dt_ms_tpb_out_bahan_baku.ID_BARANG = dt_ms_tpb_out_barang.ID
WHERE        (dt_ms_tpb_out_bahan_baku.ID_HEADER = @id_header)
  
     

INSERT OPENQUERY (TPBDB, 
'SELECT CIF, CIF_RUPIAH, HARGA_PENYERAHAN, HARGA_PEROLEHAN, JENIS_SATUAN, JUMLAH_SATUAN, KODE_ASAL_BAHAN_BAKU, KODE_BARANG, KODE_FASILITAS_DOKUMEN, KODE_JENIS_DOK_ASAL, KODE_KANTOR, KODE_SKEMA_TARIF, KODE_STATUS, MERK, NDPBM, NETTO, NOMOR_AJU_DOK_ASAL, NOMOR_DAFTAR_DOK_ASAL, POS_TARIF, SERI_BAHAN_BAKU, SERI_BARANG, SERI_BARANG_DOK_ASAL, SPESIFIKASI_LAIN, TANGGAL_DAFTAR_DOK_ASAL, TIPE, UKURAN, URAIAN, ID_BARANG, ID_HEADER FROM tpbdb.tpb_bahan_baku')   

SELECT   
 dt_ms_tpb_out_bahan_baku.CIF
, dt_ms_tpb_out_bahan_baku.CIF_RUPIAH
, dt_ms_tpb_out_bahan_baku.HARGA_PENYERAHAN
, dt_ms_tpb_out_bahan_baku.HARGA_PEROLEHAN
, dt_ms_tpb_out_bahan_baku.JENIS_SATUAN
, dt_ms_tpb_out_bahan_baku.JUMLAH_SATUAN
, dt_ms_tpb_out_bahan_baku.KODE_ASAL_BAHAN_BAKU
, dt_ms_tpb_out_bahan_baku.KODE_BARANG
, dt_ms_tpb_out_bahan_baku.KODE_FASILITAS_DOKUMEN
, dt_ms_tpb_out_bahan_baku.KODE_JENIS_DOK_ASAL
, dt_ms_tpb_out_bahan_baku.KODE_KANTOR
, dt_ms_tpb_out_bahan_baku.KODE_SKEMA_TARIF
, dt_ms_tpb_out_bahan_baku.KODE_STATUS
, dt_ms_tpb_out_bahan_baku.MERK
, dt_ms_tpb_out_bahan_baku.NDPBM
, dt_ms_tpb_out_bahan_baku.NETTO
, dt_ms_tpb_out_bahan_baku.NOMOR_AJU_DOK_ASAL
, dt_ms_tpb_out_bahan_baku.NOMOR_DAFTAR_DOK_ASAL
, dt_ms_tpb_out_bahan_baku.POS_TARIF
, dt_ms_tpb_out_bahan_baku.SERI_BAHAN_BAKU
, dt_ms_tpb_out_bahan_baku.SERI_BARANG
, dt_ms_tpb_out_bahan_baku.SERI_BARANG_DOK_ASAL
, dt_ms_tpb_out_bahan_baku.SPESIFIKASI_LAIN
, dt_ms_tpb_out_bahan_baku.TANGGAL_DAFTAR_DOK_ASAL
, dt_ms_tpb_out_bahan_baku.TIPE
, dt_ms_tpb_out_bahan_baku.UKURAN
, dt_ms_tpb_out_bahan_baku.URAIAN 
, dt_ms_tpb_out_barang.ID_ORI
, dt_ms_tpb_out_barang.ID_HEADER_ORI
  
  FROM            dt_ms_tpb_out_bahan_baku INNER JOIN
dt_ms_tpb_out_barang ON dt_ms_tpb_out_bahan_baku.ID_BARANG = dt_ms_tpb_out_barang.ID  
where dt_ms_tpb_out_barang.ID_HEADER =@id_header    
   
;MERGE dt_ms_tpb_out_bahan_baku AS target  
USING ( 
  SELECT  ceisaDB.ID as MODULE_BAHAN_BAKU_ID
  ,   dt_ms_tpb_out_bahan_baku.ID as BAHAN_BAKU_ID
  ,   dt_ms_tpb_out_bahan_baku.ID_BARANG 
  ,   dt_ms_tpb_out_bahan_baku.ID_HEADER 
  FROM            OPENQUERY (TPBDB, 
' SELECT ID, CIF, CIF_RUPIAH, HARGA_PENYERAHAN, HARGA_PEROLEHAN, JENIS_SATUAN, JUMLAH_SATUAN, KODE_ASAL_BAHAN_BAKU, KODE_BARANG, KODE_FASILITAS_DOKUMEN, KODE_JENIS_DOK_ASAL, KODE_KANTOR, KODE_SKEMA_TARIF, KODE_STATUS, MERK, NDPBM, NETTO, NOMOR_AJU_DOK_ASAL, NOMOR_DAFTAR_DOK_ASAL, POS_TARIF, SERI_BAHAN_BAKU, SERI_BARANG, SERI_BARANG_DOK_ASAL, SPESIFIKASI_LAIN, TANGGAL_DAFTAR_DOK_ASAL, TIPE, UKURAN, URAIAN, ID_BARANG, ID_HEADER FROM tpbdb.tpb_bahan_baku')  AS ceisaDB INNER JOIN
  dt_ms_tpb_out_bahan_baku ON 
  ceisaDB.SERI_BAHAN_BAKU = dt_ms_tpb_out_bahan_baku.SERI_BAHAN_BAKU 
  AND ceisaDB.SERI_BARANG = dt_ms_tpb_out_bahan_baku.SERI_BARANG
  AND ceisaDB.ID_BARANG = dt_ms_tpb_out_bahan_baku.ID_BARANG_ORI
  AND ceisaDB.ID_HEADER = dt_ms_tpb_out_bahan_baku.ID_HEADER_ORI
  where dt_ms_tpb_out_bahan_baku.ID_HEADER =@id_header 
) AS source (MODULE_BAHAN_BAKU_ID, BAHAN_BAKU_ID,ID_BARANG,ID_HEADER)  
ON (target.id = source.BAHAN_BAKU_ID)  
and  (target.ID_BARANG = source.ID_BARANG)   
and  (target.ID_HEADER = source.ID_HEADER)   
WHEN MATCHED THEN   
UPDATE SET ID_ORI = source.MODULE_BAHAN_BAKU_ID ;  
 

UPDATE       dt_ms_tpb_out_bahan_baku_tarif
SET                
ID_BARANG_ORI = dt_ms_tpb_out_bahan_baku.ID_BARANG_ORI 
, ID_HEADER_ORI = @LAST_ID
, SERI_BARANG = dt_ms_tpb_out_bahan_baku.SERI_BARANG
, SERI_BAHAN_BAKU  = dt_ms_tpb_out_bahan_baku.SERI_BAHAN_BAKU 
, ID_BAHAN_BAKU_ORI =dt_ms_tpb_out_bahan_baku.ID_ORI 
FROM            dt_ms_tpb_out_bahan_baku INNER JOIN
                         dt_ms_tpb_out_bahan_baku_tarif ON dt_ms_tpb_out_bahan_baku.ID = dt_ms_tpb_out_bahan_baku_tarif.ID_BAHAN_BAKU
WHERE        (dt_ms_tpb_out_bahan_baku.ID_HEADER = @id_header)
 

INSERT OPENQUERY (TPBDB, 
'SELECT JENIS_TARIF, JUMLAH_SATUAN, KODE_ASAL_BAHAN_BAKU, KODE_FASILITAS, KODE_KOMODITI_CUKAI, KODE_SATUAN, KODE_TARIF, NILAI_BAYAR, NILAI_FASILITAS, NILAI_SUDAH_DILUNASI, SERI_BAHAN_BAKU, SERI_BARANG, TARIF, TARIF_FASILITAS, ID_BAHAN_BAKU, ID_BARANG, ID_HEADER FROM tpbdb.tpb_bahan_baku_tarif')    
SELECT   
dt_ms_tpb_out_bahan_baku_tarif.JENIS_TARIF
, dt_ms_tpb_out_bahan_baku_tarif.JUMLAH_SATUAN
, dt_ms_tpb_out_bahan_baku_tarif.KODE_ASAL_BAHAN_BAKU
, dt_ms_tpb_out_bahan_baku_tarif.KODE_FASILITAS
, dt_ms_tpb_out_bahan_baku_tarif.KODE_KOMODITI_CUKAI
, dt_ms_tpb_out_bahan_baku_tarif.KODE_SATUAN
, dt_ms_tpb_out_bahan_baku_tarif.KODE_TARIF
, dt_ms_tpb_out_bahan_baku_tarif.NILAI_BAYAR
, dt_ms_tpb_out_bahan_baku_tarif.NILAI_FASILITAS
, dt_ms_tpb_out_bahan_baku_tarif.NILAI_SUDAH_DILUNASI
, dt_ms_tpb_out_bahan_baku.SERI_BAHAN_BAKU
, dt_ms_tpb_out_bahan_baku.SERI_BARANG
, dt_ms_tpb_out_bahan_baku_tarif.TARIF
, dt_ms_tpb_out_bahan_baku_tarif.TARIF_FASILITAS 
, dt_ms_tpb_out_bahan_baku.ID_ORI
, dt_ms_tpb_out_bahan_baku.ID_BARANG_ORI 
, dt_ms_tpb_out_bahan_baku.ID_HEADER_ORI 
  FROM            dt_ms_tpb_out_bahan_baku_tarif INNER JOIN
dt_ms_tpb_out_bahan_baku ON dt_ms_tpb_out_bahan_baku_tarif.ID_BAHAN_BAKU  = dt_ms_tpb_out_bahan_baku.ID  
where dt_ms_tpb_out_bahan_baku.ID_HEADER =@id_header    
  
update   dt_ms_tpb_out_dokumen
set ID_HEADER_ORI=@LAST_ID
where ID_HEADER =@id_header 
 
INSERT OPENQUERY (TPBDB, 
'SELECT FLAG_URL_DOKUMEN, KODE_JENIS_DOKUMEN, NOMOR_DOKUMEN, SERI_DOKUMEN, TANGGAL_DOKUMEN, TIPE_DOKUMEN, URL_DOKUMEN, ID_HEADER FROM tpbdb.tpb_dokumen ')  
SELECT        FLAG_URL_DOKUMEN, KODE_JENIS_DOKUMEN, NOMOR_DOKUMEN, SERI_DOKUMEN, TANGGAL_DOKUMEN, TIPE_DOKUMEN, URL_DOKUMEN
, ID_HEADER_ORI FROM dt_ms_tpb_out_dokumen
where dt_ms_tpb_out_dokumen.ID_HEADER =@id_header  
 


declare @dt_ms_tpb_out_header_h_status_id bigint
INSERT INTO dt_ms_tpb_out_header_h_status
       (ID_HEADER, status_tpb_out_id, status_info, create_date, create_by)
VALUES        (@ID_HEADER, 1, '',@now,@data_by)
set @dt_ms_tpb_out_header_h_status_id=SCOPE_IDENTITY();

update dt_ms_tpb_out_header
set dt_ms_tpb_out_header_h_status_id=@dt_ms_tpb_out_header_h_status_id 

where ID_HEADER=@ID_HEADER
  

--BEGIN TRANSACTION;
--COMMIT TRANSACTION;
  
f:

set nocount off

END TRY  
BEGIN CATCH
 IF (@@TRANCOUNT > 0)  ROLLBACK TRAN;
 
 set @xStsno='88'
 set @xStsdes= ERROR_MESSAGE() 
END CATCH

g:
set @XmlSts=(select @xStsnoheader + @xStsno as 'no', @xStsdes as 'des' for xml path('sts'))
 select  CAST( (select @XmlSts,isnull(@raw ,'')   for xml path ('result')
)  as XML)  as dt

-- GO

--EXEC MG_MS_BC_OUT_SEND_TO_MODULE
--'12json2::167'
GO

Used By

No items found