USP_MKTSEGMENTWHITEMAILREFRESHPROCESS_SAVE

Saves information about a white mail segment's refresh process.

Parameters

Parameter Parameter Type Mode Description
@SEGMENTID uniqueidentifier IN
@CHANGEAGENTID uniqueidentifier IN
@GIFTIDSETREGISTERID uniqueidentifier IN

Definition

Copy


create procedure dbo.[USP_MKTSEGMENTWHITEMAILREFRESHPROCESS_SAVE]
(
  @SEGMENTID uniqueidentifier,
  @CHANGEAGENTID uniqueidentifier = null,
  @GIFTIDSETREGISTERID uniqueidentifier = null
)
as
  set nocount on;

  declare @CURRENTDATE datetime;

  begin try
    if @CHANGEAGENTID is null  
      exec dbo.[USP_CHANGEAGENT_GETORCREATECHANGEAGENT] @CHANGEAGENTID output;

    set @CURRENTDATE = getdate();

    if exists(select top 1 1 from dbo.[MKTSEGMENTWHITEMAILREFRESHPROCESS] where [SEGMENTID] = @SEGMENTID)
      update dbo.[MKTSEGMENTWHITEMAILREFRESHPROCESS] set
        [GIFTIDSETREGISTERID] = isnull(@GIFTIDSETREGISTERID, [GIFTIDSETREGISTERID]),
        [CHANGEDBYID] = @CHANGEAGENTID,
        [DATECHANGED] = @CURRENTDATE
      where [SEGMENTID] = @SEGMENTID;
    else
      insert into dbo.[MKTSEGMENTWHITEMAILREFRESHPROCESS] (
        [ID],
        [SEGMENTID],
        [GIFTIDSETREGISTERID],
        [ADDEDBYID],
        [CHANGEDBYID],
        [DATEADDED],
        [DATECHANGED]
      ) values (
        newid(),
        @SEGMENTID,
        @GIFTIDSETREGISTERID,
        @CHANGEAGENTID,
        @CHANGEAGENTID,
        @CURRENTDATE,
        @CURRENTDATE
      );
  end try

  begin catch
    exec dbo.[USP_RAISE_ERROR];
    return 1;
  end catch

  return 0;