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_CANCEL
@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
,@info 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)
, @info=left(ltrim(rtrim(isnull(tempTable.item.value('info[1]', 'varchar(300)'),''))),255)
FROM @PARAMETER.nodes('param/field') tempTable(item)
exec MG_CHECK_USER @data_by, 0, @xStsno output,@xStsdes output;
if @xStsno <>'00'
goto f ;
declare
@check_ID_HEADER bigint
,@check_status_tpb_out_name varchar(255)
,@check_is_get bit
,@check_status_tpb_out_id int
,@check_mode_source varchar(255)
,@check_ID_HEADER_ORI bigint
,@check_KODE_STATUS varchar(255)
,@check_mapping_supplier_id bigint
,@check_NOMOR_AJU varchar(255)
,@check_NOMOR_DAFTAR varchar(255)
,@check_TANGGAL_DAFTAR date
,@check_mode_source_id int
,@check_ms_date_business_id bigint
SELECT top(1)
@check_ID_HEADER=ID_HEADER
, @check_status_tpb_out_name=status_tpb_out_name
, @check_is_get=is_get
, @check_status_tpb_out_id=status_tpb_out_id
, @check_mode_source=mode_source_ID
, @check_ID_HEADER_ORI=ID_HEADER_ORI
, @check_KODE_STATUS=KODE_STATUS
, @check_mapping_supplier_id=nullif(mapping_supplier_id,-1)
, @check_NOMOR_AJU= isnull(NOMOR_AJU ,'')
, @check_NOMOR_DAFTAR= isnull( NOMOR_DAFTAR,'')
, @check_TANGGAL_DAFTAR=TANGGAL_DAFTAR
, @check_mode_source_id =mode_source_id
, @check_ms_date_business_id=ms_date_business_id
FROM vw_ms_header_bc_out
WHERE (ID_HEADER = @ID_HEADER)
if @check_ID_HEADER is null
begin
set @xStsno='02';
set @xStsdes='Gagal, Pilih Dokumen yang akan di Cancel' ;
goto f
end
if @check_status_tpb_out_id=-1
begin
set @xStsno='02';
set @xStsdes='Gagal, Dokumen sudah dalam status ' + @check_status_tpb_out_name ;
goto f
end
if @check_status_tpb_out_id =3
begin
declare @check_avg_final_avg_name varchar(255)
,@check_avg_start_date varchar(255)
,@check_avg_end_date varchar(255)
SELECT top 1
@check_avg_final_avg_name=dt_ms_cost_final_avg.final_avg_name
, @check_avg_start_date=dt_ms_cost_final_avg.start_date
, @check_avg_end_date=dt_ms_cost_final_avg.end_date
FROM dt_ms_date_business INNER JOIN
dt_ms_cost_final_avg ON dt_ms_date_business.ms_cost_final_avg_id = dt_ms_cost_final_avg.ms_cost_final_avg_id INNER JOIN
dt_ms_cost_final_avg_h_status ON dt_ms_cost_final_avg.ms_cost_final_avg_h_status_id = dt_ms_cost_final_avg_h_status.ms_cost_final_avg_h_status_id
WHERE (dt_ms_cost_final_avg_h_status.ms_cost_final_avg_status_id = 1)
AND (dt_ms_date_business.ms_date_business_id =@check_ms_date_business_id)
if @check_avg_final_avg_name is not null
begin
set @xStsno='02';
set @xStsdes='Gagal, Dokumen sudah terkait FINAL AVG ' + @check_avg_final_avg_name ;
goto f
end
end
declare @ID_HEADER_STATUS bigint
BEGIN TRANSACTION;
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, @info,@now,@data_by)
set @ID_HEADER_STATUS=SCOPE_IDENTITY();
update dt_ms_tpb_out_header
set dt_ms_tpb_out_header_h_status_id =@ID_HEADER_STATUS
where ID_HEADER =@ID_HEADER
if @check_mode_source_id=3-- MEMO
begin
UPDATE dt_ms_memo_header
SET source_out_id = null, mode_source_out = null
where source_out_id = @ID_HEADER and mode_source_out = 0
end
COMMIT TRANSACTION;
declare @detail xml
set @detail =(
select
ID_HEADER AS rID
, status_tpb_out_id AS r1
, status_tpb_out_name AS r2
, mode_source_id AS r3
, mode_source_name AS r4
, is_get AS r5
, KODE_DOKUMEN_PABEAN AS r6
, NOMOR_AJU AS r7
, PJT AS r8
, dbo.date_to_str(TANGGAL_DAFTAR ) AS r9
, NOMOR_DAFTAR AS r10
, KODE_STATUS AS r11
, URAIAN_STATUS AS r12
, KODE_TUJUAN_IN_OUT AS r13
, URAINAN_TUJUAN_IN_OUT AS r14
, MODULE_ID_PENGIRIM AS r15
, MODULE_NAMA_PENGIRIM AS r16
, MODULE_KODE_ID_PENGIRIM AS r17
, MODULE_ALAMAT_PENGIRIM AS r18
, MODULE_KODE_NEGARA_PENGIRIM AS r19
, MODULE_NAMA_NEGARA_PENGIRIM AS r20
, id_type AS r21
, mapping_supplier_id AS r21id
, INTERNAL_ID_PENGIRIM AS r22
, INTERNAL_KODE_PENGIRIM AS r23
, INTERNAL_NAMA_PENGIRIM AS r24
, INTERNAL_ALAMAT_PENGIRIM AS r25
, INTERNAL_KODE_NEGARA_PENGIRIM AS r26
, INTERNAL_NAMA_NEGARA_PENGIRIM AS r27
, api_type_id AS r28
, api_no AS r29
, skep_no AS r30
, dbo.date_to_str(skep_date ) AS r31
, KODE_VALUTA AS r32
, cast(NDPBM AS decimal(18,4)) AS r33
, KODE_HARGA AS r34
, cast(HARGA_TOTAL AS decimal(18,2)) AS r35
, KODE_ASURANSI AS r36
, cast(ASURANSI AS decimal(18,2)) AS r37
, cast(BIAYA_TAMBAHAN AS decimal(18,2)) AS r38
, cast(DISKON AS decimal(18,2)) AS r39
, cast(FREIGHT AS decimal(18,2)) AS r40
, cast(BRUTO AS decimal(18,2)) AS r41
, cast(NETTO AS decimal(18,2)) AS r42
, JUMLAH_BARANG AS r43
, JUMLAH_KEMASAN AS r44
, JUMLAH_KONTAINER AS r45
, KODE_KANTOR_BONGKAR AS r46
, KODE_KANTOR_BONGKAR_NAME AS r47
, KODE_PEL_BONGKAR AS r48
, KODE_PEL_BONGKAR_NAME AS r49
, surat_jalan_no AS r50
, dbo.date_to_str(surat_jalan_date ) AS r51
, WAKTU_BONGKAR AS r52
, WAKTU_STUFFING AS r53
, status_info AS r54
, dbo.date_to_str2(status_date ) AS r55
, status_by AS r56
, dbo.date_to_str2(create_date ) AS r57
, create_by AS r58
, dbo.date_to_str2(modify_date ) AS r59
, modify_by AS r60
, ID_HEADER_ORI AS r61
from vw_ms_header_bc_out
where ID_HEADER=@ID_HEADER
for xml path ('detail')
)
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 ,'') ,isnull(@detail ,'') for xml path ('result')
) as XML) as dt
--GO
--EXEC MG_MS_BC_OUT_CANCEL
--'1 2 json 2 ::1 ABA01 27 8 10007 '
GO
GO
create procedure dbo.MG_MS_BC_OUT_CANCEL
@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
,@info 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)
, @info=left(ltrim(rtrim(isnull(tempTable.item.value('info[1]', 'varchar(300)'),''))),255)
FROM @PARAMETER.nodes('param/field') tempTable(item)
exec MG_CHECK_USER @data_by, 0, @xStsno output,@xStsdes output;
if @xStsno <>'00'
goto f ;
declare
@check_ID_HEADER bigint
,@check_status_tpb_out_name varchar(255)
,@check_is_get bit
,@check_status_tpb_out_id int
,@check_mode_source varchar(255)
,@check_ID_HEADER_ORI bigint
,@check_KODE_STATUS varchar(255)
,@check_mapping_supplier_id bigint
,@check_NOMOR_AJU varchar(255)
,@check_NOMOR_DAFTAR varchar(255)
,@check_TANGGAL_DAFTAR date
,@check_mode_source_id int
,@check_ms_date_business_id bigint
SELECT top(1)
@check_ID_HEADER=ID_HEADER
, @check_status_tpb_out_name=status_tpb_out_name
, @check_is_get=is_get
, @check_status_tpb_out_id=status_tpb_out_id
, @check_mode_source=mode_source_ID
, @check_ID_HEADER_ORI=ID_HEADER_ORI
, @check_KODE_STATUS=KODE_STATUS
, @check_mapping_supplier_id=nullif(mapping_supplier_id,-1)
, @check_NOMOR_AJU= isnull(NOMOR_AJU ,'')
, @check_NOMOR_DAFTAR= isnull( NOMOR_DAFTAR,'')
, @check_TANGGAL_DAFTAR=TANGGAL_DAFTAR
, @check_mode_source_id =mode_source_id
, @check_ms_date_business_id=ms_date_business_id
FROM vw_ms_header_bc_out
WHERE (ID_HEADER = @ID_HEADER)
if @check_ID_HEADER is null
begin
set @xStsno='02';
set @xStsdes='Gagal, Pilih Dokumen yang akan di Cancel' ;
goto f
end
if @check_status_tpb_out_id=-1
begin
set @xStsno='02';
set @xStsdes='Gagal, Dokumen sudah dalam status ' + @check_status_tpb_out_name ;
goto f
end
if @check_status_tpb_out_id =3
begin
declare @check_avg_final_avg_name varchar(255)
,@check_avg_start_date varchar(255)
,@check_avg_end_date varchar(255)
SELECT top 1
@check_avg_final_avg_name=dt_ms_cost_final_avg.final_avg_name
, @check_avg_start_date=dt_ms_cost_final_avg.start_date
, @check_avg_end_date=dt_ms_cost_final_avg.end_date
FROM dt_ms_date_business INNER JOIN
dt_ms_cost_final_avg ON dt_ms_date_business.ms_cost_final_avg_id = dt_ms_cost_final_avg.ms_cost_final_avg_id INNER JOIN
dt_ms_cost_final_avg_h_status ON dt_ms_cost_final_avg.ms_cost_final_avg_h_status_id = dt_ms_cost_final_avg_h_status.ms_cost_final_avg_h_status_id
WHERE (dt_ms_cost_final_avg_h_status.ms_cost_final_avg_status_id = 1)
AND (dt_ms_date_business.ms_date_business_id =@check_ms_date_business_id)
if @check_avg_final_avg_name is not null
begin
set @xStsno='02';
set @xStsdes='Gagal, Dokumen sudah terkait FINAL AVG ' + @check_avg_final_avg_name ;
goto f
end
end
declare @ID_HEADER_STATUS bigint
BEGIN TRANSACTION;
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, @info,@now,@data_by)
set @ID_HEADER_STATUS=SCOPE_IDENTITY();
update dt_ms_tpb_out_header
set dt_ms_tpb_out_header_h_status_id =@ID_HEADER_STATUS
where ID_HEADER =@ID_HEADER
if @check_mode_source_id=3-- MEMO
begin
UPDATE dt_ms_memo_header
SET source_out_id = null, mode_source_out = null
where source_out_id = @ID_HEADER and mode_source_out = 0
end
COMMIT TRANSACTION;
declare @detail xml
set @detail =(
select
ID_HEADER AS rID
, status_tpb_out_id AS r1
, status_tpb_out_name AS r2
, mode_source_id AS r3
, mode_source_name AS r4
, is_get AS r5
, KODE_DOKUMEN_PABEAN AS r6
, NOMOR_AJU AS r7
, PJT AS r8
, dbo.date_to_str(TANGGAL_DAFTAR ) AS r9
, NOMOR_DAFTAR AS r10
, KODE_STATUS AS r11
, URAIAN_STATUS AS r12
, KODE_TUJUAN_IN_OUT AS r13
, URAINAN_TUJUAN_IN_OUT AS r14
, MODULE_ID_PENGIRIM AS r15
, MODULE_NAMA_PENGIRIM AS r16
, MODULE_KODE_ID_PENGIRIM AS r17
, MODULE_ALAMAT_PENGIRIM AS r18
, MODULE_KODE_NEGARA_PENGIRIM AS r19
, MODULE_NAMA_NEGARA_PENGIRIM AS r20
, id_type AS r21
, mapping_supplier_id AS r21id
, INTERNAL_ID_PENGIRIM AS r22
, INTERNAL_KODE_PENGIRIM AS r23
, INTERNAL_NAMA_PENGIRIM AS r24
, INTERNAL_ALAMAT_PENGIRIM AS r25
, INTERNAL_KODE_NEGARA_PENGIRIM AS r26
, INTERNAL_NAMA_NEGARA_PENGIRIM AS r27
, api_type_id AS r28
, api_no AS r29
, skep_no AS r30
, dbo.date_to_str(skep_date ) AS r31
, KODE_VALUTA AS r32
, cast(NDPBM AS decimal(18,4)) AS r33
, KODE_HARGA AS r34
, cast(HARGA_TOTAL AS decimal(18,2)) AS r35
, KODE_ASURANSI AS r36
, cast(ASURANSI AS decimal(18,2)) AS r37
, cast(BIAYA_TAMBAHAN AS decimal(18,2)) AS r38
, cast(DISKON AS decimal(18,2)) AS r39
, cast(FREIGHT AS decimal(18,2)) AS r40
, cast(BRUTO AS decimal(18,2)) AS r41
, cast(NETTO AS decimal(18,2)) AS r42
, JUMLAH_BARANG AS r43
, JUMLAH_KEMASAN AS r44
, JUMLAH_KONTAINER AS r45
, KODE_KANTOR_BONGKAR AS r46
, KODE_KANTOR_BONGKAR_NAME AS r47
, KODE_PEL_BONGKAR AS r48
, KODE_PEL_BONGKAR_NAME AS r49
, surat_jalan_no AS r50
, dbo.date_to_str(surat_jalan_date ) AS r51
, WAKTU_BONGKAR AS r52
, WAKTU_STUFFING AS r53
, status_info AS r54
, dbo.date_to_str2(status_date ) AS r55
, status_by AS r56
, dbo.date_to_str2(create_date ) AS r57
, create_by AS r58
, dbo.date_to_str2(modify_date ) AS r59
, modify_by AS r60
, ID_HEADER_ORI AS r61
from vw_ms_header_bc_out
where ID_HEADER=@ID_HEADER
for xml path ('detail')
)
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 ,'') ,isnull(@detail ,'') for xml path ('result')
) as XML) as dt
--GO
--EXEC MG_MS_BC_OUT_CANCEL
--'
GO
Depends On
10Used By
No items found