USP_DATAFORMTEMPLATE_EDIT_INVITATION

The save procedure used by the edit dataform template "Invitation Edit Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter indicating the ID of the record being edited.
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@NAME nvarchar(100) IN Name
@DESCRIPTION nvarchar(255) IN Description
@BUSINESSPROCESSVIEWID uniqueidentifier IN Output format
@MAILDATE datetime IN Mail date
@CREATEOUTPUTIDSET bit IN Create selection from results
@OUTPUTIDSETNAME nvarchar(100) IN Selection name
@OVERWRITEOUTPUTIDSET bit IN Overwrite existing selection
@CUSTOMPARAMETERDATAFORMITEM xml IN
@CHANNELCODE tinyint IN
@CHANNELPREFERENCECODE tinyint IN If the constituent does not have a preference, attempt to send
@MAILPACKAGEID uniqueidentifier IN Mail package
@EMAILPACKAGEID uniqueidentifier IN Email package
@ADDRESSPROCESSINGOPTIONID uniqueidentifier IN Address processing
@NAMEFORMATPARAMETERID uniqueidentifier IN Name format
@HOUSEHOLDINGTYPECODE tinyint IN Include
@HOUSEHOLDINGINCLUDEINDIVIDUALSWITHNOHOUSEHOLD bit IN Also include qualifying individuals who are not members of any household
@HOUSEHOLDINGINCLUDEHOUSEHOLDSWITHNOMEMBERS bit IN Also include qualifying households which do not have any members
@HOUSEHOLDINGONERECORDPERHOUSEHOLD bit IN Send to one person per household
@EVENTID uniqueidentifier IN EVENTID

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_INVITATION
(
  @ID uniqueidentifier,    
  @CURRENTAPPUSERID uniqueidentifier,
  @CHANGEAGENTID uniqueidentifier = null,
  @NAME nvarchar(100),
    @DESCRIPTION nvarchar(255),
    @BUSINESSPROCESSVIEWID uniqueidentifier,
  @MAILDATE datetime,
    @CREATEOUTPUTIDSET bit,
    @OUTPUTIDSETNAME nvarchar(100),
    @OVERWRITEOUTPUTIDSET bit,
  @CUSTOMPARAMETERDATAFORMITEM xml,
  @CHANNELCODE tinyint,
  @CHANNELPREFERENCECODE tinyint,
  @MAILPACKAGEID uniqueidentifier,
  @EMAILPACKAGEID uniqueidentifier,
  @ADDRESSPROCESSINGOPTIONID uniqueidentifier,
  @NAMEFORMATPARAMETERID uniqueidentifier,
  @HOUSEHOLDINGTYPECODE tinyint,
  @HOUSEHOLDINGINCLUDEINDIVIDUALSWITHNOHOUSEHOLD bit,
  @HOUSEHOLDINGINCLUDEHOUSEHOLDSWITHNOMEMBERS bit,
  @HOUSEHOLDINGONERECORDPERHOUSEHOLD bit,
  @EVENTID uniqueidentifier
)
as                
  set nocount on;

  declare @CURRENTDATE datetime;
  set @CURRENTDATE = getdate();

  -- Not currently supporting exclusions tab

  declare @EXCLUSIONS xml = null;
  declare @EXCLUSIONDATETYPECODE tinyint = 1;

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

    -- Uncomment when uncommenting USP_COMMUNICATIONS_CREATEORUPDATEMAILING

    declare @PACKAGESITEID uniqueidentifier;
    exec dbo.USP_INVITATION_GETANDVALIDATEPACKAGESITE @EVENTID, @MAILPACKAGEID, @EMAILPACKAGEID, @PACKAGESITEID output;

    update dbo.INVITATION set
      NAME = @NAME,
      DESCRIPTION = @DESCRIPTION,
      MAILDATE = @MAILDATE,
        BUSINESSPROCESSVIEWID = null,
          CUSTOMPARAMETERDATAFORMITEM = null,
      CHANNELCODE = @CHANNELCODE,
      CHANNELPREFERENCECODE = @CHANNELPREFERENCECODE,
      MAILPACKAGEID = @MAILPACKAGEID,
      EMAILPACKAGEID = @EMAILPACKAGEID,
      HOUSEHOLDINGTYPECODE = @HOUSEHOLDINGTYPECODE,
      HOUSEHOLDINGINCLUDEINDIVIDUALSWITHNOHOUSEHOLD = @HOUSEHOLDINGINCLUDEINDIVIDUALSWITHNOHOUSEHOLD,
      HOUSEHOLDINGINCLUDEHOUSEHOLDSWITHNOMEMBERS = @HOUSEHOLDINGINCLUDEHOUSEHOLDSWITHNOMEMBERS,
      HOUSEHOLDINGONERECORDPERHOUSEHOLD = @HOUSEHOLDINGONERECORDPERHOUSEHOLD,
      ADDRESSPROCESSINGOPTIONID = @ADDRESSPROCESSINGOPTIONID,
      NAMEFORMATPARAMETERID = @NAMEFORMATPARAMETERID,
      CHANGEDBYID = @CHANGEAGENTID,
      DATECHANGED = @CURRENTDATE
    where
      ID = @ID;

    -- SHL Enterprise Bug 261146 Fix; Uncommenting previously commented USP_COMMUNICATIONS_CREATEORUPDATEMAILING

    /*
    update dbo.MKTSEGMENTATION set
      MAILDATE = @MAILDATE,
      CREATEOUTPUTIDSET = @CREATEOUTPUTIDSET,
      OUTPUTIDSETNAME = @OUTPUTIDSETNAME,
      OVERWRITEOUTPUTIDSET = @OVERWRITEOUTPUTIDSET
    where ID = @ID;
    */
    -- After we get rid of the Invitee list...

    --    Uncomment code below to update the mailing



    declare @MAILINGNAME nvarchar(100) = left('Event Invitation: ' + @NAME, 100);
    declare @MAILINGDESCRIPTION nvarchar(255) = 'Auto generated mailing for Event Invitation: ' + @NAME;
    set @EXCLUSIONDATETYPECODE = case when @MAILDATE is null then 0 else 1 end;

    exec dbo.USP_COMMUNICATIONS_CREATEORUPDATEMAILING            
      @ID,
      2,
      2,
      @MAILINGNAME,
      @MAILINGDESCRIPTION,
      0,
      @MAILDATE,
      null,
      null,
      @CHANNELCODE,
      @CHANNELPREFERENCECODE,
      @EMAILPACKAGEID,
      @MAILPACKAGEID,
      null,
      @ADDRESSPROCESSINGOPTIONID,
      @NAMEFORMATPARAMETERID,
      @HOUSEHOLDINGTYPECODE,
      @HOUSEHOLDINGINCLUDEINDIVIDUALSWITHNOHOUSEHOLD,
      @HOUSEHOLDINGINCLUDEHOUSEHOLDSWITHNOMEMBERS,
      @HOUSEHOLDINGONERECORDPERHOUSEHOLD,
      null,
      @CREATEOUTPUTIDSET,
      @OUTPUTIDSETNAME,
      @OVERWRITEOUTPUTIDSET,
      @CURRENTAPPUSERID,
      @CHANGEAGENTID,
      @PACKAGESITEID,
      null,                                        -- Exclude Selections

      @EXCLUSIONDATETYPECODE,
      @MAILDATE,                                    -- ExclusionAsOfDate

      0,                                            -- Estimated Response rate

      0;                                            -- Estimated Average gift amount


  end try

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

  return 0;