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_ITEM_DELETE
@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)
,@ms_item_id bigint
SELECT
@data_by=left(ltrim(rtrim(isnull(tempTable.item.value('data_by[1]', 'varchar(100)'),''))),50)
,@ms_item_id=isnull(tempTable.item.value('ms_item_id[1]', 'bigint'),-1)
FROM @PARAMETER.nodes('param/field') tempTable(item)
declare @old_ms_item_id bigint
,@old_ms_item_h_price_id bigint
,@old_sta_qty decimal(38,5)
,@old_sta_price_usd decimal(38,5)
SELECT TOP (1)
@old_ms_item_id=ms_item_id
, @old_sta_qty=sta_qty
, @old_sta_price_usd=sta_price_usd
,@old_ms_item_h_price_id=ms_item_h_price_id
FROM vw_ms_item
WHERE (ms_item_id = @ms_item_id)
if @old_ms_item_id is null
begin
set @xStsno='02';
set @xStsdes='Gagal, Item tidak di temukan' ;
goto f
end
--- APAKAH TERKAIT DI DATA MOTLS
declare @result_use_molts varchar(max)=isnull((
SELECT
'Inv. No :' + vw_ms_molts_invoce.invoice_no +
' ,Inv. Date :' + dbo.date_to_str(vw_ms_molts_invoce.invoice_date) +
' ,File :' + dt_ms_file.file_name
AS [text()]
FROM vw_ms_molts_invoce_item_list INNER JOIN
vw_ms_molts_invoce ON vw_ms_molts_invoce_item_list.ms_molts_invoice_id = vw_ms_molts_invoce.ms_molts_invoice_id INNER JOIN
dt_ms_file ON vw_ms_molts_invoce.ms_file_id = dt_ms_file.ms_file_id
WHERE (vw_ms_molts_invoce_item_list.mapping_ms_item_id = @ms_item_id)
GROUP BY vw_ms_molts_invoce.invoice_no, vw_ms_molts_invoce.invoice_date, dt_ms_file.file_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_molts='' then '' else 'MOLTS :' + @pemisah + @result_use_molts end
--- APAKAH TERKAIT DI DATA MANUAL INVOICE
declare @result_use_manual_invoice_kurir varchar(max)=isnull((
SELECT
'Inv. No :' + vw_ms_manual_invoce.invoice_no +
' ,Inv. Date :' + dbo.date_to_str(vw_ms_manual_invoce.invoice_date) +
' ,File :' + dt_ms_file.file_name
AS [text()]
FROM vw_ms_manual_invoice_invoce_item_list INNER JOIN
vw_ms_manual_invoce ON vw_ms_manual_invoice_invoce_item_list.ms_manual_invoice_id = vw_ms_manual_invoce.ms_manual_invoice_id INNER JOIN
dt_ms_file ON vw_ms_manual_invoce.ms_file_id = dt_ms_file.ms_file_id
WHERE
(vw_ms_manual_invoce.ms_manual_invoice_type_id = 1)
AND (vw_ms_manual_invoice_invoce_item_list.mapping_ms_item_id = @ms_item_id)
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_manual_invoice_kurir='' then '' else 'KURIR :' + @pemisah + @result_use_manual_invoice_kurir end
declare @result_use_manual_invoice_40 varchar(max)=isnull((
SELECT
'Inv. No :' + vw_ms_manual_invoce.invoice_no +
' ,Inv. Date :' + dbo.date_to_str(vw_ms_manual_invoce.invoice_date) +
' ,File :' + dt_ms_file.file_name
AS [text()]
FROM vw_ms_manual_invoice_invoce_item_list INNER JOIN
vw_ms_manual_invoce ON vw_ms_manual_invoice_invoce_item_list.ms_manual_invoice_id = vw_ms_manual_invoce.ms_manual_invoice_id INNER JOIN
dt_ms_file ON vw_ms_manual_invoce.ms_file_id = dt_ms_file.ms_file_id
WHERE
(vw_ms_manual_invoce.ms_manual_invoice_type_id = 2)
AND (vw_ms_manual_invoice_invoce_item_list.mapping_ms_item_id = @ms_item_id)
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_manual_invoice_40='' then '' else 'INVOICE 40 :' + @pemisah + @result_use_manual_invoice_40 end
declare @result_use_manual_invoice_27_in varchar(max)=isnull((
SELECT
'Inv. No :' + vw_ms_manual_invoce.invoice_no +
' ,Inv. Date :' + dbo.date_to_str(vw_ms_manual_invoce.invoice_date) +
' ,File :' + dt_ms_file.file_name
AS [text()]
FROM vw_ms_manual_invoice_invoce_item_list INNER JOIN
vw_ms_manual_invoce ON vw_ms_manual_invoice_invoce_item_list.ms_manual_invoice_id = vw_ms_manual_invoce.ms_manual_invoice_id INNER JOIN
dt_ms_file ON vw_ms_manual_invoce.ms_file_id = dt_ms_file.ms_file_id
WHERE
(vw_ms_manual_invoce.ms_manual_invoice_type_id = 3)
AND (vw_ms_manual_invoice_invoce_item_list.mapping_ms_item_id = @ms_item_id)
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_manual_invoice_27_in='' then '' else 'INVOICE 27 IN :' + @pemisah + @result_use_manual_invoice_27_in end
--- APAKAH TERKAIT DI DOKUMENT IN
declare @result_use_bc_in_23 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_in.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_in.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_in.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_in.status_tpb_in_name
AS [text()]
FROM vw_ms_header_bc_in_item INNER JOIN
vw_ms_header_bc_in ON vw_ms_header_bc_in_item.ID_HEADER = vw_ms_header_bc_in.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_in.status_tpb_in_id = - 1))
AND (vw_ms_header_bc_in_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_in.KODE_DOKUMEN_PABEAN = '23')
AND (vw_ms_header_bc_in_item.mode_source = 1 or vw_ms_header_bc_in_item.mode_source = 4)
GROUP BY vw_ms_header_bc_in.NOMOR_AJU, vw_ms_header_bc_in.NOMOR_DAFTAR, vw_ms_header_bc_in.TANGGAL_DAFTAR, vw_ms_header_bc_in.status_tpb_in_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_in_23='' then '' else 'BC 23:' + @pemisah + @result_use_bc_in_23 end
declare @result_use_bc_in_27 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_in.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_in.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_in.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_in.status_tpb_in_name
AS [text()]
FROM vw_ms_header_bc_in_item INNER JOIN
vw_ms_header_bc_in ON vw_ms_header_bc_in_item.ID_HEADER = vw_ms_header_bc_in.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_in.status_tpb_in_id = - 1))
AND (vw_ms_header_bc_in_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_in.KODE_DOKUMEN_PABEAN = '271')
AND (vw_ms_header_bc_in_item.mode_source = 1 or vw_ms_header_bc_in_item.mode_source = 4)
GROUP BY vw_ms_header_bc_in.NOMOR_AJU, vw_ms_header_bc_in.NOMOR_DAFTAR, vw_ms_header_bc_in.TANGGAL_DAFTAR, vw_ms_header_bc_in.status_tpb_in_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_in_27='' then '' else 'BC 27 IN:' + @pemisah + @result_use_bc_in_27 end
declare @result_use_bc_in_40 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_in.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_in.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_in.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_in.status_tpb_in_name
AS [text()]
FROM vw_ms_header_bc_in_item INNER JOIN
vw_ms_header_bc_in ON vw_ms_header_bc_in_item.ID_HEADER = vw_ms_header_bc_in.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_in.status_tpb_in_id = - 1))
AND (vw_ms_header_bc_in_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_in.KODE_DOKUMEN_PABEAN = '40')
AND (vw_ms_header_bc_in_item.mode_source = 1 or vw_ms_header_bc_in_item.mode_source = 4)
GROUP BY vw_ms_header_bc_in.NOMOR_AJU, vw_ms_header_bc_in.NOMOR_DAFTAR, vw_ms_header_bc_in.TANGGAL_DAFTAR, vw_ms_header_bc_in.status_tpb_in_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_in_40='' then '' else 'BC 40:' + @pemisah + @result_use_bc_in_40 end
declare @result_use_bc_in_262 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_in.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_in.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_in.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_in.status_tpb_in_name
AS [text()]
FROM vw_ms_header_bc_in_item INNER JOIN
vw_ms_header_bc_in ON vw_ms_header_bc_in_item.ID_HEADER = vw_ms_header_bc_in.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_in.status_tpb_in_id = - 1))
AND (vw_ms_header_bc_in_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_in.KODE_DOKUMEN_PABEAN = '262')
AND (vw_ms_header_bc_in_item.mode_source = 1 or vw_ms_header_bc_in_item.mode_source = 4)
GROUP BY vw_ms_header_bc_in.NOMOR_AJU, vw_ms_header_bc_in.NOMOR_DAFTAR, vw_ms_header_bc_in.TANGGAL_DAFTAR, vw_ms_header_bc_in.status_tpb_in_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_in_262='' then '' else 'BC 262:' + @pemisah + @result_use_bc_in_262 end
--- APAKAH TERKAIT DI DOKUMENT CAR LINE
declare @result_use_carline varchar(max)=isnull((
SELECT
'Doc. No :' + vw_ms_out_car_line_header.doc_no +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_out_car_line_header.doc_date)+
' ,Prosses :' + isnull(vw_ms_out_car_line_header.ms_type_prosses_name ,'') +
' ,Car Line :' + isnull(vw_ms_out_car_line_header.ms_car_line_name ,'') +
' ,Status :' + vw_ms_out_car_line_header.ms_car_line_out_header_status_name
AS [text()]
FROM vw_ms_out_car_line_detail INNER JOIN
vw_ms_out_car_line_header ON vw_ms_out_car_line_detail.ms_car_line_out_header_id = vw_ms_out_car_line_header.ms_car_line_out_header_id
WHERE
(vw_ms_out_car_line_detail.ms_item_id = @ms_item_id)
AND
(NOT (vw_ms_out_car_line_header.ms_car_line_out_header_status_id = - 1))
GROUP BY vw_ms_out_car_line_header.doc_no, vw_ms_out_car_line_header.doc_date, vw_ms_out_car_line_header.ms_type_prosses_name, vw_ms_out_car_line_header.ms_car_line_name,
vw_ms_out_car_line_header.ms_car_line_out_header_status_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_carline='' then '' else 'OUT PRODUCTION:' + @pemisah + @result_use_carline end
--- APAKAH TERKAIT DI DOKUMENT MEMO
declare @result_use_memo_selling varchar(max)=isnull((
SELECT
'Doc. No :' + isnull(vw_ms_memo_header.doc_no,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_memo_header.doc_date) +
' ,Status :' + vw_ms_memo_header.ms_memo_header_status_name
AS [text()]
FROM vw_ms_memo_detail INNER JOIN
vw_ms_memo_header ON vw_ms_memo_detail.ms_memo_header_id = vw_ms_memo_header.ms_memo_header_id
WHERE
(vw_ms_memo_detail.ms_item_id = @ms_item_id)
AND (vw_ms_memo_header.ms_memo_type_id = 2)
GROUP BY vw_ms_memo_header.doc_no, vw_ms_memo_header.doc_date, vw_ms_memo_header.ms_memo_header_status_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_memo_selling='' then '' else 'MEMO SELLING:' + @pemisah + @result_use_memo_selling end
declare @result_use_memo_repair varchar(max)=isnull((
SELECT
'Doc. No :' + isnull(vw_ms_memo_header.doc_no,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_memo_header.doc_date) +
' ,Status :' + vw_ms_memo_header.ms_memo_header_status_name
AS [text()]
FROM vw_ms_memo_detail INNER JOIN
vw_ms_memo_header ON vw_ms_memo_detail.ms_memo_header_id = vw_ms_memo_header.ms_memo_header_id
WHERE
(vw_ms_memo_detail.ms_item_id = @ms_item_id)
AND (vw_ms_memo_header.ms_memo_type_id = 1)
GROUP BY vw_ms_memo_header.doc_no, vw_ms_memo_header.doc_date, vw_ms_memo_header.ms_memo_header_status_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_memo_repair='' then '' else 'MEMO REPAIR:' + @pemisah + @result_use_memo_repair end
declare @result_use_memo_scrap varchar(max)=isnull((
SELECT
'Doc. No :' + isnull(vw_ms_memo_header.doc_no,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_memo_header.doc_date) +
' ,Status :' + vw_ms_memo_header.ms_memo_header_status_name
AS [text()]
FROM vw_ms_memo_detail INNER JOIN
vw_ms_memo_header ON vw_ms_memo_detail.ms_memo_header_id = vw_ms_memo_header.ms_memo_header_id
WHERE
(vw_ms_memo_detail.ms_item_id = @ms_item_id)
AND (vw_ms_memo_header.ms_memo_type_id = 0)
GROUP BY vw_ms_memo_header.doc_no, vw_ms_memo_header.doc_date, vw_ms_memo_header.ms_memo_header_status_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_memo_scrap='' then '' else 'MEMO SCRAP:' + @pemisah + @result_use_memo_scrap end
declare @result_use_memo_scrap_supply varchar(max)=isnull((
SELECT
'Doc. No :' + isnull(vw_ms_memo_header.doc_no,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_memo_header.doc_date) +
' ,Status :' + vw_ms_memo_header.ms_memo_header_status_name
AS [text()]
FROM vw_ms_memo_detail INNER JOIN
vw_ms_memo_header ON vw_ms_memo_detail.ms_memo_header_id = vw_ms_memo_header.ms_memo_header_id INNER JOIN
vw_ms_memo_detail_suplly ON vw_ms_memo_detail.ms_memo_detail_id = vw_ms_memo_detail_suplly.ms_memo_detail_id
WHERE (vw_ms_memo_header.ms_memo_type_id = 0) AND (vw_ms_memo_detail_suplly.ms_item_id = @ms_item_id)
GROUP BY vw_ms_memo_header.doc_no, vw_ms_memo_header.doc_date, vw_ms_memo_header.ms_memo_header_status_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_memo_scrap_supply='' then '' else 'MEMO SCRAP SUPPLY ITEM:' + @pemisah + @result_use_memo_scrap_supply end
--- APAKAH TERKAIT DI DOKUMENT RETUR
declare @result_use_retur varchar(max)=isnull((
SELECT
'Retur No :' + isnull(vw_ms_production_retur_header.retur_no,'') +
' ,Retur Date :' + dbo.date_to_str(vw_ms_production_retur_header.retur_date) +
' ,Status :' + vw_ms_production_retur_header.status_production_retur_name
AS [text()]
FROM vw_ms_production_retur_detail INNER JOIN
vw_ms_production_retur_header ON vw_ms_production_retur_detail.ms_production_retur_id = vw_ms_production_retur_header.ms_production_retur_id
WHERE (NOT (vw_ms_production_retur_header.status_production_retur_id = - 1)) AND (vw_ms_production_retur_detail.ms_item_id = @ms_item_id)
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_retur='' then '' else 'RETUR:' + @pemisah + @result_use_retur end
--- APAKAH TERKAIT DI DOKUMENT STOCK OPNAME
declare @result_use_sto varchar(max)=isnull((
SELECT
'Doc. No :' + isnull(vw_ms_sto_header.doc_code,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_sto_header.doc_date) +
' ,Status :' + vw_ms_sto_header.status_adj_sto_name
AS [text()]
FROM vw_ms_sto_detail INNER JOIN
vw_ms_sto_header ON vw_ms_sto_detail.sto_header_id = vw_ms_sto_header.ms_adj_sto_id
WHERE (vw_ms_sto_detail.ms_item_id = @ms_item_id)
AND (NOT (vw_ms_sto_header.status_adj_sto_id = - 1))
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_sto='' then '' else 'STOCK OPNAME:' + @pemisah + @result_use_sto end
--- APAKAH TERKAIT DI DOKUMENT ADJUSTMENT
declare @result_use_adjustment varchar(max)=isnull((
SELECT
'Doc. No :' + isnull(vw_ms_adjustment_header.doc_code,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_adjustment_header.doc_date) +
' ,Status :' + vw_ms_adjustment_header.status_adj_sto_name
AS [text()]
FROM vw_ms_adjustment_detail INNER JOIN
vw_ms_adjustment_header ON vw_ms_adjustment_detail.adjustment_header_id = vw_ms_adjustment_header.ms_adj_sto_id
WHERE (vw_ms_adjustment_detail.ms_item_id = @ms_item_id)
AND (NOT (vw_ms_adjustment_header.status_adj_sto_id = - 1))
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_adjustment='' then '' else 'ADJUSTMENT:' + @pemisah + @result_use_adjustment end
--- APAKAH TERKAIT DI BC OUT
declare @result_use_bc_out_30 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_out.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_out.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_out.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_out.status_tpb_out_name
AS [text()]
FROM vw_ms_header_bc_out_item INNER JOIN
vw_ms_header_bc_out ON vw_ms_header_bc_out_item.ID_HEADER = vw_ms_header_bc_out.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_out.status_tpb_out_id = - 1))
AND (vw_ms_header_bc_out_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_out.KODE_DOKUMEN_PABEAN = '30')
AND (vw_ms_header_bc_out_item.mode_source = 1 or vw_ms_header_bc_out_item.mode_source = 4)
GROUP BY vw_ms_header_bc_out.NOMOR_AJU, vw_ms_header_bc_out.NOMOR_DAFTAR, vw_ms_header_bc_out.TANGGAL_DAFTAR, vw_ms_header_bc_out.status_tpb_out_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_out_30='' then '' else 'BC 30:' + @pemisah + @result_use_bc_out_30 end
declare @result_use_bc_out_27 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_out.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_out.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_out.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_out.status_tpb_out_name
AS [text()]
FROM vw_ms_header_bc_out_item INNER JOIN
vw_ms_header_bc_out ON vw_ms_header_bc_out_item.ID_HEADER = vw_ms_header_bc_out.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_out.status_tpb_out_id = - 1))
AND (vw_ms_header_bc_out_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_out.KODE_DOKUMEN_PABEAN = '27')
AND (vw_ms_header_bc_out_item.mode_source = 1 or vw_ms_header_bc_out_item.mode_source = 4)
GROUP BY vw_ms_header_bc_out.NOMOR_AJU, vw_ms_header_bc_out.NOMOR_DAFTAR, vw_ms_header_bc_out.TANGGAL_DAFTAR, vw_ms_header_bc_out.status_tpb_out_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_out_27='' then '' else 'BC 27 OUT:' + @pemisah + @result_use_bc_out_27 end
declare @result_use_bc_out_41 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_out.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_out.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_out.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_out.status_tpb_out_name
AS [text()]
FROM vw_ms_header_bc_out_item INNER JOIN
vw_ms_header_bc_out ON vw_ms_header_bc_out_item.ID_HEADER = vw_ms_header_bc_out.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_out.status_tpb_out_id = - 1))
AND (vw_ms_header_bc_out_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_out.KODE_DOKUMEN_PABEAN = '41')
AND (vw_ms_header_bc_out_item.mode_source = 1 or vw_ms_header_bc_out_item.mode_source = 4)
GROUP BY vw_ms_header_bc_out.NOMOR_AJU, vw_ms_header_bc_out.NOMOR_DAFTAR, vw_ms_header_bc_out.TANGGAL_DAFTAR, vw_ms_header_bc_out.status_tpb_out_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_out_41='' then '' else 'BC 41:' + @pemisah + @result_use_bc_out_41 end
declare @result_use_bc_out_261 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_out.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_out.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_out.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_out.status_tpb_out_name
AS [text()]
FROM vw_ms_header_bc_out_item INNER JOIN
vw_ms_header_bc_out ON vw_ms_header_bc_out_item.ID_HEADER = vw_ms_header_bc_out.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_out.status_tpb_out_id = - 1))
AND (vw_ms_header_bc_out_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_out.KODE_DOKUMEN_PABEAN = '261')
AND (vw_ms_header_bc_out_item.mode_source = 1 or vw_ms_header_bc_out_item.mode_source = 4)
GROUP BY vw_ms_header_bc_out.NOMOR_AJU, vw_ms_header_bc_out.NOMOR_DAFTAR, vw_ms_header_bc_out.TANGGAL_DAFTAR, vw_ms_header_bc_out.status_tpb_out_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_out_261='' then '' else 'BC 261:' + @pemisah + @result_use_bc_out_261 end
declare @result_use_bc_out_25 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_out.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_out.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_out.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_out.status_tpb_out_name
AS [text()]
FROM vw_ms_header_bc_out_item INNER JOIN
vw_ms_header_bc_out ON vw_ms_header_bc_out_item.ID_HEADER = vw_ms_header_bc_out.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_out.status_tpb_out_id = - 1))
AND (vw_ms_header_bc_out_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_out.KODE_DOKUMEN_PABEAN = '25')
AND (vw_ms_header_bc_out_item.mode_source = 1 or vw_ms_header_bc_out_item.mode_source = 4)
GROUP BY vw_ms_header_bc_out.NOMOR_AJU, vw_ms_header_bc_out.NOMOR_DAFTAR, vw_ms_header_bc_out.TANGGAL_DAFTAR, vw_ms_header_bc_out.status_tpb_out_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_out_25='' then '' else 'BC 25:' + @pemisah + @result_use_bc_out_25 end
declare @result_use_pemusnahan varchar(max)=isnull((
SELECT
'BAPB. No :' + isnull(vw_ms_header_bc_out.NOMOR_DAFTAR,'') +
' ,BAPB. Date :' + dbo.date_to_str(vw_ms_header_bc_out.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_out.status_tpb_out_name
AS [text()]
FROM vw_ms_header_bc_out_item INNER JOIN
vw_ms_header_bc_out ON vw_ms_header_bc_out_item.ID_HEADER = vw_ms_header_bc_out.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_out.status_tpb_out_id = - 1))
AND (vw_ms_header_bc_out_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_out.KODE_DOKUMEN_PABEAN = 'PEMUSNAHAN')
AND (vw_ms_header_bc_out_item.mode_source = 1 or vw_ms_header_bc_out_item.mode_source = 4)
GROUP BY vw_ms_header_bc_out.NOMOR_AJU, vw_ms_header_bc_out.NOMOR_DAFTAR, vw_ms_header_bc_out.TANGGAL_DAFTAR, vw_ms_header_bc_out.status_tpb_out_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_pemusnahan='' then '' else 'PEMUSNAHAN:' + @pemisah + @result_use_pemusnahan end
SET @resultX= REPLACE(@resultX,@pemisah_replace,@pemisah);
IF @resultX is not null
BEGIN
SET @xStsno='17';
SET @xStsdes='Gagal , Data Terpakai Di Dokumen : ' + @pemisah+ @pemisah+ @resultX + @pemisah+ @pemisah+ ', Cancel Terlebih dahulu dokumen terkait supply' ;
GOto f
end
--- CHECK APAKAH MS_ITEM_ID SUDAH TERAKAIT DENGAN POSTING FINAL AVG
declare @check_count int
SELECT
@check_count=count(*)
FROM dt_ms_cost_final_avg 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 INNER JOIN
dt_ms_item_list_price ON dt_ms_cost_final_avg.ms_cost_final_avg_id = dt_ms_item_list_price.ms_cost_final_avg_id
WHERE (dt_ms_cost_final_avg_h_status.ms_cost_final_avg_status_id = 1)
AND dt_ms_item_list_price.ms_item_id=@ms_item_id
AND not(dt_ms_cost_final_avg.ms_cost_final_avg_id =0)
if @check_count >0
begin
set @xStsno='02';
set @xStsdes='Gagal, Item tidak bisa di hapus karena Sudah terkait POSTING FINAL AVG' ;
goto f
end
BEGIN TRANSACTION;
delete from dt_ms_item
WHERE (ms_item_id = @ms_item_id)
delete from dt_ms_item_h_status
WHERE (ms_item_id = @ms_item_id)
delete from dt_ms_item_list_price
WHERE (ms_item_id = @ms_item_id)
delete from dt_ms_item_daily_in_move_avg
WHERE (ms_item_id = @ms_item_id)
delete from dt_ms_item_daily_out_move_avg
WHERE (ms_item_id = @ms_item_id)
delete from dt_ms_item_list_price
WHERE (ms_item_id = @ms_item_id)
delete from dt_ms_item_in_detail
WHERE (ms_item_id = @ms_item_id)
delete from dt_ms_item_list_sta
WHERE (ms_item_id = @ms_item_id)
delete from dt_ms_mutasi_item
WHERE (ms_item_id = @ms_item_id)
DELETE FROM dt_ms_memo_detail_supply
FROM dt_ms_memo_detail_supply INNER JOIN
dt_ms_memo_detail ON dt_ms_memo_detail_supply.ms_memo_detail_id = dt_ms_memo_detail.ms_memo_detail_id
WHERE (dt_ms_memo_detail.ms_item_id = @ms_item_id)
delete from dt_ms_memo_detail
WHERE (ms_item_id = @ms_item_id)
update dt_ms_molts_invoice_detail
set mapping_ms_item_id=null
WHERE (mapping_ms_item_id = @ms_item_id)
update dt_ms_tpb_in_barang
set mapping_ms_item_id=null
WHERE (mapping_ms_item_id = @ms_item_id)
update dt_ms_tpb_out_barang
set mapping_ms_item_id=null
WHERE (mapping_ms_item_id = @ms_item_id)
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_ITEM_DELETE
--'1 2 json 2 ::1 2 70095738DW CRIMPING DIES G03 IE014 PCE 0 10 10000
--'
GO
GO
create procedure dbo.MG_MS_ITEM_DELETE
@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)
,@ms_item_id bigint
SELECT
@data_by=left(ltrim(rtrim(isnull(tempTable.item.value('data_by[1]', 'varchar(100)'),''))),50)
,@ms_item_id=isnull(tempTable.item.value('ms_item_id[1]', 'bigint'),-1)
FROM @PARAMETER.nodes('param/field') tempTable(item)
declare @old_ms_item_id bigint
,@old_ms_item_h_price_id bigint
,@old_sta_qty decimal(38,5)
,@old_sta_price_usd decimal(38,5)
SELECT TOP (1)
@old_ms_item_id=ms_item_id
, @old_sta_qty=sta_qty
, @old_sta_price_usd=sta_price_usd
,@old_ms_item_h_price_id=ms_item_h_price_id
FROM vw_ms_item
WHERE (ms_item_id = @ms_item_id)
if @old_ms_item_id is null
begin
set @xStsno='02';
set @xStsdes='Gagal, Item tidak di temukan' ;
goto f
end
--- APAKAH TERKAIT DI DATA MOTLS
declare @result_use_molts varchar(max)=isnull((
SELECT
'Inv. No :' + vw_ms_molts_invoce.invoice_no +
' ,Inv. Date :' + dbo.date_to_str(vw_ms_molts_invoce.invoice_date) +
' ,File :' + dt_ms_file.file_name
AS [text()]
FROM vw_ms_molts_invoce_item_list INNER JOIN
vw_ms_molts_invoce ON vw_ms_molts_invoce_item_list.ms_molts_invoice_id = vw_ms_molts_invoce.ms_molts_invoice_id INNER JOIN
dt_ms_file ON vw_ms_molts_invoce.ms_file_id = dt_ms_file.ms_file_id
WHERE (vw_ms_molts_invoce_item_list.mapping_ms_item_id = @ms_item_id)
GROUP BY vw_ms_molts_invoce.invoice_no, vw_ms_molts_invoce.invoice_date, dt_ms_file.file_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_molts='' then '' else 'MOLTS :' + @pemisah + @result_use_molts end
--- APAKAH TERKAIT DI DATA MANUAL INVOICE
declare @result_use_manual_invoice_kurir varchar(max)=isnull((
SELECT
'Inv. No :' + vw_ms_manual_invoce.invoice_no +
' ,Inv. Date :' + dbo.date_to_str(vw_ms_manual_invoce.invoice_date) +
' ,File :' + dt_ms_file.file_name
AS [text()]
FROM vw_ms_manual_invoice_invoce_item_list INNER JOIN
vw_ms_manual_invoce ON vw_ms_manual_invoice_invoce_item_list.ms_manual_invoice_id = vw_ms_manual_invoce.ms_manual_invoice_id INNER JOIN
dt_ms_file ON vw_ms_manual_invoce.ms_file_id = dt_ms_file.ms_file_id
WHERE
(vw_ms_manual_invoce.ms_manual_invoice_type_id = 1)
AND (vw_ms_manual_invoice_invoce_item_list.mapping_ms_item_id = @ms_item_id)
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_manual_invoice_kurir='' then '' else 'KURIR :' + @pemisah + @result_use_manual_invoice_kurir end
declare @result_use_manual_invoice_40 varchar(max)=isnull((
SELECT
'Inv. No :' + vw_ms_manual_invoce.invoice_no +
' ,Inv. Date :' + dbo.date_to_str(vw_ms_manual_invoce.invoice_date) +
' ,File :' + dt_ms_file.file_name
AS [text()]
FROM vw_ms_manual_invoice_invoce_item_list INNER JOIN
vw_ms_manual_invoce ON vw_ms_manual_invoice_invoce_item_list.ms_manual_invoice_id = vw_ms_manual_invoce.ms_manual_invoice_id INNER JOIN
dt_ms_file ON vw_ms_manual_invoce.ms_file_id = dt_ms_file.ms_file_id
WHERE
(vw_ms_manual_invoce.ms_manual_invoice_type_id = 2)
AND (vw_ms_manual_invoice_invoce_item_list.mapping_ms_item_id = @ms_item_id)
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_manual_invoice_40='' then '' else 'INVOICE 40 :' + @pemisah + @result_use_manual_invoice_40 end
declare @result_use_manual_invoice_27_in varchar(max)=isnull((
SELECT
'Inv. No :' + vw_ms_manual_invoce.invoice_no +
' ,Inv. Date :' + dbo.date_to_str(vw_ms_manual_invoce.invoice_date) +
' ,File :' + dt_ms_file.file_name
AS [text()]
FROM vw_ms_manual_invoice_invoce_item_list INNER JOIN
vw_ms_manual_invoce ON vw_ms_manual_invoice_invoce_item_list.ms_manual_invoice_id = vw_ms_manual_invoce.ms_manual_invoice_id INNER JOIN
dt_ms_file ON vw_ms_manual_invoce.ms_file_id = dt_ms_file.ms_file_id
WHERE
(vw_ms_manual_invoce.ms_manual_invoice_type_id = 3)
AND (vw_ms_manual_invoice_invoce_item_list.mapping_ms_item_id = @ms_item_id)
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_manual_invoice_27_in='' then '' else 'INVOICE 27 IN :' + @pemisah + @result_use_manual_invoice_27_in end
--- APAKAH TERKAIT DI DOKUMENT IN
declare @result_use_bc_in_23 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_in.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_in.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_in.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_in.status_tpb_in_name
AS [text()]
FROM vw_ms_header_bc_in_item INNER JOIN
vw_ms_header_bc_in ON vw_ms_header_bc_in_item.ID_HEADER = vw_ms_header_bc_in.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_in.status_tpb_in_id = - 1))
AND (vw_ms_header_bc_in_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_in.KODE_DOKUMEN_PABEAN = '23')
AND (vw_ms_header_bc_in_item.mode_source = 1 or vw_ms_header_bc_in_item.mode_source = 4)
GROUP BY vw_ms_header_bc_in.NOMOR_AJU, vw_ms_header_bc_in.NOMOR_DAFTAR, vw_ms_header_bc_in.TANGGAL_DAFTAR, vw_ms_header_bc_in.status_tpb_in_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_in_23='' then '' else 'BC 23:' + @pemisah + @result_use_bc_in_23 end
declare @result_use_bc_in_27 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_in.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_in.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_in.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_in.status_tpb_in_name
AS [text()]
FROM vw_ms_header_bc_in_item INNER JOIN
vw_ms_header_bc_in ON vw_ms_header_bc_in_item.ID_HEADER = vw_ms_header_bc_in.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_in.status_tpb_in_id = - 1))
AND (vw_ms_header_bc_in_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_in.KODE_DOKUMEN_PABEAN = '271')
AND (vw_ms_header_bc_in_item.mode_source = 1 or vw_ms_header_bc_in_item.mode_source = 4)
GROUP BY vw_ms_header_bc_in.NOMOR_AJU, vw_ms_header_bc_in.NOMOR_DAFTAR, vw_ms_header_bc_in.TANGGAL_DAFTAR, vw_ms_header_bc_in.status_tpb_in_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_in_27='' then '' else 'BC 27 IN:' + @pemisah + @result_use_bc_in_27 end
declare @result_use_bc_in_40 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_in.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_in.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_in.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_in.status_tpb_in_name
AS [text()]
FROM vw_ms_header_bc_in_item INNER JOIN
vw_ms_header_bc_in ON vw_ms_header_bc_in_item.ID_HEADER = vw_ms_header_bc_in.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_in.status_tpb_in_id = - 1))
AND (vw_ms_header_bc_in_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_in.KODE_DOKUMEN_PABEAN = '40')
AND (vw_ms_header_bc_in_item.mode_source = 1 or vw_ms_header_bc_in_item.mode_source = 4)
GROUP BY vw_ms_header_bc_in.NOMOR_AJU, vw_ms_header_bc_in.NOMOR_DAFTAR, vw_ms_header_bc_in.TANGGAL_DAFTAR, vw_ms_header_bc_in.status_tpb_in_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_in_40='' then '' else 'BC 40:' + @pemisah + @result_use_bc_in_40 end
declare @result_use_bc_in_262 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_in.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_in.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_in.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_in.status_tpb_in_name
AS [text()]
FROM vw_ms_header_bc_in_item INNER JOIN
vw_ms_header_bc_in ON vw_ms_header_bc_in_item.ID_HEADER = vw_ms_header_bc_in.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_in.status_tpb_in_id = - 1))
AND (vw_ms_header_bc_in_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_in.KODE_DOKUMEN_PABEAN = '262')
AND (vw_ms_header_bc_in_item.mode_source = 1 or vw_ms_header_bc_in_item.mode_source = 4)
GROUP BY vw_ms_header_bc_in.NOMOR_AJU, vw_ms_header_bc_in.NOMOR_DAFTAR, vw_ms_header_bc_in.TANGGAL_DAFTAR, vw_ms_header_bc_in.status_tpb_in_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_in_262='' then '' else 'BC 262:' + @pemisah + @result_use_bc_in_262 end
--- APAKAH TERKAIT DI DOKUMENT CAR LINE
declare @result_use_carline varchar(max)=isnull((
SELECT
'Doc. No :' + vw_ms_out_car_line_header.doc_no +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_out_car_line_header.doc_date)+
' ,Prosses :' + isnull(vw_ms_out_car_line_header.ms_type_prosses_name ,'') +
' ,Car Line :' + isnull(vw_ms_out_car_line_header.ms_car_line_name ,'') +
' ,Status :' + vw_ms_out_car_line_header.ms_car_line_out_header_status_name
AS [text()]
FROM vw_ms_out_car_line_detail INNER JOIN
vw_ms_out_car_line_header ON vw_ms_out_car_line_detail.ms_car_line_out_header_id = vw_ms_out_car_line_header.ms_car_line_out_header_id
WHERE
(vw_ms_out_car_line_detail.ms_item_id = @ms_item_id)
AND
(NOT (vw_ms_out_car_line_header.ms_car_line_out_header_status_id = - 1))
GROUP BY vw_ms_out_car_line_header.doc_no, vw_ms_out_car_line_header.doc_date, vw_ms_out_car_line_header.ms_type_prosses_name, vw_ms_out_car_line_header.ms_car_line_name,
vw_ms_out_car_line_header.ms_car_line_out_header_status_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_carline='' then '' else 'OUT PRODUCTION:' + @pemisah + @result_use_carline end
--- APAKAH TERKAIT DI DOKUMENT MEMO
declare @result_use_memo_selling varchar(max)=isnull((
SELECT
'Doc. No :' + isnull(vw_ms_memo_header.doc_no,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_memo_header.doc_date) +
' ,Status :' + vw_ms_memo_header.ms_memo_header_status_name
AS [text()]
FROM vw_ms_memo_detail INNER JOIN
vw_ms_memo_header ON vw_ms_memo_detail.ms_memo_header_id = vw_ms_memo_header.ms_memo_header_id
WHERE
(vw_ms_memo_detail.ms_item_id = @ms_item_id)
AND (vw_ms_memo_header.ms_memo_type_id = 2)
GROUP BY vw_ms_memo_header.doc_no, vw_ms_memo_header.doc_date, vw_ms_memo_header.ms_memo_header_status_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_memo_selling='' then '' else 'MEMO SELLING:' + @pemisah + @result_use_memo_selling end
declare @result_use_memo_repair varchar(max)=isnull((
SELECT
'Doc. No :' + isnull(vw_ms_memo_header.doc_no,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_memo_header.doc_date) +
' ,Status :' + vw_ms_memo_header.ms_memo_header_status_name
AS [text()]
FROM vw_ms_memo_detail INNER JOIN
vw_ms_memo_header ON vw_ms_memo_detail.ms_memo_header_id = vw_ms_memo_header.ms_memo_header_id
WHERE
(vw_ms_memo_detail.ms_item_id = @ms_item_id)
AND (vw_ms_memo_header.ms_memo_type_id = 1)
GROUP BY vw_ms_memo_header.doc_no, vw_ms_memo_header.doc_date, vw_ms_memo_header.ms_memo_header_status_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_memo_repair='' then '' else 'MEMO REPAIR:' + @pemisah + @result_use_memo_repair end
declare @result_use_memo_scrap varchar(max)=isnull((
SELECT
'Doc. No :' + isnull(vw_ms_memo_header.doc_no,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_memo_header.doc_date) +
' ,Status :' + vw_ms_memo_header.ms_memo_header_status_name
AS [text()]
FROM vw_ms_memo_detail INNER JOIN
vw_ms_memo_header ON vw_ms_memo_detail.ms_memo_header_id = vw_ms_memo_header.ms_memo_header_id
WHERE
(vw_ms_memo_detail.ms_item_id = @ms_item_id)
AND (vw_ms_memo_header.ms_memo_type_id = 0)
GROUP BY vw_ms_memo_header.doc_no, vw_ms_memo_header.doc_date, vw_ms_memo_header.ms_memo_header_status_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_memo_scrap='' then '' else 'MEMO SCRAP:' + @pemisah + @result_use_memo_scrap end
declare @result_use_memo_scrap_supply varchar(max)=isnull((
SELECT
'Doc. No :' + isnull(vw_ms_memo_header.doc_no,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_memo_header.doc_date) +
' ,Status :' + vw_ms_memo_header.ms_memo_header_status_name
AS [text()]
FROM vw_ms_memo_detail INNER JOIN
vw_ms_memo_header ON vw_ms_memo_detail.ms_memo_header_id = vw_ms_memo_header.ms_memo_header_id INNER JOIN
vw_ms_memo_detail_suplly ON vw_ms_memo_detail.ms_memo_detail_id = vw_ms_memo_detail_suplly.ms_memo_detail_id
WHERE (vw_ms_memo_header.ms_memo_type_id = 0) AND (vw_ms_memo_detail_suplly.ms_item_id = @ms_item_id)
GROUP BY vw_ms_memo_header.doc_no, vw_ms_memo_header.doc_date, vw_ms_memo_header.ms_memo_header_status_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_memo_scrap_supply='' then '' else 'MEMO SCRAP SUPPLY ITEM:' + @pemisah + @result_use_memo_scrap_supply end
--- APAKAH TERKAIT DI DOKUMENT RETUR
declare @result_use_retur varchar(max)=isnull((
SELECT
'Retur No :' + isnull(vw_ms_production_retur_header.retur_no,'') +
' ,Retur Date :' + dbo.date_to_str(vw_ms_production_retur_header.retur_date) +
' ,Status :' + vw_ms_production_retur_header.status_production_retur_name
AS [text()]
FROM vw_ms_production_retur_detail INNER JOIN
vw_ms_production_retur_header ON vw_ms_production_retur_detail.ms_production_retur_id = vw_ms_production_retur_header.ms_production_retur_id
WHERE (NOT (vw_ms_production_retur_header.status_production_retur_id = - 1)) AND (vw_ms_production_retur_detail.ms_item_id = @ms_item_id)
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_retur='' then '' else 'RETUR:' + @pemisah + @result_use_retur end
--- APAKAH TERKAIT DI DOKUMENT STOCK OPNAME
declare @result_use_sto varchar(max)=isnull((
SELECT
'Doc. No :' + isnull(vw_ms_sto_header.doc_code,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_sto_header.doc_date) +
' ,Status :' + vw_ms_sto_header.status_adj_sto_name
AS [text()]
FROM vw_ms_sto_detail INNER JOIN
vw_ms_sto_header ON vw_ms_sto_detail.sto_header_id = vw_ms_sto_header.ms_adj_sto_id
WHERE (vw_ms_sto_detail.ms_item_id = @ms_item_id)
AND (NOT (vw_ms_sto_header.status_adj_sto_id = - 1))
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_sto='' then '' else 'STOCK OPNAME:' + @pemisah + @result_use_sto end
--- APAKAH TERKAIT DI DOKUMENT ADJUSTMENT
declare @result_use_adjustment varchar(max)=isnull((
SELECT
'Doc. No :' + isnull(vw_ms_adjustment_header.doc_code,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_adjustment_header.doc_date) +
' ,Status :' + vw_ms_adjustment_header.status_adj_sto_name
AS [text()]
FROM vw_ms_adjustment_detail INNER JOIN
vw_ms_adjustment_header ON vw_ms_adjustment_detail.adjustment_header_id = vw_ms_adjustment_header.ms_adj_sto_id
WHERE (vw_ms_adjustment_detail.ms_item_id = @ms_item_id)
AND (NOT (vw_ms_adjustment_header.status_adj_sto_id = - 1))
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_adjustment='' then '' else 'ADJUSTMENT:' + @pemisah + @result_use_adjustment end
--- APAKAH TERKAIT DI BC OUT
declare @result_use_bc_out_30 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_out.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_out.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_out.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_out.status_tpb_out_name
AS [text()]
FROM vw_ms_header_bc_out_item INNER JOIN
vw_ms_header_bc_out ON vw_ms_header_bc_out_item.ID_HEADER = vw_ms_header_bc_out.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_out.status_tpb_out_id = - 1))
AND (vw_ms_header_bc_out_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_out.KODE_DOKUMEN_PABEAN = '30')
AND (vw_ms_header_bc_out_item.mode_source = 1 or vw_ms_header_bc_out_item.mode_source = 4)
GROUP BY vw_ms_header_bc_out.NOMOR_AJU, vw_ms_header_bc_out.NOMOR_DAFTAR, vw_ms_header_bc_out.TANGGAL_DAFTAR, vw_ms_header_bc_out.status_tpb_out_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_out_30='' then '' else 'BC 30:' + @pemisah + @result_use_bc_out_30 end
declare @result_use_bc_out_27 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_out.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_out.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_out.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_out.status_tpb_out_name
AS [text()]
FROM vw_ms_header_bc_out_item INNER JOIN
vw_ms_header_bc_out ON vw_ms_header_bc_out_item.ID_HEADER = vw_ms_header_bc_out.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_out.status_tpb_out_id = - 1))
AND (vw_ms_header_bc_out_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_out.KODE_DOKUMEN_PABEAN = '27')
AND (vw_ms_header_bc_out_item.mode_source = 1 or vw_ms_header_bc_out_item.mode_source = 4)
GROUP BY vw_ms_header_bc_out.NOMOR_AJU, vw_ms_header_bc_out.NOMOR_DAFTAR, vw_ms_header_bc_out.TANGGAL_DAFTAR, vw_ms_header_bc_out.status_tpb_out_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_out_27='' then '' else 'BC 27 OUT:' + @pemisah + @result_use_bc_out_27 end
declare @result_use_bc_out_41 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_out.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_out.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_out.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_out.status_tpb_out_name
AS [text()]
FROM vw_ms_header_bc_out_item INNER JOIN
vw_ms_header_bc_out ON vw_ms_header_bc_out_item.ID_HEADER = vw_ms_header_bc_out.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_out.status_tpb_out_id = - 1))
AND (vw_ms_header_bc_out_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_out.KODE_DOKUMEN_PABEAN = '41')
AND (vw_ms_header_bc_out_item.mode_source = 1 or vw_ms_header_bc_out_item.mode_source = 4)
GROUP BY vw_ms_header_bc_out.NOMOR_AJU, vw_ms_header_bc_out.NOMOR_DAFTAR, vw_ms_header_bc_out.TANGGAL_DAFTAR, vw_ms_header_bc_out.status_tpb_out_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_out_41='' then '' else 'BC 41:' + @pemisah + @result_use_bc_out_41 end
declare @result_use_bc_out_261 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_out.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_out.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_out.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_out.status_tpb_out_name
AS [text()]
FROM vw_ms_header_bc_out_item INNER JOIN
vw_ms_header_bc_out ON vw_ms_header_bc_out_item.ID_HEADER = vw_ms_header_bc_out.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_out.status_tpb_out_id = - 1))
AND (vw_ms_header_bc_out_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_out.KODE_DOKUMEN_PABEAN = '261')
AND (vw_ms_header_bc_out_item.mode_source = 1 or vw_ms_header_bc_out_item.mode_source = 4)
GROUP BY vw_ms_header_bc_out.NOMOR_AJU, vw_ms_header_bc_out.NOMOR_DAFTAR, vw_ms_header_bc_out.TANGGAL_DAFTAR, vw_ms_header_bc_out.status_tpb_out_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_out_261='' then '' else 'BC 261:' + @pemisah + @result_use_bc_out_261 end
declare @result_use_bc_out_25 varchar(max)=isnull((
SELECT
'Aju :' + isnull(vw_ms_header_bc_out.NOMOR_AJU,'') +
' ,Doc. No :' + isnull(vw_ms_header_bc_out.NOMOR_DAFTAR,'') +
' ,Doc. Date :' + dbo.date_to_str(vw_ms_header_bc_out.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_out.status_tpb_out_name
AS [text()]
FROM vw_ms_header_bc_out_item INNER JOIN
vw_ms_header_bc_out ON vw_ms_header_bc_out_item.ID_HEADER = vw_ms_header_bc_out.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_out.status_tpb_out_id = - 1))
AND (vw_ms_header_bc_out_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_out.KODE_DOKUMEN_PABEAN = '25')
AND (vw_ms_header_bc_out_item.mode_source = 1 or vw_ms_header_bc_out_item.mode_source = 4)
GROUP BY vw_ms_header_bc_out.NOMOR_AJU, vw_ms_header_bc_out.NOMOR_DAFTAR, vw_ms_header_bc_out.TANGGAL_DAFTAR, vw_ms_header_bc_out.status_tpb_out_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_bc_out_25='' then '' else 'BC 25:' + @pemisah + @result_use_bc_out_25 end
declare @result_use_pemusnahan varchar(max)=isnull((
SELECT
'BAPB. No :' + isnull(vw_ms_header_bc_out.NOMOR_DAFTAR,'') +
' ,BAPB. Date :' + dbo.date_to_str(vw_ms_header_bc_out.TANGGAL_DAFTAR) +
' ,Status :' + vw_ms_header_bc_out.status_tpb_out_name
AS [text()]
FROM vw_ms_header_bc_out_item INNER JOIN
vw_ms_header_bc_out ON vw_ms_header_bc_out_item.ID_HEADER = vw_ms_header_bc_out.ID_HEADER
WHERE
(NOT (vw_ms_header_bc_out.status_tpb_out_id = - 1))
AND (vw_ms_header_bc_out_item.mapping_ms_item_id = @ms_item_id)
AND (vw_ms_header_bc_out.KODE_DOKUMEN_PABEAN = 'PEMUSNAHAN')
AND (vw_ms_header_bc_out_item.mode_source = 1 or vw_ms_header_bc_out_item.mode_source = 4)
GROUP BY vw_ms_header_bc_out.NOMOR_AJU, vw_ms_header_bc_out.NOMOR_DAFTAR, vw_ms_header_bc_out.TANGGAL_DAFTAR, vw_ms_header_bc_out.status_tpb_out_name
For XML PATH ('')) ,'')
set @resultX=@resultX + case when @result_use_pemusnahan='' then '' else 'PEMUSNAHAN:' + @pemisah + @result_use_pemusnahan end
SET @resultX= REPLACE(@resultX,@pemisah_replace,@pemisah);
IF @resultX is not null
BEGIN
SET @xStsno='17';
SET @xStsdes='Gagal , Data Terpakai Di Dokumen : ' + @pemisah+ @pemisah+ @resultX + @pemisah+ @pemisah+ ', Cancel Terlebih dahulu dokumen terkait supply' ;
GOto f
end
--- CHECK APAKAH MS_ITEM_ID SUDAH TERAKAIT DENGAN POSTING FINAL AVG
declare @check_count int
SELECT
@check_count=count(*)
FROM dt_ms_cost_final_avg 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 INNER JOIN
dt_ms_item_list_price ON dt_ms_cost_final_avg.ms_cost_final_avg_id = dt_ms_item_list_price.ms_cost_final_avg_id
WHERE (dt_ms_cost_final_avg_h_status.ms_cost_final_avg_status_id = 1)
AND dt_ms_item_list_price.ms_item_id=@ms_item_id
AND not(dt_ms_cost_final_avg.ms_cost_final_avg_id =0)
if @check_count >0
begin
set @xStsno='02';
set @xStsdes='Gagal, Item tidak bisa di hapus karena Sudah terkait POSTING FINAL AVG' ;
goto f
end
BEGIN TRANSACTION;
delete from dt_ms_item
WHERE (ms_item_id = @ms_item_id)
delete from dt_ms_item_h_status
WHERE (ms_item_id = @ms_item_id)
delete from dt_ms_item_list_price
WHERE (ms_item_id = @ms_item_id)
delete from dt_ms_item_daily_in_move_avg
WHERE (ms_item_id = @ms_item_id)
delete from dt_ms_item_daily_out_move_avg
WHERE (ms_item_id = @ms_item_id)
delete from dt_ms_item_list_price
WHERE (ms_item_id = @ms_item_id)
delete from dt_ms_item_in_detail
WHERE (ms_item_id = @ms_item_id)
delete from dt_ms_item_list_sta
WHERE (ms_item_id = @ms_item_id)
delete from dt_ms_mutasi_item
WHERE (ms_item_id = @ms_item_id)
DELETE FROM dt_ms_memo_detail_supply
FROM dt_ms_memo_detail_supply INNER JOIN
dt_ms_memo_detail ON dt_ms_memo_detail_supply.ms_memo_detail_id = dt_ms_memo_detail.ms_memo_detail_id
WHERE (dt_ms_memo_detail.ms_item_id = @ms_item_id)
delete from dt_ms_memo_detail
WHERE (ms_item_id = @ms_item_id)
update dt_ms_molts_invoice_detail
set mapping_ms_item_id=null
WHERE (mapping_ms_item_id = @ms_item_id)
update dt_ms_tpb_in_barang
set mapping_ms_item_id=null
WHERE (mapping_ms_item_id = @ms_item_id)
update dt_ms_tpb_out_barang
set mapping_ms_item_id=null
WHERE (mapping_ms_item_id = @ms_item_id)
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_ITEM_DELETE
--'
--'
GO
Depends On
37- dbo.vw_ms_item
- dbo.date_to_str
- dbo.vw_ms_molts_invoce_item_list
- dbo.vw_ms_molts_invoce
- dbo.dt_ms_file
- dbo.vw_ms_manual_invoice_invoce_item_list
- dbo.vw_ms_manual_invoce
- dbo.vw_ms_header_bc_in_item
- dbo.vw_ms_header_bc_in
- dbo.vw_ms_out_car_line_detail
- dbo.vw_ms_out_car_line_header
- dbo.vw_ms_memo_detail
- dbo.vw_ms_memo_header
- dbo.vw_ms_memo_detail_suplly
- dbo.vw_ms_production_retur_detail
- dbo.vw_ms_production_retur_header
- dbo.vw_ms_sto_detail
- dbo.vw_ms_sto_header
- dbo.vw_ms_adjustment_detail
- dbo.vw_ms_adjustment_header
- dbo.vw_ms_header_bc_out_item
- dbo.vw_ms_header_bc_out
- dbo.dt_ms_cost_final_avg
- dbo.dt_ms_cost_final_avg_h_status
- dbo.dt_ms_item_list_price
- dbo.dt_ms_item
- dbo.dt_ms_item_h_status
- dbo.dt_ms_item_daily_in_move_avg
- dbo.dt_ms_item_daily_out_move_avg
- dbo.dt_ms_item_in_detail
- dbo.dt_ms_item_list_sta
- dbo.dt_ms_mutasi_item
- dbo.dt_ms_memo_detail_supply
- dbo.dt_ms_memo_detail
- dbo.dt_ms_molts_invoice_detail
- dbo.dt_ms_tpb_in_barang
- dbo.dt_ms_tpb_out_barang
Used By
No items found