USP_DATAFORMTEMPLATE_EDIT_INVITATIONPREPROCESS_2

The save procedure used by the edit dataform template "Invitation Preprocess 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.
@BUSINESSPROCESSVIEWID uniqueidentifier IN Output format
@EVENTID uniqueidentifier IN Event
@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_EDIT_INVITATIONPREPROCESS_2
(
    @ID uniqueidentifier,
    @CURRENTAPPUSERID uniqueidentifier,
    @CHANGEAGENTID uniqueidentifier = null,
    @BUSINESSPROCESSVIEWID uniqueidentifier,
    @EVENTID 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
)
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;

        update dbo.INVITATION set
            MAILDATE = @MAILDATE,
            BUSINESSPROCESSVIEWID = @BUSINESSPROCESSVIEWID,
            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;

        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;
        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,
            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;