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;