USP_PDACCOUNTTABLESAVAILABLEFORSEGMENTPRODUCTFLAG_UPDATEENTRY
Adds/updates a system-defined entry in the PDACCOUNTTABLESAVAILABLEFORSEGMENTPRODUCTFLAG table
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@PDACCOUNTTABLESAVAILABLEFORSEGMENTID | uniqueidentifier | IN | |
@PRODUCTFLAGID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN |
Definition
Copy
create procedure dbo.USP_PDACCOUNTTABLESAVAILABLEFORSEGMENTPRODUCTFLAG_UPDATEENTRY
@ID uniqueidentifier,
@PDACCOUNTTABLESAVAILABLEFORSEGMENTID uniqueidentifier = NULL,
@PRODUCTFLAGID uniqueidentifier = NULL,
@CHANGEAGENTID uniqueidentifier = NULL
as
begin
set nocount on
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
declare @CURRENTDATE datetime = getdate()
begin try
merge dbo.PDACCOUNTTABLESAVAILABLEFORSEGMENTPRODUCTFLAG as Target
using (select
@ID as ID,
@PDACCOUNTTABLESAVAILABLEFORSEGMENTID as PDACCOUNTTABLESAVAILABLEFORSEGMENTID,
@PRODUCTFLAGID as PRODUCTFLAGID,
@CHANGEAGENTID as CHANGEAGENTID,
@CURRENTDATE as CURRENTDATE)
as Source
on (Target.ID = Source.ID)
when matched then
update set Target.PDACCOUNTTABLESAVAILABLEFORSEGMENTID = Source.PDACCOUNTTABLESAVAILABLEFORSEGMENTID,
Target.PRODUCTFLAGID = Source.PRODUCTFLAGID,
Target.CHANGEDBYID = Source.CHANGEAGENTID,
Target.DATECHANGED = Source.CURRENTDATE
when not matched by Target then
insert (ID, PDACCOUNTTABLESAVAILABLEFORSEGMENTID, PRODUCTFLAGID, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
values (Source.ID, Source.PDACCOUNTTABLESAVAILABLEFORSEGMENTID, Source.PRODUCTFLAGID, Source.CHANGEAGENTID, Source.CHANGEAGENTID, Source.CURRENTDATE, Source.CURRENTDATE);
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
end