USP_DATAFORM_ADD_ADDRESSPROCESSINGOPTION

The save procedure used by the add dataform template "Address Processing Option Add Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT The output parameter indicating the ID of the record added.
@NAME nvarchar(100) IN Name
@PURPOSE nvarchar(500) IN Description
@INDUSECONSTITUENTPREFS bit IN Use individual's mail preferences, if specified.
@INDALTADDRESS1TYPECODEID uniqueidentifier IN 1st choice
@INDALTADDRESS2TYPECODEID uniqueidentifier IN 2nd choice
@INDUSESEASONALADDRESS bit IN Use seasonal address, if available.
@INDINCLUDEWITHNOADDRESS bit IN If address is not found
@ORGUSECONSTITUENTPREFS bit IN Use organization's mail preferences, if specified.
@ORGMAILINGPREFERENCE tinyint IN Mailing preference
@ORGALTADDRESS1TYPECODEID uniqueidentifier IN 1st choice
@ORGALTADDRESS2TYPECODEID uniqueidentifier IN 2nd choice
@ORGINCLUDEWITHNOADDRESS bit IN If address is not found
@ORGCONTACTTYPES xml IN
@ORGSENDTOALLCONTACTS bit IN Mail to each contact found.
@ORGINCLUDEWITHNOCONTACT bit IN If no contact is found
@ORGCONTACTALSOINDACTION tinyint IN If contact will also receive the mailing as an individual
@GROUPUSECONSTITUENTPREFS bit IN Use group's mail preferences, if specified.
@GROUPALTADDRESS1TYPECODEID uniqueidentifier IN 1st choice
@GROUPALTADDRESS2TYPECODEID uniqueidentifier IN 2nd choice
@GROUPINCLUDEWITHNOADDRESS tinyint IN If address is not found
@GROUPUSESEASONALADDRESS bit IN Use seasonal address, if available.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@SITEID uniqueidentifier IN Site
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORM_ADD_ADDRESSPROCESSINGOPTION
                    (
                        @ID uniqueidentifier = null output,
                        @NAME nvarchar(100) = '',
                        @PURPOSE nvarchar(500) = '',
                        @INDUSECONSTITUENTPREFS bit = 1,
                        @INDALTADDRESS1TYPECODEID uniqueidentifier = null,
                        @INDALTADDRESS2TYPECODEID uniqueidentifier = null,
                        @INDUSESEASONALADDRESS bit = 0,
                        @INDINCLUDEWITHNOADDRESS bit = 0,
                        @ORGUSECONSTITUENTPREFS bit = 1,
                        @ORGMAILINGPREFERENCE tinyint = 0,
                        @ORGALTADDRESS1TYPECODEID uniqueidentifier = null,
                        @ORGALTADDRESS2TYPECODEID uniqueidentifier = null,
                        @ORGINCLUDEWITHNOADDRESS bit = 0,
                        @ORGCONTACTTYPES xml = null,
                        @ORGSENDTOALLCONTACTS bit = 1,
                        @ORGINCLUDEWITHNOCONTACT bit = 0,
                        @ORGCONTACTALSOINDACTION tinyint =0,
                        @GROUPUSECONSTITUENTPREFS bit = 1,
                        @GROUPALTADDRESS1TYPECODEID uniqueidentifier = null,
                        @GROUPALTADDRESS2TYPECODEID uniqueidentifier = null,
                        @GROUPINCLUDEWITHNOADDRESS tinyint = 0,
                        @GROUPUSESEASONALADDRESS bit = 0,
                        @CHANGEAGENTID uniqueidentifier = null,
            @SITEID uniqueidentifier = null,
                        @CURRENTAPPUSERID uniqueidentifier = null
                    )
                    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

                        if dbo.UFN_SITEREQUIREDFORUSER(@CURRENTAPPUSERID) = 1 and @SITEID is null
                        begin
                            raiserror ('ERR_SITE_MUSTHAVESITE',13,1);
                            return 1;
                        end

                        declare @ISDEFAULT bit;
                        set @ISDEFAULT = 0;
                        select @ISDEFAULT = 1 where
                            not exists(select ID from dbo.ADDRESSPROCESSINGOPTION where ISDEFAULT = 1);

                        declare @IA1PRIMARY bit
                        if @INDALTADDRESS1TYPECODEID='00000000-0000-0000-0000-000000000001'
                        begin
                            set @IA1PRIMARY = 1
                            set @INDALTADDRESS1TYPECODEID=null
                        end
                        else
                            set @IA1PRIMARY = 0

                        declare @IA2PRIMARY bit
                        if @INDALTADDRESS2TYPECODEID='00000000-0000-0000-0000-000000000001'
                        begin
                            set @IA2PRIMARY = 1
                            set @INDALTADDRESS2TYPECODEID=null
                        end
                        else
                            set @IA2PRIMARY = 0

                        declare @OA1PRIMARY bit
                        if @ORGALTADDRESS1TYPECODEID='00000000-0000-0000-0000-000000000001'
                        begin
                            set @OA1PRIMARY = 1
                            set @ORGALTADDRESS1TYPECODEID=null
                        end
                        else
                            set @OA1PRIMARY = 0

                        declare @OA2PRIMARY bit
                        if @ORGALTADDRESS2TYPECODEID='00000000-0000-0000-0000-000000000001' 
                        begin
                            set @OA2PRIMARY = 1
                            set @ORGALTADDRESS2TYPECODEID=null
                        end
                        else
                            set @OA2PRIMARY = 0

                        declare @GA1PRIMARY bit
                        if @GROUPALTADDRESS1TYPECODEID='00000000-0000-0000-0000-000000000001'
                        begin
                            set @GA1PRIMARY = 1
                            set @GROUPALTADDRESS1TYPECODEID=null
                        end
                        else
                            set @GA1PRIMARY = 0

                        declare @GA2PRIMARY bit
                        if @GROUPALTADDRESS2TYPECODEID='00000000-0000-0000-0000-000000000001' 
                        begin
                            set @GA2PRIMARY = 1
                            set @GROUPALTADDRESS2TYPECODEID=null
                        end
                        else
                            set @GA2PRIMARY = 0


                        insert into dbo.ADDRESSPROCESSINGOPTION
                        (
                            ID,
                            NAME,
                            PURPOSE,
                            INDUSECONSTITUENTPREFS,
                            INDALTADDRESS1TYPECODEID,
                            INDALTADDRESS1ISPRIMARY,
                            INDALTADDRESS2TYPECODEID, 
                            INDALTADDRESS2ISPRIMARY,
                            INDUSESEASONALADDRESS,
                            INDINCLUDEWITHNOADDRESS,
                            ORGUSECONSTITUENTPREFS,
                            ORGMAILINGPREFERENCE,
                            ORGALTADDRESS1TYPECODEID,
                            ORGALTADDRESS1ISPRIMARY,
                            ORGALTADDRESS2TYPECODEID,
                            ORGALTADDRESS2ISPRIMARY,
                            ORGINCLUDEWITHNOADDRESS,
                            ORGSENDTOALLCONTACTS,
                            ORGINCLUDEWITHNOCONTACT,
                            ORGCONTACTALSOINDACTION,
                            GROUPUSECONSTITUENTPREFS,
                            GROUPALTADDRESS1TYPECODEID,
                            GROUPALTADDRESS1ISPRIMARY,
                            GROUPALTADDRESS2TYPECODEID,
                            GROUPALTADDRESS2ISPRIMARY,
                            GROUPUSESEASONALADDRESS,
                            GROUPINCLUDEWITHNOADDRESS,
                            ISDEFAULT,
                            SITEID,
                            ADDEDBYID,
                            CHANGEDBYID,
                            DATEADDED,
                            DATECHANGED
                        )
                        values
                        (
                            @ID,
                            @NAME,
                            @PURPOSE,
                            @INDUSECONSTITUENTPREFS,
                            @INDALTADDRESS1TYPECODEID,
                            @IA1PRIMARY,
                            @INDALTADDRESS2TYPECODEID,
                            @IA2PRIMARY,
                            @INDUSESEASONALADDRESS,
                            @INDINCLUDEWITHNOADDRESS,
                            @ORGUSECONSTITUENTPREFS,
                            @ORGMAILINGPREFERENCE,
                            @ORGALTADDRESS1TYPECODEID,
                            @OA1PRIMARY,
                            @ORGALTADDRESS2TYPECODEID,
                            @OA2PRIMARY,
                            @ORGINCLUDEWITHNOADDRESS,
                            @ORGSENDTOALLCONTACTS,
                            @ORGINCLUDEWITHNOCONTACT,
                            @ORGCONTACTALSOINDACTION,
                            @GROUPUSECONSTITUENTPREFS,
                            @GROUPALTADDRESS1TYPECODEID,
                            @GA1PRIMARY,
                            @GROUPALTADDRESS2TYPECODEID,
                            @GA2PRIMARY,
                            @GROUPUSESEASONALADDRESS,
                            @GROUPINCLUDEWITHNOADDRESS,
                            @ISDEFAULT,
                            @SITEID,
                            @CHANGEAGENTID,
                            @CHANGEAGENTID,
                            @CURRENTDATE,
                            @CURRENTDATE
                        )

                        exec dbo.USP_ADDRESSPROCESSINGOPTION_GETCONTACTTYPES_ADDFROMXML @ID, @ORGCONTACTTYPES, @CHANGEAGENTID

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

                    return 0;