USP_MKTSPONSORSHIPMAILINGPROCESSSEGMENTATION_SAVE

Saves information relating a sponsorship effort process to a sponsorship effort.

Parameters

Parameter Parameter Type Mode Description
@SPONSORSHIPMAILINGPROCESSSTATUSID uniqueidentifier IN
@SEGMENTATIONID uniqueidentifier IN
@CHANGEAGENTID uniqueidentifier IN

Definition

Copy


CREATE procedure dbo.[USP_MKTSPONSORSHIPMAILINGPROCESSSEGMENTATION_SAVE]
(
  @SPONSORSHIPMAILINGPROCESSSTATUSID uniqueidentifier,
  @SEGMENTATIONID uniqueidentifier,
  @CHANGEAGENTID uniqueidentifier = null
)
as
  set nocount on;

  declare @CURRENTDATE datetime;
  declare @SQL nvarchar(max);

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

    set @CURRENTDATE = getdate();

    if exists(select 1 from dbo.[MKTSPONSORSHIPMAILINGPROCESSSEGMENTATION] where [SPONSORSHIPMAILINGPROCESSSTATUSID] = @SPONSORSHIPMAILINGPROCESSSTATUSID)
      /* Update the existing row */
      update dbo.[MKTSPONSORSHIPMAILINGPROCESSSEGMENTATION] set
        [SEGMENTATIONID] = @SEGMENTATIONID,
        [CHANGEDBYID] = @CHANGEAGENTID,
        [DATECHANGED] = @CURRENTDATE
      where [SPONSORSHIPMAILINGPROCESSSTATUSID] = @SPONSORSHIPMAILINGPROCESSSTATUSID;
    else
      /* Insert a new row */
      insert into dbo.[MKTSPONSORSHIPMAILINGPROCESSSEGMENTATION] (
        [ID],
        [SPONSORSHIPMAILINGPROCESSSTATUSID],
        [SEGMENTATIONID],
        [ADDEDBYID],
        [CHANGEDBYID],
        [DATEADDED],
        [DATECHANGED]
      ) values (
        newid(),
        @SPONSORSHIPMAILINGPROCESSSTATUSID,
        @SEGMENTATIONID,
        @CHANGEAGENTID,
        @CHANGEAGENTID,
        @CURRENTDATE,
        @CURRENTDATE
      );
  end try

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

  return 0;