dbo.TEST_GRN_POST

Description

Post to Internal DB, Retrieving data from local Purchase System.

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.TEST_GRN_POST
@PARAMETER xml='' 
--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'

  
 SET NOCOUNT ON
 exec  MG_CHECK_CREATE_PERIODE @xStsno output,@xStsdes output;
 IF not(
 @xStsno ='00'
  )
 BEGIN
    SET @XmlSts=(select @xStsnoheader + @xStsno as 'no', @xStsdes as 'des' for xml path('sts'))
   GOto g 
  end
 SET NOCOUNT OFF

BEGIN TRY
SET NOCOUNT ON
DECLARE @NOW datetime
SET @NOW =GETDATE()

     
 DECLARE 
 @data_by varchar(50)
 ,@status varchar(50)
 ,@partnumber varchar(50)
 ,@partcode varchar(50)
 ,@start_date DATE
    ,@end_date DATE
 ,@grdate DATE
 ,@parteta DATE
 ,@podate DATE
 ,@inv_date DATE
 ,@faktur_date DATE
 ,@grnumber varchar(50)
 ,@grqty DECIMAL(38,4)
 ,@bruto DECIMAL(38,4)
 ,@netto DECIMAL(38,4)
 ,@partcoa varchar(50)
 ,@partprice decimal(38, 4)
 ,@netamount decimal(38, 4)
 ,@partunit varchar(50)
 ,@surat_jalan varchar(50)
 ,@faktur_no varchar(50)
 ,@inv_no varchar(50)
 ,@ponumber varchar(50)
 ,@shipping varchar(50)
 ,@shipper varchar(50)
 ,@stock_info varchar(1000)
  

 --AddField($xmldoc,'parteta',$new_date3);
 -- AddField($xmldoc,'podate',$new_date4);
        
 
 SELECT 
 @data_by=left(ltrim(rtrim(isnull(tempTable.item.value('data_by[1]', 'varchar(100)'),''))),50)
 ,@partnumber=left(ltrim(rtrim(isnull(tempTable.item.value('partnumber[1]', 'varchar(100)'),''))),50)
 ,@partcode=left(ltrim(rtrim(isnull(tempTable.item.value('partcode[1]', 'varchar(100)'),''))),50)
 ,@start_date=dbo.str_to_date(isnull(tempTable.item.value('start_date[1]', 'varchar(255)'),''))
 ,@end_date=dbo.str_to_date(isnull(tempTable.item.value('end_date[1]', 'varchar(255)'),''))
 ,@grdate=dbo.str_to_date(isnull(tempTable.item.value('grdate[1]', 'varchar(255)'),''))
 ,@parteta=dbo.str_to_date(isnull(tempTable.item.value('parteta[1]', 'varchar(255)'),''))
 ,@podate=dbo.str_to_date(isnull(tempTable.item.value('podate[1]', 'varchar(255)'),''))
 ,@faktur_date=dbo.str_to_date(isnull(tempTable.item.value('faktur_date[1]', 'varchar(255)'),''))
 ,@inv_date=dbo.str_to_date(isnull(tempTable.item.value('inv_date[1]', 'varchar(255)'),''))
 ,@grnumber=left(ltrim(rtrim(isnull(tempTable.item.value('grnumber[1]', 'varchar(100)'),''))),50)
 ,@grqty=left(ltrim(rtrim(isnull(tempTable.item.value('grqty[1]', 'varchar(100)'),''))),50)
 ,@bruto=left(ltrim(rtrim(isnull(tempTable.item.value('bruto[1]', 'varchar(100)'),''))),50)
 ,@netto=left(ltrim(rtrim(isnull(tempTable.item.value('netto[1]', 'varchar(100)'),''))),50)

 ,@partprice=left(ltrim(rtrim(isnull(tempTable.item.value('partprice[1]', 'varchar(100)'),''))),50)
 ,@netamount=left(ltrim(rtrim(isnull(tempTable.item.value('netamount[1]', 'varchar(100)'),''))),50)
 ,@partunit=left(ltrim(rtrim(isnull(tempTable.item.value('partunit[1]', 'varchar(100)'),''))),50)
 ,@ponumber=left(ltrim(rtrim(isnull(tempTable.item.value('ponumber[1]', 'varchar(100)'),''))),50)
 ,@faktur_no=left(ltrim(rtrim(isnull(tempTable.item.value('faktur_no[1]', 'varchar(100)'),''))),50)
 ,@inv_no=left(ltrim(rtrim(isnull(tempTable.item.value('inv_no[1]', 'varchar(100)'),''))),50)
 ,@surat_jalan=left(ltrim(rtrim(isnull(tempTable.item.value('surat_jalan[1]', 'varchar(100)'),''))),50)
 ,@shipping=left(ltrim(rtrim(isnull(tempTable.item.value('shipping[1]', 'varchar(100)'),''))),50)
 ,@shipper=left(ltrim(rtrim(isnull(tempTable.item.value('shipper[1]', 'varchar(100)'),''))),50)
 ,@partcoa=left(ltrim(rtrim(isnull(tempTable.item.value('partcoa[1]', 'varchar(100)'),''))),50)
 ,@status=left(ltrim(rtrim(isnull(tempTable.item.value('status[1]', 'varchar(100)'),''))),50)
 

 FROM @PARAMETER.nodes('param/field')  tempTable(item)

 exec  MG_CHECK_USER @data_by, 0, @xStsno output,@xStsdes output; 
 IF @xStsno <>'00' 
 GOto f;
 --SET @xStsDes =(SELECT count(*)
 --FROM test_compare
 --WHERE ( GRDATE BETWEEN @start_date AND @end_date )
 --AND
 --PARTNUMBER = @partnumber)
 

 
   IF (SELECT        count(*)
  FROM            test_compare 
  WHERE       ( GRDATE BETWEEN @start_date AND @end_date )
  AND
  PARTNUMBER = @partnumber
  AND
  GRNUMBER = @grnumber
  )>0
  BEGIN
  SET @xStsno='02';
  SET @xStsdes='Data Sudah Ada';
  GOto f
  END
  
 
    
   BEGIN TRANSACTION;
 INSERT INTO [DB_PEMI].dbo.test_compare (
 status,
 GRNUMBER, 
 GRDATE,
 GRQTY, 
 PARTNUMBER,
 PARTCODE,
 PARTCOA,
 PARTPRICE,
 NETAMOUNT,
 PARTUNIT, 
 PARTETA, 
 PONUMBER,
 PODATE,  
 SHIPPING, 
 SHIPPER,
 create_by,
 create_date,
 bruto,
 netto,
 inv_no,
 inv_date,
 faktur_no,
 faktur_date,
 surat_jalan
 )
 VALUES
 (
 @status
 ,@grnumber
 ,@grdate
 ,@grqty 
 ,@partnumber
 ,@partcode
 ,@partcoa
 ,@partprice
 ,@netamount
 ,@partunit
 ,@parteta
 ,@ponumber
 ,@podate
 ,@shipping
 ,@shipper
 ,@data_by
 ,@NOW
 ,isnull(@bruto,0)
 ,isnull(@netto,0)
 ,@inv_no
 ,@inv_date
 ,@faktur_no
 ,@faktur_date
 ,@surat_jalan
 )
 --SET @xStsdes='ADA'
 --status,
  --GRNUMBER,
  --GRDATE,
  --GRQTY,
  --PARTNUMBER,
  --PARTCOA,
  --PARTPRICE,
  --NETAMOUNT,
  --PARTUNIT,
  --PARTETA,
  --PONUMBER,
  --PODATE,
  --AJUNUMBER,
  --AJUDATE,
  --REGISTERNUMBER,
  --REGISTERDATE,
  --SHIPPING,
  --SHIPPER
 COMMIT TRANSACTION;
  
 --select * from test_compare where GRNUMBER = @grnumber
 
  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 TEST_GRN_POST
--'
--12json1202::10adminBOTTOM - HINO HJP0222232020051420200614202005142020032320200311PEMI200514-00110621150141800418000PCSEDS/MKP/12G12003-004DARATMKPOK00MKP/SI/20/05-03520200514MKP/DO/20/05-034070.002-20.5953026220200514'
GO

Used By

No items found