USP_DATAFORMTEMPLATE_EDITLOAD_CONSTITUENTADDRESSUPDATEBATCHCOMMIT_2

The load procedure used by the edit dataform template "Constituent Address Update Batch Row Commit Edit Form 2"

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter used to load the fields defined on the form.
@DATALOADED bit INOUT Output parameter indicating whether or not data was actually loaded.
@ADDRESSTYPECODEID uniqueidentifier INOUT Address type
@COUNTRYID uniqueidentifier INOUT Country
@ADDRESSBLOCK nvarchar(150) INOUT Address
@CITY nvarchar(50) INOUT City
@STATEID uniqueidentifier INOUT State
@POSTCODE nvarchar(12) INOUT ZIP
@ISPRIMARY bit INOUT Set as primary address
@DONOTMAIL bit INOUT Do not send mail to this address
@UPDATEMATCHINGSPOUSEADDRESSES bit INOUT Update spouse address
@VALIDATEONLY bit INOUT Validate only
@TSLONG bigint INOUT Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record.
@CART nvarchar(10) INOUT CART
@DPC nvarchar(8) INOUT DPC
@LOT nvarchar(5) INOUT LOT
@COUNTYCODEID uniqueidentifier INOUT County
@OMITFROMVALIDATION bit INOUT Omit from validation
@CONGRESSIONALDISTRICTCODEID uniqueidentifier INOUT Congressional district
@STATEHOUSEDISTRICTCODEID uniqueidentifier INOUT State house district
@STATESENATEDISTRICTCODEID uniqueidentifier INOUT State senate district
@LOCALPRECINCTCODEID uniqueidentifier INOUT Local precinct
@INFOSOURCECODEID uniqueidentifier INOUT Information source
@REGIONCODEID uniqueidentifier INOUT Region
@LASTVALIDATIONATTEMPTDATE datetime INOUT Last validation attempt date
@VALIDATIONMESSAGE nvarchar(200) INOUT Validation message
@CERTIFICATIONDATA int INOUT Certification data
@STARTDATE UDT_MONTHDAY INOUT
@ENDDATE UDT_MONTHDAY INOUT
@DONOTMAILREASONCODEID uniqueidentifier INOUT Do not mail reason
@UPDATEMATCHINGHOUSEHOLDADDRESSES bit INOUT Update matching addresses in household
@HASMATCHINGADDRESSES bit INOUT Has matching addresses
@INFOSOURCECOMMENTS nvarchar(256) INOUT

Definition

