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