Description
Properties
| Name | Value |
|---|---|
| ANSI Nulls ON | True |
| Quoted Identifier ON | True |
| Encrypted | False |
| Execute As | |
| Assembly |
Parameters
| Name | Data Type | Length | Description |
|---|---|---|---|
| @username | varchar | 100 | |
| @xmldata | xml | -1 |
SQL Script
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
CREATE PROCEDURE dbo.spu_supplier
( @username varchar(100), @xmldata xml)
AS
BEGIN
SET ANSI_WARNINGS ON
SET ANSI_NULLS ON
SET ANSI_PADDING ON
SET CONCAT_NULL_YIELDS_NULL ON
declare @tbltemp table(
iddata bigint,
supplier_name [varchar](50) NULL,
supplier_address [varchar](100) NULL,
supplier_address1 [varchar](50) NULL,
supplier_country [varchar](50) NULL,
NPWP [varchar](50) NULL,
NOIJIN [varchar](50) NULL,
NOKONTRAK [varchar](50) NULL,
TGLIJIN [date] NULL,
TGLKONTRAK [date] NULL
)
insert into @tbltemp (
iddata ,
supplier_name,
supplier_address ,
supplier_address1 ,
supplier_country ,
NPWP ,
NOIJIN ,
NOKONTRAK ,
TGLIJIN ,
TGLKONTRAK
)
SELECT
fileds.value('id[1]', 'bigint') as iddata,
fileds.value('suppliername[1]', 'varchar(50)') as supplier_name,
fileds.value('supplieraddress[1]', 'varchar(50)') as supplier_address,
fileds.value('supplieraddressa[1]', 'varchar(50)') as supplier_address1,
fileds.value('suppliercountry[1]', 'varchar(50)') as supplier_country,
fileds.value('NPWP[1]', 'varchar(50)') as NPWP,
fileds.value('NOIJIN[1]', 'varchar(50)') as NOIJIN,
fileds.value('NOKONTRAK[1]', 'varchar(50)') as NOKONTRAK,
fileds.value('TGLIJIN[1]', 'date') as TGLIJIN,
fileds.value('TGLKONTRAK[1]', 'date') as TGLKONTRAK
from @xmlData.nodes('//data/dataxml') as xmldata(fileds)
declare @tgl datetime
set @tgl = GETDATE()
MERGE tbl_data_supplier AS TARGET
USING @tbltemp AS SOURCE
on (TARGET.id = SOURCE.iddata)
WHEN MATCHED THEN
UPDATE SET
TARGET.supplier_name = SOURCE.supplier_name,
TARGET.[supplier_address] = SOURCE.supplier_address,
TARGET.[supplier_address1] = SOURCE.supplier_address1,
TARGET.supplier_country = SOURCE.supplier_country,
TARGET.NPWP = SOURCE.NPWP,
TARGET.NOIJIN = SOURCE.NOIJIN,
TARGET.NOKONTRAK = SOURCE.NOKONTRAK,
TARGET.TGLIJIN = SOURCE.TGLIJIN,
TARGET.TGLKONTRAK = SOURCE.TGLKONTRAK
--TARGET.update_date = @tgl,
--TARGET.update_by = @username
--OUTPUT $action
;
select '00' as status, 'DATA UPDATED' as description
--declare @tbltemp table(
-- [id_invoice_mesinsparepart] [bigint],
-- [part_name] [varchar](50) NULL,
-- [part_no] [varchar](50) NULL,
-- [maker] [varchar](50) NULL,
-- [order_qty] [float] NULL,
-- [order_no] [varchar](50) NULL,
-- [order_date] [date] NULL,
-- [req_eta_date] [date] NULL,
-- [shipping_by] [varchar](50) NULL,
-- [invoice_no] [varchar](50) NULL,
-- [invoice_date] [date] NULL,
-- [inv_qty] [float] NULL,
-- [rec_date] [date] NULL,
-- [rec_qty] [float] NULL,
-- [status_inv] [varchar](50) NULL,
-- [amount] [float] NULL,
-- [remark] [varchar](100) NULL,
-- [nobl] [varchar](50) NULL,
-- [tglbl] [date] NULL,
-- [nocar] [varchar](50) NULL,
-- [tglaju] [date] NULL,
-- [status_data] [varchar](50) NULL,
-- [create_date] [datetime] NULL,
-- [create_by] [varchar](50) NULL,
-- [update_date] [datetime] NULL,
-- [update_by] [varchar](50) NULL
--)
--insert into @tbltemp (
-- [id_invoice_mesinsparepart],
-- [invoice_no],
-- [invoice_date],
-- [nobl],
-- [tglbl],
-- [part_name],
-- [part_no],
-- [maker],
-- [order_qty],
-- [order_no],
-- [order_date],
-- [req_eta_date],
-- [shipping_by],
-- [inv_qty],
-- [rec_date],
-- [rec_qty],
-- [status_inv],
-- [amount],
-- [remark],
-- [nocar],
-- [tglaju],
-- [status_data],
-- [create_date],
-- [create_by],
-- [update_date],
-- [update_by]
--)
--SELECT
-- fileds.value('idinvoicemesinsparepart[1]', 'int') as idinvoicemesinsparepart,
-- fileds.value('invoiceno[1]', 'varchar(50)') as invoiceno,
-- fileds.value('invoicedate[1]', 'date') as invoicedate,
-- fileds.value('nobl[1]', 'varchar(50)') as nobl,
-- fileds.value('tglbl [1]', 'date') as tglbl,
-- fileds.value('partname[1]', 'varchar(50)') as partname,
-- fileds.value('partno[1]', 'varchar(50)') as partno,
-- fileds.value('maker[1]', 'varchar(50)') as maker,
-- fileds.value('orderqty[1]', 'varchar(50)') as orderqty,
-- fileds.value('orderno[1]', 'varchar(50)') as orderno,
-- fileds.value('orderdate[1]', 'date') as orderdate,
-- fileds.value('reqetadate[1]', 'date') as reqetadate,
-- fileds.value('shippingby[1]', 'varchar(50)') as shippingby,
-- fileds.value('invqty[1]', 'float') as invqty,
-- fileds.value('recdate[1]', 'date') as recdate,
-- fileds.value('recqty[1]', 'float') as recqty,
-- fileds.value('statusinv[1]', 'varchar(50)') as statusinv,
-- fileds.value('amount[1]', 'float') as amount,
-- fileds.value('remark [1]', 'varchar(100)') as remark ,
-- fileds.value('nocar[1]', 'varchar(50)') as nocar,
-- fileds.value('tglaju[1]', 'date') as tglaju,
-- fileds.value('statusdata [1]', 'varchar(50)') as statusdata,
-- fileds.value('createdate [1]', 'datetime') as createdate,
-- fileds.value('createby [1]', 'varchar(50)') as createby,
-- fileds.value('updatedate [1]', 'datetime') as updatedate,
-- fileds.value('updateby [1]', 'varchar(50)') as updateby
--from @xmlData.nodes('//data/datamesin') as xmldata(fileds)
--MERGE tbl_invoice_mesinsparepart AS TARGET
--USING @tbltemp AS SOURCE
--on (TARGET.invoice_no = SOURCE.invoice_no and TARGET.order_no = SOURCE.order_no and TARGET.maker = SOURCE.maker )
--WHEN MATCHED THEN
--UPDATE SET TARGET.[invoice_date] = (case when SOURCE.[invoice_date]='1900-01-01' then null else SOURCE.[invoice_date] end)
----OUTPUT $action
--;
--select '00' as status, 'DATA UPDATED' as description
END
GO
GO
CREATE PROCEDURE dbo.spu_supplier
( @username varchar(100), @xmldata xml)
AS
BEGIN
SET ANSI_WARNINGS ON
SET ANSI_NULLS ON
SET ANSI_PADDING ON
SET CONCAT_NULL_YIELDS_NULL ON
declare @tbltemp table(
iddata bigint,
supplier_name [varchar](50) NULL,
supplier_address [varchar](100) NULL,
supplier_address1 [varchar](50) NULL,
supplier_country [varchar](50) NULL,
NPWP [varchar](50) NULL,
NOIJIN [varchar](50) NULL,
NOKONTRAK [varchar](50) NULL,
TGLIJIN [date] NULL,
TGLKONTRAK [date] NULL
)
insert into @tbltemp (
iddata ,
supplier_name,
supplier_address ,
supplier_address1 ,
supplier_country ,
NPWP ,
NOIJIN ,
NOKONTRAK ,
TGLIJIN ,
TGLKONTRAK
)
SELECT
fileds.value('id[1]', 'bigint') as iddata,
fileds.value('suppliername[1]', 'varchar(50)') as supplier_name,
fileds.value('supplieraddress[1]', 'varchar(50)') as supplier_address,
fileds.value('supplieraddressa[1]', 'varchar(50)') as supplier_address1,
fileds.value('suppliercountry[1]', 'varchar(50)') as supplier_country,
fileds.value('NPWP[1]', 'varchar(50)') as NPWP,
fileds.value('NOIJIN[1]', 'varchar(50)') as NOIJIN,
fileds.value('NOKONTRAK[1]', 'varchar(50)') as NOKONTRAK,
fileds.value('TGLIJIN[1]', 'date') as TGLIJIN,
fileds.value('TGLKONTRAK[1]', 'date') as TGLKONTRAK
from @xmlData.nodes('//data/dataxml') as xmldata(fileds)
declare @tgl datetime
set @tgl = GETDATE()
MERGE tbl_data_supplier AS TARGET
USING @tbltemp AS SOURCE
on (TARGET.id = SOURCE.iddata)
WHEN MATCHED THEN
UPDATE SET
TARGET.supplier_name = SOURCE.supplier_name,
TARGET.[supplier_address] = SOURCE.supplier_address,
TARGET.[supplier_address1] = SOURCE.supplier_address1,
TARGET.supplier_country = SOURCE.supplier_country,
TARGET.NPWP = SOURCE.NPWP,
TARGET.NOIJIN = SOURCE.NOIJIN,
TARGET.NOKONTRAK = SOURCE.NOKONTRAK,
TARGET.TGLIJIN = SOURCE.TGLIJIN,
TARGET.TGLKONTRAK = SOURCE.TGLKONTRAK
--TARGET.update_date = @tgl,
--TARGET.update_by = @username
--OUTPUT $action
;
select '00' as status, 'DATA UPDATED' as description
--declare @tbltemp table(
-- [id_invoice_mesinsparepart] [bigint],
-- [part_name] [varchar](50) NULL,
-- [part_no] [varchar](50) NULL,
-- [maker] [varchar](50) NULL,
-- [order_qty] [float] NULL,
-- [order_no] [varchar](50) NULL,
-- [order_date] [date] NULL,
-- [req_eta_date] [date] NULL,
-- [shipping_by] [varchar](50) NULL,
-- [invoice_no] [varchar](50) NULL,
-- [invoice_date] [date] NULL,
-- [inv_qty] [float] NULL,
-- [rec_date] [date] NULL,
-- [rec_qty] [float] NULL,
-- [status_inv] [varchar](50) NULL,
-- [amount] [float] NULL,
-- [remark] [varchar](100) NULL,
-- [nobl] [varchar](50) NULL,
-- [tglbl] [date] NULL,
-- [nocar] [varchar](50) NULL,
-- [tglaju] [date] NULL,
-- [status_data] [varchar](50) NULL,
-- [create_date] [datetime] NULL,
-- [create_by] [varchar](50) NULL,
-- [update_date] [datetime] NULL,
-- [update_by] [varchar](50) NULL
--)
--insert into @tbltemp (
-- [id_invoice_mesinsparepart],
-- [invoice_no],
-- [invoice_date],
-- [nobl],
-- [tglbl],
-- [part_name],
-- [part_no],
-- [maker],
-- [order_qty],
-- [order_no],
-- [order_date],
-- [req_eta_date],
-- [shipping_by],
-- [inv_qty],
-- [rec_date],
-- [rec_qty],
-- [status_inv],
-- [amount],
-- [remark],
-- [nocar],
-- [tglaju],
-- [status_data],
-- [create_date],
-- [create_by],
-- [update_date],
-- [update_by]
--)
--SELECT
-- fileds.value('idinvoicemesinsparepart[1]', 'int') as idinvoicemesinsparepart,
-- fileds.value('invoiceno[1]', 'varchar(50)') as invoiceno,
-- fileds.value('invoicedate[1]', 'date') as invoicedate,
-- fileds.value('nobl[1]', 'varchar(50)') as nobl,
-- fileds.value('tglbl [1]', 'date') as tglbl,
-- fileds.value('partname[1]', 'varchar(50)') as partname,
-- fileds.value('partno[1]', 'varchar(50)') as partno,
-- fileds.value('maker[1]', 'varchar(50)') as maker,
-- fileds.value('orderqty[1]', 'varchar(50)') as orderqty,
-- fileds.value('orderno[1]', 'varchar(50)') as orderno,
-- fileds.value('orderdate[1]', 'date') as orderdate,
-- fileds.value('reqetadate[1]', 'date') as reqetadate,
-- fileds.value('shippingby[1]', 'varchar(50)') as shippingby,
-- fileds.value('invqty[1]', 'float') as invqty,
-- fileds.value('recdate[1]', 'date') as recdate,
-- fileds.value('recqty[1]', 'float') as recqty,
-- fileds.value('statusinv[1]', 'varchar(50)') as statusinv,
-- fileds.value('amount[1]', 'float') as amount,
-- fileds.value('remark [1]', 'varchar(100)') as remark ,
-- fileds.value('nocar[1]', 'varchar(50)') as nocar,
-- fileds.value('tglaju[1]', 'date') as tglaju,
-- fileds.value('statusdata [1]', 'varchar(50)') as statusdata,
-- fileds.value('createdate [1]', 'datetime') as createdate,
-- fileds.value('createby [1]', 'varchar(50)') as createby,
-- fileds.value('updatedate [1]', 'datetime') as updatedate,
-- fileds.value('updateby [1]', 'varchar(50)') as updateby
--from @xmlData.nodes('//data/datamesin') as xmldata(fileds)
--MERGE tbl_invoice_mesinsparepart AS TARGET
--USING @tbltemp AS SOURCE
--on (TARGET.invoice_no = SOURCE.invoice_no and TARGET.order_no = SOURCE.order_no and TARGET.maker = SOURCE.maker )
--WHEN MATCHED THEN
--UPDATE SET TARGET.[invoice_date] = (case when SOURCE.[invoice_date]='1900-01-01' then null else SOURCE.[invoice_date] end)
----OUTPUT $action
--;
--select '00' as status, 'DATA UPDATED' as description
END
GO
Depends On
1Used By
No items found