NJC__Documentation::DB

dbo.MG_MS_SUPPLIER_CUSTOMER_EDIT

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_SUPPLIER_CUSTOMER_EDIT
@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_supplier_customer_id int
,@id_type int
,@id_nomor varchar(20)
,@supplier_customer_code varchar(50)
,@supplier_customer_name varchar(255)
,@supplier_customer_address varchar(255)
,@supplier_customer_country varchar(2)
,@is_affilete bit
,@api_type_id int
,@api_no varchar(20)
,@skep_no varchar(50)
,@skep_date date


SELECT 
@data_by=left(ltrim(rtrim(isnull(tempTable.item.value('data_by[1]', 'varchar(100)'),''))),50)
,@ms_supplier_customer_id=isnull(tempTable.item.value('ms_supplier_customer_id[1]', 'int'),-1)
,@id_type=isnull(tempTable.item.value('id_type[1]', 'int'),-1)
,@id_nomor=left(ltrim(rtrim(isnull(tempTable.item.value('id_nomor[1]', 'varchar(70)'),''))),20)
,@supplier_customer_code=left(ltrim(rtrim(isnull(tempTable.item.value('supplier_customer_code[1]', 'varchar(100)'),''))),50)
,@supplier_customer_name=left(ltrim(rtrim(isnull(tempTable.item.value('supplier_customer_name[1]', 'varchar(305)'),''))),255)
,@supplier_customer_address=left(ltrim(rtrim(isnull(tempTable.item.value('supplier_customer_address[1]', 'varchar(305)'),''))),255)
,@supplier_customer_country=left(ltrim(rtrim(isnull(tempTable.item.value('supplier_customer_country[1]', 'varchar(52)'),''))),2)
,@is_affilete=isnull(tempTable.item.value('is_affilete[1]', 'bit'),1)
,@api_type_id=isnull(tempTable.item.value('api_type_id[1]', 'int'),-1)
,@api_no=left(ltrim(rtrim(isnull(tempTable.item.value('api_no[1]', 'varchar(70)'),''))),20)
,@skep_no=left(ltrim(rtrim(isnull(tempTable.item.value('skep_no[1]', 'varchar(100)'),''))),50)
,@skep_date=dbo.str_to_date(tempTable.item.value('skep_date[1]', 'varchar(255)'))
FROM @PARAMETER.nodes('param/field')  tempTable(item)

exec  MG_CHECK_USER @data_by, 0, @xStsno output,@xStsdes output; 
if @xStsno <>'00' 
goto f ; 

if @supplier_customer_code=''
begin
 set @xStsno='02';
 set @xStsdes='Gagal, Kode tidak boleh kosong' ;
goto f
end

if (
SELECT        COUNT(*) AS Expr1
FROM            dt_ms_supplier_customer
WHERE        (supplier_customer_code = @supplier_customer_code) and (not(ms_supplier_customer_id=@ms_supplier_customer_id))) >0
begin
 set @xStsno='02';
 set @xStsdes='Gagal, Kode Sudah terdaftar , gunakan Kode lainnya' ;
goto f
end


if @supplier_customer_name =''
begin
 set @xStsno='02';
 set @xStsdes='Gagal, Nama tidak boleh kosong' ;
goto f
end
 

if @supplier_customer_country =''
begin
 set @xStsno='02';
 set @xStsdes='Gagal, Negara Supplier tidak boleh kosong' ;
goto f
end

if ( SELECT    count(*)
FROM            tblNegara
WHERE        (KdEdi = @supplier_customer_country)
)=0
begin
 set @xStsno='02';
 set @xStsdes='Gagal, Negara Supplier tidak terdaftar' ;
goto f
end

if len(@skep_no)>0
begin
 if (
 SELECT        COUNT(*) AS Expr1
 FROM            dt_ms_supplier_customer
 WHERE        (skep_no = @skep_no)  and (not(ms_supplier_customer_id=@ms_supplier_customer_id))) >0
 begin
  set @xStsno='02';
  set @xStsdes='Gagal, Skep sudah terdaftar , gunakan Skep lainnya' ;
 goto f
 end
end

 
 
BEGIN TRANSACTION;    

 UPDATE       dt_ms_supplier_customer
SET                id_type = @id_type, id_nomor = @id_nomor
, supplier_customer_code = @supplier_customer_code
, supplier_customer_name = @supplier_customer_name
, supplier_customer_address = @supplier_customer_address
, supplier_customer_country = @supplier_customer_country
, api_type_id = @api_type_id, api_no = @api_no
, is_affilete=@is_affilete
, skep_no = @skep_no
, skep_date =@skep_date
, modify_date = @now
, modify_by = @data_by
WHERE        (ms_supplier_customer_id = @ms_supplier_customer_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_SUPPLIER_CUSTOMER_EDIT
--'12json2::1ABA0127810007'
GO

Used By

No items found