Copy


                CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_CONSTITUENTADDRESSUPDATEBATCHCOMMIT_2
                (
                    @ID uniqueidentifier,
                    @DATALOADED bit = 0 output,
                    @ADDRESSTYPECODEID uniqueidentifier = null output,
                    @COUNTRYID uniqueidentifier = null output,
                    @ADDRESSBLOCK nvarchar(150) = null output,
                    @CITY nvarchar(50) = null output,
                    @STATEID uniqueidentifier = null output,
                    @POSTCODE nvarchar(12) = null output,
                    @ISPRIMARY bit = null output,
                    @DONOTMAIL bit = null output,
                    @UPDATEMATCHINGSPOUSEADDRESSES bit = null output,
                    @VALIDATEONLY bit = null output,
                    @TSLONG bigint = 0 output,
                    @CART nvarchar(10) = null output,
                    @DPC nvarchar(8) = null output,
                    @LOT nvarchar(5) = null output,
                    @COUNTYCODEID uniqueidentifier = null output,
                    @OMITFROMVALIDATION bit = null output,
                    @CONGRESSIONALDISTRICTCODEID uniqueidentifier = null output,
                    @STATEHOUSEDISTRICTCODEID uniqueidentifier = null output,
                    @STATESENATEDISTRICTCODEID uniqueidentifier = null output,
                    @LOCALPRECINCTCODEID uniqueidentifier = null output,
                    @INFOSOURCECODEID uniqueidentifier = null output,
                    @REGIONCODEID uniqueidentifier = null output,
                    @LASTVALIDATIONATTEMPTDATE datetime = null output,
                    @VALIDATIONMESSAGE nvarchar(200) = null output,
                    @CERTIFICATIONDATA int = null output,
                    @STARTDATE dbo.UDT_MONTHDAY = null output,
                    @ENDDATE dbo.UDT_MONTHDAY = null output,
                    @DONOTMAILREASONCODEID uniqueidentifier = null output,
                    @UPDATEMATCHINGHOUSEHOLDADDRESSES bit = null output,
                    @HASMATCHINGADDRESSES bit = null output,
          @INFOSOURCECOMMENTS nvarchar(256) = null output
                ) as
                    set nocount on;

                    set @DATALOADED = 0;
                    set @TSLONG = 0;
                    set @UPDATEMATCHINGSPOUSEADDRESSES = 0;

                    declare @CONSTITUENTID uniqueidentifier;

                    if exists(select object_id from sys.objects where type = 'U' and name = 'RELATIONSHIP') begin
                        declare @SPOUSEID uniqueidentifier;

                        select
                            @DATALOADED = 1,
                            @CONSTITUENTID = ADDRESS.[CONSTITUENTID],
                            @ADDRESSTYPECODEID = ADDRESS.[ADDRESSTYPECODEID],
                            @COUNTRYID = ADDRESS.[COUNTRYID],
                            @ADDRESSBLOCK = ADDRESS.[ADDRESSBLOCK],
                            @CITY = ADDRESS.[CITY],
                            @STATEID = ADDRESS.[STATEID],
                            @POSTCODE = ADDRESS.[POSTCODE],
                            @ISPRIMARY = ADDRESS.[ISPRIMARY],
                            @DONOTMAIL = ADDRESS.[DONOTMAIL],
                            @SPOUSEID = SPOUSE.[ID],
                            @TSLONG = ADDRESS.[TSLONG],
                            @CART = ADDRESS.[CART],
                            @DPC = ADDRESS.[DPC],
                            @LOT = ADDRESS.[LOT] ,
                            @COUNTYCODEID = ADDRESSVALIDATIONUPDATE.[COUNTYCODEID],
                            @OMITFROMVALIDATION = ADDRESSVALIDATIONUPDATE.[OMITFROMVALIDATION],
                            @CONGRESSIONALDISTRICTCODEID = ADDRESSVALIDATIONUPDATE.[CONGRESSIONALDISTRICTCODEID],
                            @STATEHOUSEDISTRICTCODEID = ADDRESSVALIDATIONUPDATE.[STATEHOUSEDISTRICTCODEID],
                            @STATESENATEDISTRICTCODEID = ADDRESSVALIDATIONUPDATE.[STATESENATEDISTRICTCODEID],
                            @LOCALPRECINCTCODEID = ADDRESSVALIDATIONUPDATE.[LOCALPRECINCTCODEID],
                            @INFOSOURCECODEID = ADDRESSVALIDATIONUPDATE.[INFOSOURCECODEID],
                            @REGIONCODEID = ADDRESSVALIDATIONUPDATE.[REGIONCODEID],
                            @LASTVALIDATIONATTEMPTDATE = ADDRESSVALIDATIONUPDATE.[LASTVALIDATIONATTEMPTDATE],
                            @VALIDATIONMESSAGE = ADDRESSVALIDATIONUPDATE.[VALIDATIONMESSAGE],
                            @CERTIFICATIONDATA = ADDRESSVALIDATIONUPDATE.[CERTIFICATIONDATA]  ,
                            @STARTDATE = ADDRESS.STARTDATE,
                            @ENDDATE = ADDRESS.ENDDATE,
                            @DONOTMAILREASONCODEID = DONOTMAILREASONCODEID,
              @INFOSOURCECOMMENTS = ADDRESSVALIDATIONUPDATE.[INFOSOURCECOMMENTS]
                        from
                            dbo.[ADDRESS]
                            left join dbo.ADDRESSVALIDATIONUPDATE on ADDRESS.ID = ADDRESSVALIDATIONUPDATE.ID
                            left join dbo.[RELATIONSHIP] on RELATIONSHIP.[RELATIONSHIPCONSTITUENTID] = ADDRESS.[CONSTITUENTID] and RELATIONSHIP.[ISSPOUSE] = 1
                            left join dbo.[CONSTITUENT] as SPOUSE on SPOUSE.[ID] = RELATIONSHIP.[RECIPROCALCONSTITUENTID]
                        where
                            ADDRESS.[ID] = @ID;
                    end
                    else
                    begin
                        select
                            @DATALOADED = 1,
                            @CONSTITUENTID = ADDRESS.[CONSTITUENTID],
                            @ADDRESSTYPECODEID = ADDRESS.[ADDRESSTYPECODEID],
                            @COUNTRYID = ADDRESS.[COUNTRYID],
                            @ADDRESSBLOCK = ADDRESS.[ADDRESSBLOCK],
                            @CITY = ADDRESS.[CITY],
                            @STATEID = ADDRESS.[STATEID],
                            @POSTCODE = ADDRESS.[POSTCODE],
                            @ISPRIMARY = ADDRESS.[ISPRIMARY],
                            @DONOTMAIL = ADDRESS.[DONOTMAIL],
                            @TSLONG = ADDRESS.[TSLONG],
                            @CART = ADDRESS.[CART],
                            @DPC = ADDRESS.[DPC],
                            @LOT = ADDRESS.[LOT],
                            @COUNTYCODEID = ADDRESSVALIDATIONUPDATE.[COUNTYCODEID],
                            @OMITFROMVALIDATION = ADDRESSVALIDATIONUPDATE.[OMITFROMVALIDATION],
                            @CONGRESSIONALDISTRICTCODEID = ADDRESSVALIDATIONUPDATE.[CONGRESSIONALDISTRICTCODEID],
                            @STATEHOUSEDISTRICTCODEID = ADDRESSVALIDATIONUPDATE.[STATEHOUSEDISTRICTCODEID],
                            @STATESENATEDISTRICTCODEID = ADDRESSVALIDATIONUPDATE.[STATESENATEDISTRICTCODEID],
                            @LOCALPRECINCTCODEID = ADDRESSVALIDATIONUPDATE.[LOCALPRECINCTCODEID],
                            @INFOSOURCECODEID = ADDRESSVALIDATIONUPDATE.[INFOSOURCECODEID],
                            @REGIONCODEID = ADDRESSVALIDATIONUPDATE.[REGIONCODEID],
                            @LASTVALIDATIONATTEMPTDATE = ADDRESSVALIDATIONUPDATE.[LASTVALIDATIONATTEMPTDATE],
                            @VALIDATIONMESSAGE = ADDRESSVALIDATIONUPDATE.[VALIDATIONMESSAGE],
                            @CERTIFICATIONDATA = ADDRESSVALIDATIONUPDATE.[CERTIFICATIONDATA],
                            @STARTDATE = ADDRESS.STARTDATE,
                            @ENDDATE = ADDRESS.ENDDATE,
                            @DONOTMAILREASONCODEID = DONOTMAILREASONCODEID,
              @INFOSOURCECOMMENTS = ADDRESSVALIDATIONUPDATE.[INFOSOURCECOMMENTS]
                        from
                            dbo.ADDRESS
                        left join dbo.ADDRESSVALIDATIONUPDATE on ADDRESS.ID = ADDRESSVALIDATIONUPDATE.ID
                        where
                            ADDRESS.[ID] = @ID;
                    end

                    -- THM 03/07/2008 CR295315-030708 & CR295291-030608 set default values if null

                    if @OMITFROMVALIDATION is null
                        set @OMITFROMVALIDATION = 0


                    set @HASMATCHINGADDRESSES = case when (select count(CONSTITUENTID) from dbo.UFN_ADDRESS_MATCHINGHOUSEHOLDRECORDS(@CONSTITUENTID, @COUNTRYID, @STATEID, @ADDRESSBLOCK, @CITY, @POSTCODE, @ADDRESSTYPECODEID)) > 0 then 1 else 0 end;
                    set @UPDATEMATCHINGHOUSEHOLDADDRESSES = @HASMATCHINGADDRESSES;

                    return 0;