USP_DATAFORMTEMPLATE_ADD_ADDRESS_COPYTOSPOUSE

The save procedure used by the add dataform template "Address Copy To Spouse Add Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT The output parameter indicating the ID of the record added.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@ADDRESSID uniqueidentifier IN Input parameter indicating the context ID for the record being added.
@CONSTITUENTID uniqueidentifier IN
@ADDRESSTYPECODEID uniqueidentifier IN Type
@PRIMARY bit IN Set as primary address
@DONOTMAIL bit IN Do not send mail to this address
@STARTDATE UDT_MONTHDAY IN Start date
@ENDDATE UDT_MONTHDAY IN End date
@COUNTRYID uniqueidentifier IN Country
@STATEID uniqueidentifier IN State
@ADDRESSBLOCK nvarchar(150) IN Address
@CITY nvarchar(50) IN City
@POSTCODE nvarchar(12) IN ZIP
@HISTORICALSTARTDATE datetime IN Start date
@RECENTMOVE bit IN Recently moved/changed from this address?
@OLDADDRESSID uniqueidentifier IN Old address
@CART nvarchar(10) IN CART
@DPC nvarchar(8) IN DPC
@LOT nvarchar(5) IN LOT
@OMITFROMVALIDATION bit IN Omit this address from validation
@COUNTYCODEID uniqueidentifier IN County
@CONGRESSIONALDISTRICTCODEID uniqueidentifier IN Congressional district
@STATEHOUSEDISTRICTCODEID uniqueidentifier IN State house district
@STATESENATEDISTRICTCODEID uniqueidentifier IN State senate district
@LOCALPRECINCTCODEID uniqueidentifier IN Local precinct
@INFOSOURCECODEID uniqueidentifier IN Information source
@REGIONCODEID uniqueidentifier IN Region
@LASTVALIDATIONATTEMPTDATE datetime IN Last attempt
@VALIDATIONMESSAGE nvarchar(200) IN Validation message
@CERTIFICATIONDATA int IN
@DONOTMAILREASONCODEID uniqueidentifier IN Reason
@INFOSOURCECOMMENTS nvarchar(256) IN Comments
@ISCONFIDENTIAL bit IN This address is confidential
@CONSTITUENTDATAREVIEWROLLBACKREASONID uniqueidentifier IN Reason

Definition

Copy

                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_ADDRESS_COPYTOSPOUSE
                    (
                        @ID uniqueidentifier = null output,
                        @CHANGEAGENTID uniqueidentifier = null,    
                        @ADDRESSID uniqueidentifier,
                        @CONSTITUENTID uniqueidentifier = null,
                        @ADDRESSTYPECODEID uniqueidentifier = null,
                        @PRIMARY bit = 0,
                        @DONOTMAIL bit = 0,
                        @STARTDATE dbo.UDT_MONTHDAY = '0000',
                        @ENDDATE dbo.UDT_MONTHDAY = '0000',
                        @COUNTRYID uniqueidentifier,
                        @STATEID uniqueidentifier = null,
                        @ADDRESSBLOCK nvarchar(150) = '',
                        @CITY nvarchar(50) = '',
                        @POSTCODE nvarchar(12) = '',
                        @HISTORICALSTARTDATE datetime = null,
                        @RECENTMOVE bit = 0,
                        @OLDADDRESSID uniqueidentifier = null,
                        @CART nvarchar(10) = '',
                        @DPC nvarchar(8) = '',
                        @LOT nvarchar(5) = '',
                        @OMITFROMVALIDATION bit = 0,                        
                        @COUNTYCODEID uniqueidentifier = null,
                        @CONGRESSIONALDISTRICTCODEID uniqueidentifier = null,
                        @STATEHOUSEDISTRICTCODEID uniqueidentifier = null,
                        @STATESENATEDISTRICTCODEID uniqueidentifier = null,
                        @LOCALPRECINCTCODEID uniqueidentifier = null,
                        @INFOSOURCECODEID uniqueidentifier = null,
                        @REGIONCODEID uniqueidentifier = null,                    
                        @LASTVALIDATIONATTEMPTDATE datetime = null,
                        @VALIDATIONMESSAGE nvarchar(200) = '',
                        @CERTIFICATIONDATA integer = 0,
                        @DONOTMAILREASONCODEID uniqueidentifier = null,
                        @INFOSOURCECOMMENTS nvarchar(256) = '',
                        @ISCONFIDENTIAL bit = 0,
                        @CONSTITUENTDATAREVIEWROLLBACKREASONID uniqueidentifier = null  -- used by constituent data review
                    ) as
                        set nocount on;

                        if @PRIMARY = 0 and (select count(*) from dbo.ADDRESS where CONSTITUENTID = @CONSTITUENTID and ISPRIMARY = 1) = 0
                            raiserror('ERR_ADDRESS_MUSTHAVEPRIMARY', 13, 1);

                        exec dbo.USP_ADDRESS_CREATE @ID output, @CHANGEAGENTID, @CONSTITUENTID, @ADDRESSTYPECODEID, @PRIMARY, @DONOTMAIL,
                            @STARTDATE, @ENDDATE, @COUNTRYID, @STATEID, @ADDRESSBLOCK, @CITY, @POSTCODE, @CART, @DPC, @LOT,
                            0, @OMITFROMVALIDATION, @COUNTYCODEID, @CONGRESSIONALDISTRICTCODEID,
                            @STATEHOUSEDISTRICTCODEID, @STATESENATEDISTRICTCODEID, @LOCALPRECINCTCODEID, @INFOSOURCECODEID,
                            @REGIONCODEID, @LASTVALIDATIONATTEMPTDATE, @VALIDATIONMESSAGE, @CERTIFICATIONDATA, @DONOTMAILREASONCODEID,
                            @HISTORICALSTARTDATE, @INFOSOURCECOMMENTS, @ISCONFIDENTIAL

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

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

                        if @RECENTMOVE = 1
                        begin
                            if @OLDADDRESSID is null
                                raiserror('BBERR_OLDADDRESSIDREQUIRED', 13, 1);
                            else 
                            begin
                                update dbo.ADDRESS
                                set
                                    ISPRIMARY = 0,
                                    DONOTMAIL = 1,
                                    HISTORICALENDDATE = case when @HISTORICALSTARTDATE is null then dbo.UFN_DATE_GETEARLIESTTIME(getdate()) else @HISTORICALSTARTDATE end,
                                    CHANGEDBYID = @CHANGEAGENTID,
                                    DATECHANGED = @CURRENTDATE
                                where ADDRESS.ID = @OLDADDRESSID
                            end
                        end

                        return 0;