USP_DATAFORMTEMPLATE_EDITLOAD_CONSTITUENTUPDATEBATCHDUPLICATEMATCH
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@DATALOADED | bit | INOUT | |
@TSLONG | bigint | INOUT | |
@LOOKUPID | nvarchar(50) | INOUT | |
@FIRSTNAME | nvarchar(50) | INOUT | |
@MIDDLENAME | nvarchar(50) | INOUT | |
@LASTNAME | nvarchar(100) | INOUT | |
@SUFFIXCODEID | uniqueidentifier | INOUT | |
@TITLECODEID | uniqueidentifier | INOUT | |
@MAIDENNAME | nvarchar(100) | INOUT | |
@NICKNAME | nvarchar(50) | INOUT | |
@GENDERCODE | tinyint | INOUT | |
@BIRTHDATE | UDT_FUZZYDATE | INOUT | |
@ADDRESSID | uniqueidentifier | INOUT | |
@ADDRESSTYPECODEID | uniqueidentifier | INOUT | |
@ADDRESS_ADDRESSBLOCK | nvarchar(150) | INOUT | |
@ADDRESS_CITY | nvarchar(50) | INOUT | |
@ADDRESS_STATEID | uniqueidentifier | INOUT | |
@ADDRESS_POSTCODE | nvarchar(12) | INOUT | |
@ADDRESS_COUNTRYID | uniqueidentifier | INOUT | |
@PHONEID | uniqueidentifier | INOUT | |
@PHONETYPECODEID | uniqueidentifier | INOUT | |
@PHONENUMBER | nvarchar(100) | INOUT | |
@EMAILID | uniqueidentifier | INOUT | |
@EMAILADDRESSTYPECODEID | uniqueidentifier | INOUT | |
@EMAILADDRESS | UDT_EMAILADDRESS | INOUT | |
@CREATEDON | datetime | INOUT | |
@DATECHANGED | datetime | INOUT | |
@ADDRESSES | xml | INOUT | |
@PHONES | xml | INOUT | |
@EMAILADDRESSES | xml | INOUT | |
@CONSTITUENTACTION | tinyint | INOUT | |
@ADDRESSACTION | tinyint | INOUT | |
@EMAILACTION | tinyint | INOUT | |
@PHONEACTION | tinyint | INOUT | |
@PRIMARYRECORDID | uniqueidentifier | INOUT | |
@EMAILISPRIMARY | bit | INOUT | |
@PHONEISPRIMARY | bit | INOUT | |
@ADDRESSISPRIMARY | bit | INOUT | |
@INCOMINGADDRESSID | uniqueidentifier | INOUT | |
@INCOMINGEMAILID | uniqueidentifier | INOUT | |
@INCOMINGPHONEID | uniqueidentifier | INOUT | |
@SIMILARADDRESSCODE | tinyint | INOUT | |
@UNSIMILARADDRESSCODE | tinyint | INOUT | |
@NEWADDRESSPRIMARYCODE | tinyint | INOUT | |
@DIFFERENTPHONECODE | tinyint | INOUT | |
@NEWPHONEPRIMARYCODE | tinyint | INOUT | |
@DIFFERENTEMAILCODE | tinyint | INOUT | |
@NEWEMAILPRIMARYCODE | tinyint | INOUT | |
@DECEASED | bit | INOUT | |
@DECEASEDDATE | UDT_FUZZYDATE | INOUT | |
@GIVESANONYMOUSLY | bit | INOUT | |
@MARITALSTATUSCODEID | uniqueidentifier | INOUT | |
@WEBADDRESS | UDT_WEBADDRESS | INOUT | |
@ADDRESSHISTORICALSTARTDATE | date | INOUT | |
@ADDRESSHISTORICALENDDATE | date | INOUT | |
@ADDRESSDONOTMAIL | bit | INOUT | |
@ADDRESSDONOTMAILREASONCODEID | uniqueidentifier | INOUT | |
@ADDRESSSTARTDATE | UDT_MONTHDAY | INOUT | |
@ADDRESSENDDATE | UDT_MONTHDAY | INOUT | |
@ADDRESSDPC | nvarchar(max) | INOUT | |
@ADDRESSCART | nvarchar(max) | INOUT | |
@ADDRESSLOT | nvarchar(5) | INOUT | |
@ADDRESSINFOSOURCECODEID | uniqueidentifier | INOUT | |
@ADDRESSINFOSOURCECOMMENTS | nvarchar(256) | INOUT | |
@ADDRESSCOUNTYCODEID | uniqueidentifier | INOUT | |
@ADDRESSREGIONCODEID | uniqueidentifier | INOUT | |
@ADDRESSCONGRESSIONALDISTRICTCODEID | uniqueidentifier | INOUT | |
@ADDRESSSTATEHOUSEDISTRICTCODEID | uniqueidentifier | INOUT | |
@ADDRESSSTATESENATEDISTRICTCODEID | uniqueidentifier | INOUT | |
@ADDRESSLOCALPRECINCTCODEID | uniqueidentifier | INOUT | |
@ADDRESSCERTIFICATIONDATA | int | INOUT | |
@ADDRESSLASTVALIDATIONATTEMPTDATE | date | INOUT | |
@ADDRESSOMITFROMVALIDATION | bit | INOUT | |
@ADDRESSVALIDATIONMESSAGE | nvarchar(200) | INOUT | |
@PHONEDONOTCALL | bit | INOUT | |
@PHONESTARTTIME | UDT_HOURMINUTE | INOUT | |
@PHONEENDTIME | UDT_HOURMINUTE | INOUT | |
@PHONEINFOSOURCECODEID | uniqueidentifier | INOUT | |
@PHONECOUNTRYID | uniqueidentifier | INOUT | |
@PHONESTARTDATE | date | INOUT | |
@PHONEENDDATE | date | INOUT | |
@PHONESEASONALSTARTDATE | UDT_MONTHDAY | INOUT | |
@PHONESEASONALENDDATE | UDT_MONTHDAY | INOUT | |
@EMAILADDRESSDONOTEMAIL | bit | INOUT | |
@EMAILADDRESSINFOSOURCECODEID | uniqueidentifier | INOUT | |
@EMAILADDRESSSTARTDATE | date | INOUT | |
@EMAILADDRESSENDDATE | date | INOUT | |
@CONSTITUENCIES | xml | INOUT | |
@ORIGINAL_KEYNAME | nvarchar(100) | INOUT | |
@ORIGINAL_FIRSTNAME | nvarchar(50) | INOUT | |
@SOLICITCODES | xml | INOUT | |
@GENDERCODEID | uniqueidentifier | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_CONSTITUENTUPDATEBATCHDUPLICATEMATCH (
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@TSLONG bigint = 0 output,
@LOOKUPID nvarchar(50) = null output,
@FIRSTNAME nvarchar(50) = null output,
@MIDDLENAME nvarchar(50) = null output,
@LASTNAME nvarchar(100) = null output, -- also used as ORGANIZATIONNAME
@SUFFIXCODEID uniqueidentifier = null output,
@TITLECODEID uniqueidentifier = null output,
@MAIDENNAME nvarchar(100) = null output,
@NICKNAME nvarchar(50) = null output,
@GENDERCODE tinyint = null output,
@BIRTHDATE dbo.UDT_FUZZYDATE = null output,
@ADDRESSID uniqueidentifier = null output,
@ADDRESSTYPECODEID uniqueidentifier = null output,
@ADDRESS_ADDRESSBLOCK nvarchar(150) = null output,
@ADDRESS_CITY nvarchar(50) = null output,
@ADDRESS_STATEID uniqueidentifier = null output,
@ADDRESS_POSTCODE nvarchar(12) = null output,
@ADDRESS_COUNTRYID uniqueidentifier = null output,
@PHONEID uniqueidentifier = null output,
@PHONETYPECODEID uniqueidentifier = null output,
@PHONENUMBER nvarchar(100) = null output,
@EMAILID uniqueidentifier = null output,
@EMAILADDRESSTYPECODEID uniqueidentifier = null output,
@EMAILADDRESS dbo.UDT_EMAILADDRESS = null output,
@CREATEDON datetime = null output,
@DATECHANGED datetime = null output,
@ADDRESSES xml = null output,
@PHONES xml = null output,
@EMAILADDRESSES xml = null output,
@CONSTITUENTACTION tinyint = null output,
@ADDRESSACTION tinyint = null output,
@EMAILACTION tinyint = null output,
@PHONEACTION tinyint = null output,
@PRIMARYRECORDID uniqueidentifier = null output,
@EMAILISPRIMARY bit = null output,
@PHONEISPRIMARY bit = null output,
@ADDRESSISPRIMARY bit = null output,
@INCOMINGADDRESSID uniqueidentifier = null output,
@INCOMINGEMAILID uniqueidentifier = null output,
@INCOMINGPHONEID uniqueidentifier = null output,
@SIMILARADDRESSCODE tinyint = null output,
@UNSIMILARADDRESSCODE tinyint = null output,
@NEWADDRESSPRIMARYCODE tinyint = null output,
@DIFFERENTPHONECODE tinyint = null output,
@NEWPHONEPRIMARYCODE tinyint = null output,
@DIFFERENTEMAILCODE tinyint = null output,
@NEWEMAILPRIMARYCODE tinyint = null output,
@DECEASED bit = null output,
@DECEASEDDATE dbo.UDT_FUZZYDATE = null output,
@GIVESANONYMOUSLY bit = null output,
@MARITALSTATUSCODEID uniqueidentifier = null output,
@WEBADDRESS dbo.UDT_WEBADDRESS = null output,
@ADDRESSHISTORICALSTARTDATE date = null output,
@ADDRESSHISTORICALENDDATE date = null output,
@ADDRESSDONOTMAIL bit = null output,
@ADDRESSDONOTMAILREASONCODEID uniqueidentifier = null output,
@ADDRESSSTARTDATE dbo.UDT_MONTHDAY = null output,
@ADDRESSENDDATE dbo.UDT_MONTHDAY = null output,
@ADDRESSDPC nvarchar(max) = null output,
@ADDRESSCART nvarchar(max) = null output,
@ADDRESSLOT nvarchar(5) = null output,
@ADDRESSINFOSOURCECODEID uniqueidentifier = null output,
@ADDRESSINFOSOURCECOMMENTS nvarchar(256) = null output,
@ADDRESSCOUNTYCODEID uniqueidentifier = null output,
@ADDRESSREGIONCODEID uniqueidentifier = null output,
@ADDRESSCONGRESSIONALDISTRICTCODEID uniqueidentifier = null output,
@ADDRESSSTATEHOUSEDISTRICTCODEID uniqueidentifier = null output,
@ADDRESSSTATESENATEDISTRICTCODEID uniqueidentifier = null output,
@ADDRESSLOCALPRECINCTCODEID uniqueidentifier = null output,
@ADDRESSCERTIFICATIONDATA int = null output,
@ADDRESSLASTVALIDATIONATTEMPTDATE date = null output,
@ADDRESSOMITFROMVALIDATION bit = null output,
@ADDRESSVALIDATIONMESSAGE nvarchar(200) = null output,
@PHONEDONOTCALL bit = null output,
@PHONESTARTTIME dbo.UDT_HOURMINUTE = null output,
@PHONEENDTIME dbo.UDT_HOURMINUTE = null output,
@PHONEINFOSOURCECODEID uniqueidentifier = null output,
@PHONECOUNTRYID uniqueidentifier = null output,
@PHONESTARTDATE date = null output,
@PHONEENDDATE date = null output,
@PHONESEASONALSTARTDATE dbo.UDT_MONTHDAY = null output,
@PHONESEASONALENDDATE dbo.UDT_MONTHDAY = null output,
@EMAILADDRESSDONOTEMAIL bit = null output,
@EMAILADDRESSINFOSOURCECODEID uniqueidentifier = null output,
@EMAILADDRESSSTARTDATE date = null output,
@EMAILADDRESSENDDATE date = null output,
@CONSTITUENCIES xml = null output,
@ORIGINAL_KEYNAME nvarchar(100) = null output,
@ORIGINAL_FIRSTNAME nvarchar(50) = null output,
@SOLICITCODES xml = null output,
@GENDERCODEID uniqueidentifier = null output
)
as
set nocount on;
-- be sure to set these, in case the select returns no rows
set @DATALOADED = 0
set @TSLONG = 0
select @DATALOADED = 1,
@TSLONG = BATCHCONSTITUENTUPDATE.TSLONG,
@BIRTHDATE = [BIRTHDATE],
@FIRSTNAME = [FIRSTNAME],
@LASTNAME = [KEYNAME],
@MAIDENNAME = [MAIDENNAME],
@MIDDLENAME = [MIDDLENAME],
@NICKNAME = [NICKNAME],
@SUFFIXCODEID = [SUFFIXCODEID],
@TITLECODEID = [TITLECODEID],
@ADDRESSES = dbo.UFN_BATCHCONSTITUENTUPDATE_GETADDRESSES_WITHDATES_TOITEMLISTXML(BATCHCONSTITUENTUPDATE.ID),
@PHONES = dbo.UFN_BATCHCONSTITUENTUPDATE_GETPHONES_WITHDATES_TOITEMLISTXML(BATCHCONSTITUENTUPDATE.ID),
@EMAILADDRESSES = dbo.UFN_BATCHCONSTITUENTUPDATE_GETEMAILADDRESSES_WITHDATES_2_TOITEMLISTXML(BATCHCONSTITUENTUPDATE.ID),
@MARITALSTATUSCODEID = [MARITALSTATUSCODEID],
@GIVESANONYMOUSLY = [GIVESANONYMOUSLY],
@DECEASED = [DECEASED],
@DECEASEDDATE = [DECEASEDDATE],
@WEBADDRESS = [WEBADDRESS],
@GENDERCODE = [GENDERCODE],
@ADDRESSHISTORICALSTARTDATE = HISTORICALSTARTDATE,
@ADDRESSHISTORICALENDDATE = HISTORICALENDDATE,
@ADDRESSDONOTMAIL = DONOTMAIL,
@ADDRESSDONOTMAILREASONCODEID = DONOTMAILREASONCODEID,
@ADDRESSSTARTDATE = BATCHCONSTITUENTUPDATEADDRESSES.STARTDATE,
@ADDRESSENDDATE = BATCHCONSTITUENTUPDATEADDRESSES.ENDDATE,
@ADDRESSDPC = DPC,
@ADDRESSCART = CART,
@ADDRESSLOT = LOT,
@ADDRESSINFOSOURCECODEID = BATCHCONSTITUENTUPDATEADDRESSES.INFOSOURCECODEID,
@ADDRESSINFOSOURCECOMMENTS = BATCHCONSTITUENTUPDATEADDRESSES.INFOSOURCECOMMENTS,
@ADDRESSCOUNTYCODEID = BATCHCONSTITUENTUPDATEADDRESSES.COUNTYCODEID,
@ADDRESSREGIONCODEID = BATCHCONSTITUENTUPDATEADDRESSES.REGIONCODEID,
@ADDRESSCONGRESSIONALDISTRICTCODEID = BATCHCONSTITUENTUPDATEADDRESSES.CONGRESSIONALDISTRICTCODEID,
@ADDRESSSTATEHOUSEDISTRICTCODEID = BATCHCONSTITUENTUPDATEADDRESSES.STATEHOUSEDISTRICTCODEID,
@ADDRESSSTATESENATEDISTRICTCODEID = BATCHCONSTITUENTUPDATEADDRESSES.STATESENATEDISTRICTCODEID,
@ADDRESSLOCALPRECINCTCODEID = BATCHCONSTITUENTUPDATEADDRESSES.LOCALPRECINCTCODEID,
@ADDRESSCERTIFICATIONDATA = BATCHCONSTITUENTUPDATEADDRESSES.CERTIFICATIONDATA,
@ADDRESSLASTVALIDATIONATTEMPTDATE = BATCHCONSTITUENTUPDATEADDRESSES.LASTVALIDATIONATTEMPTDATE,
@ADDRESSOMITFROMVALIDATION = BATCHCONSTITUENTUPDATEADDRESSES.OMITFROMVALIDATION,
@ADDRESSVALIDATIONMESSAGE = BATCHCONSTITUENTUPDATEADDRESSES.VALIDATIONMESSAGE,
@PHONEDONOTCALL = BATCHCONSTITUENTUPDATEPHONES.DONOTCALL,
@PHONECOUNTRYID = BATCHCONSTITUENTUPDATEPHONES.COUNTRYID,
@PHONESEASONALSTARTDATE = BATCHCONSTITUENTUPDATEPHONES.SEASONALSTARTDATE,
@PHONESEASONALENDDATE = BATCHCONSTITUENTUPDATEPHONES.SEASONALENDDATE,
@PHONESTARTTIME = BATCHCONSTITUENTUPDATEPHONES.STARTTIME,
@PHONEENDTIME = BATCHCONSTITUENTUPDATEPHONES.ENDTIME,
@PHONESTARTDATE = BATCHCONSTITUENTUPDATEPHONES.STARTDATE,
@PHONEENDDATE = BATCHCONSTITUENTUPDATEPHONES.ENDDATE,
@PHONEINFOSOURCECODEID = BATCHCONSTITUENTUPDATEPHONES.INFOSOURCECODEID,
@EMAILADDRESSDONOTEMAIL = BATCHCONSTITUENTUPDATEEMAILADDRESSES.DONOTEMAIL,
@EMAILADDRESSSTARTDATE = BATCHCONSTITUENTUPDATEEMAILADDRESSES.STARTDATE,
@EMAILADDRESSENDDATE = BATCHCONSTITUENTUPDATEEMAILADDRESSES.ENDDATE,
@EMAILADDRESSINFOSOURCECODEID = BATCHCONSTITUENTUPDATEEMAILADDRESSES.INFOSOURCECODEID,
@CONSTITUENCIES = CONSTITUENCIESXML.CONSTITUENCIES,
@ORIGINAL_KEYNAME = BATCHCONSTITUENTUPDATE.ORIGINAL_KEYNAME,
@ORIGINAL_FIRSTNAME = BATCHCONSTITUENTUPDATE.ORIGINAL_FIRSTNAME,
@SOLICITCODES = dbo.UFN_CONSTITUENTUPDATEBATCH_GETSOLICITCODES_TOITEMLISTXML(BATCHCONSTITUENTUPDATE.ID),
@GENDERCODEID = BATCHCONSTITUENTUPDATE.GENDERCODEID
from dbo.BATCHCONSTITUENTUPDATE
left join dbo.BATCHCONSTITUENTUPDATEADDRESSES
on (BATCHCONSTITUENTUPDATEADDRESSES.BATCHCONSTITUENTUPDATEID = BATCHCONSTITUENTUPDATE.ID
and BATCHCONSTITUENTUPDATEADDRESSES.ISPRIMARY = 1)
left join dbo.BATCHCONSTITUENTUPDATEPHONES
on (BATCHCONSTITUENTUPDATEPHONES.BATCHCONSTITUENTUPDATEID = BATCHCONSTITUENTUPDATE.ID
and BATCHCONSTITUENTUPDATEPHONES.ISPRIMARY = 1)
left join dbo.BATCHCONSTITUENTUPDATEEMAILADDRESSES
on (BATCHCONSTITUENTUPDATEEMAILADDRESSES.BATCHCONSTITUENTUPDATEID = BATCHCONSTITUENTUPDATE.ID
and BATCHCONSTITUENTUPDATEEMAILADDRESSES.ISPRIMARY = 1)
cross apply (
select (
select
CONSTITUENCYCODEID as '@CONSTITUENCYCODEID',
ORIGINALCONSTITUENCYID as '@ORIGINALCONSTITUENCYID',
DATEFROM as '@DATEFROM',
DATETO as '@DATETO'
from (
select
CONSTITUENCYCODEID,
ORIGINALCONSTITUENCYID,
DATEFROM,
DATETO
from
dbo.BATCHCONSTITUENTUPDATECONSTITUENCIES
where
BATCHCONSTITUENTUPDATECONSTITUENCIES.BATCHCONSTITUENTUPDATEID = @ID
union all
select
CONSTITUENCYCODEID,
ORIGINALCONSTITUENCYID,
DATEFROM,
DATETO
from
dbo.BATCHCONSTITUENTUPDATECONSTITUENCIESSYSTEM
where
BATCHCONSTITUENTUPDATECONSTITUENCIESSYSTEM.BATCHCONSTITUENTUPDATEID = @ID
) CONSTITUENCIES
for xml path('ITEM'), type, elements, root('CONSTITUENCIES'), BINARY BASE64
) CONSTITUENCIES
) CONSTITUENCIESXML
where BATCHCONSTITUENTUPDATE.ID = @ID;
return 0;