USP_MKTMEMBERSHIPMAILINGTEMPLATEAPPEAL_SAVEFIELD

Saves appeals associated with a membership renewal effort template.

Parameters

Parameter Parameter Type Mode Description
@MEMBERSHIPMAILINGTEMPLATEID uniqueidentifier IN
@APPEALINFORMATION xml IN
@CHANGEAGENTID uniqueidentifier IN

Definition

Copy


CREATE procedure dbo.[USP_MKTMEMBERSHIPMAILINGTEMPLATEAPPEAL_SAVEFIELD]
(
  @MEMBERSHIPMAILINGTEMPLATEID uniqueidentifier,
  @APPEALINFORMATION xml,
  @CHANGEAGENTID uniqueidentifier = null
)
as
  set nocount on;

  declare @CURRENTDATE datetime;
  declare @UPDATE bit;

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

    set @CURRENTDATE = getdate();

    delete from dbo.[MKTMEMBERSHIPMAILINGTEMPLATEAPPEAL]
        where [MEMBERSHIPMAILINGTEMPLATEID] = @MEMBERSHIPMAILINGTEMPLATEID;

    if not @APPEALINFORMATION is null
          insert into dbo.[MKTMEMBERSHIPMAILINGTEMPLATEAPPEAL]
          (
              [ID],
              [MEMBERSHIPMAILINGTEMPLATEID],
              [RECORDSOURCEID],
              [APPEALSYSTEMID],
              [APPEALID],
              [APPEALDESCRIPTION],
              [ADDEDBYID],
              [CHANGEDBYID],
              [DATEADDED],
              [DATECHANGED]
          )
          select
              newid(),
              @MEMBERSHIPMAILINGTEMPLATEID,
              T.c.value('(RECORDSOURCEID)[1]', 'uniqueidentifier') as [RECORDSOURCEID],
              isnull(T.c.value('(APPEALSYSTEMID)[1]', 'nvarchar(36)'), '') as [APPEALSYSTEMID],
              isnull(T.c.value('(APPEALID)[1]', 'nvarchar(100)'), '') as [APPEALID],
              isnull(T.c.value('(APPEALDESCRIPTION)[1]', 'nvarchar(100)'), '') as [APPEALDESCRIPTION],
              @CHANGEAGENTID,
              @CHANGEAGENTID,
              @CURRENTDATE,
              @CURRENTDATE
          from @APPEALINFORMATION.nodes('/APPEALINFORMATION/ITEM') T(c);
    end try

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

  return 0;