USP_MKTMEMBERSHIPMAILINGTEMPLATERULE_MOVEUP

Executes the "Membership Renewal Effort Template Rule: Move Up" record operation.

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN Input parameter indicating the ID of the record being updated.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the update.

Definition

Copy


CREATE procedure dbo.[USP_MKTMEMBERSHIPMAILINGTEMPLATERULE_MOVEUP]
(
  @ID uniqueidentifier,
  @CHANGEAGENTID uniqueidentifier = null
)
as
  set nocount on;

  declare @MEMBERSHIPMAILINGTEMPLATEID uniqueidentifier;
  declare @ABOVERULEID uniqueidentifier;
  declare @SEQUENCEUENCE int;
  declare @CURRENTDATE datetime;

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

    set @CURRENTDATE = getdate();

    select 
      @MEMBERSHIPMAILINGTEMPLATEID = [MEMBERSHIPMAILINGTEMPLATEID],
      @SEQUENCEUENCE = [SEQUENCE]
    from 
      dbo.[MKTMEMBERSHIPMAILINGTEMPLATERULE] 
    where 
      [ID] = @ID;

    begin
      if (@SEQUENCEUENCE > 1
        begin
          select 
            @ABOVERULEID = [ID]
          from 
            dbo.[MKTMEMBERSHIPMAILINGTEMPLATERULE]
          where 
            [MEMBERSHIPMAILINGTEMPLATEID] = @MEMBERSHIPMAILINGTEMPLATEID
          and 
            [SEQUENCE] = (@SEQUENCEUENCE - 1);

          exec dbo.[USP_MKTMEMBERSHIPMAILINGTEMPLATE_SWAPRULES] @ABOVERULEID, @ID, @CHANGEAGENTID;
        end
    end
  end try

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

  return 0;