USP_DATAFORMTEMPLATE_ADD_INVITATION

The save procedure used by the add dataform template "Invitation Add Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT The output parameter indicating the ID of the record added.
@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
@EVENTID uniqueidentifier IN Input parameter indicating the context ID for the record being added.
@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

Definition

Copy


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

  declare @CURRENTDATE datetime;

  if @ID is null
    set @ID = newid();

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

  set @CURRENTDATE = getdate();

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

    insert into dbo.INVITATION
    (
      ID, 
      NAME,
      DESCRIPTION,            
      EVENTID, 
      MAILDATE,
      BUSINESSPROCESSVIEWID, 
      CUSTOMPARAMETERDATAFORMITEM, 
      CHANNELCODE, 
      CHANNELPREFERENCECODE, 
      MAILPACKAGEID, 
      EMAILPACKAGEID, 
      HOUSEHOLDINGTYPECODE,
      HOUSEHOLDINGINCLUDEINDIVIDUALSWITHNOHOUSEHOLD,
      HOUSEHOLDINGINCLUDEHOUSEHOLDSWITHNOMEMBERS,
      HOUSEHOLDINGONERECORDPERHOUSEHOLD,
      ADDRESSPROCESSINGOPTIONID,
      NAMEFORMATPARAMETERID,
      ADDEDBYID, 
      CHANGEDBYID, 
      DATEADDED, 
      DATECHANGED
    )
    values
    (
      @ID,
      @NAME,
      @DESCRIPTION,
      @EVENTID
      @MAILDATE,
      null,  
      null
      @CHANNELCODE
      @CHANNELPREFERENCECODE
      @MAILPACKAGEID
      @EMAILPACKAGEID,
      @HOUSEHOLDINGTYPECODE,
      @HOUSEHOLDINGINCLUDEINDIVIDUALSWITHNOHOUSEHOLD,
      @HOUSEHOLDINGINCLUDEHOUSEHOLDSWITHNOMEMBERS,
      @HOUSEHOLDINGONERECORDPERHOUSEHOLD,
      @ADDRESSPROCESSINGOPTIONID,
      @NAMEFORMATPARAMETERID,
      @CHANGEAGENTID
      @CHANGEAGENTID
      @CURRENTDATE
      @CURRENTDATE
    );        

    declare @MAILINGNAME nvarchar(100) = left('Event Invitation: ' + @NAME, 100);
    declare @MAILINGDESCRIPTION nvarchar(255) = 'Auto generated mailing for Event Invitation: ' + @NAME;
    declare @EXCLUSIONDATETYPECODE tinyint = 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;