USP_MKTSPONSORSHIPMAILINGTEMPLATEAPPEAL_SAVEFIELD

Saves appeals associated with a sponsorship effort template.

Parameters

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

Definition

Copy


CREATE procedure dbo.[USP_MKTSPONSORSHIPMAILINGTEMPLATEAPPEAL_SAVEFIELD]
(
  @SPONSORSHIPMAILINGTEMPLATEID 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.[MKTSPONSORSHIPMAILINGTEMPLATEAPPEAL]
    where [SPONSORSHIPMAILINGTEMPLATEID] = @SPONSORSHIPMAILINGTEMPLATEID;

    if not @APPEALINFORMATION is null
      insert into dbo.[MKTSPONSORSHIPMAILINGTEMPLATEAPPEAL]
      (
        [ID],
        [SPONSORSHIPMAILINGTEMPLATEID],
        [RECORDSOURCEID],
        [APPEALSYSTEMID],
        [APPEALID],
        [APPEALDESCRIPTION],
        [ADDEDBYID],
        [CHANGEDBYID],
        [DATEADDED],
        [DATECHANGED]
      )
      select
        newid(),
        @SPONSORSHIPMAILINGTEMPLATEID,
        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;