USP_DATAFORMTEMPLATE_EDITLOAD_CONSTITUENTDUPLICATEMATCH
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 | |
@EMAILS | xml | INOUT | |
@SPOUSENAME | nvarchar(154) | INOUT | |
@SPOUSELOOKUPID | nvarchar(50) | INOUT | |
@SPOUSESTARTDATE | datetime | INOUT | |
@SPOUSEENDDATE | datetime | INOUT | |
@HOUSEHOLDNAME | nvarchar(154) | INOUT | |
@HOUSEHOLDLOOKUPID | nvarchar(50) | INOUT | |
@BUSINESSNAME | nvarchar(154) | INOUT | |
@BUSINESSLOOKUPID | nvarchar(50) | INOUT | |
@CONSTITUENTACTION | tinyint | INOUT | |
@ADDRESSACTION | tinyint | INOUT | |
@EMAILACTION | tinyint | INOUT | |
@PHONEACTION | tinyint | INOUT | |
@ISORGANIZATION | bit | INOUT | |
@INDUSTRYCODEID | uniqueidentifier | INOUT | |
@NUMEMPLOYEES | int | INOUT | |
@NUMSUBSIDIARIES | int | 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 | |
@DEFAULTCOUNTRYID | uniqueidentifier | INOUT | |
@CONSTITUENCIES | xml | INOUT | |
@GENDERCODEID | uniqueidentifier | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_CONSTITUENTDUPLICATEMATCH (
@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 OsRGANIZATIONNAME
@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,
@EMAILS xml = null output,
@SPOUSENAME nvarchar(154) = null output,
@SPOUSELOOKUPID nvarchar(50) = null output,
@SPOUSESTARTDATE datetime = null output,
@SPOUSEENDDATE datetime = null output,
@HOUSEHOLDNAME nvarchar(154) = null output,
@HOUSEHOLDLOOKUPID nvarchar(50) = null output,
@BUSINESSNAME nvarchar(154) = null output,
@BUSINESSLOOKUPID nvarchar(50) = null output,
@CONSTITUENTACTION tinyint = null output,
@ADDRESSACTION tinyint = null output,
@EMAILACTION tinyint = null output,
@PHONEACTION tinyint = null output,
@ISORGANIZATION bit = null output,
@INDUSTRYCODEID uniqueidentifier = null output,
@NUMEMPLOYEES int = null output,
@NUMSUBSIDIARIES int = 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,
@DEFAULTCOUNTRYID uniqueidentifier = null output,
@CONSTITUENCIES xml = null output,
@GENDERCODEID uniqueidentifier = null output
)
as
set nocount on;
set @DATALOADED = 0;
set @TSLONG = 0;
declare @ISGROUP bit;
--CONSTIT FIELDS
select @DATALOADED = 1,
@ISORGANIZATION = CONSTITUENT.ISORGANIZATION,
@ISGROUP = CONSTITUENT.ISGROUP,
@FIRSTNAME = CONSTITUENT.FIRSTNAME,
@MIDDLENAME = CONSTITUENT.MIDDLENAME,
@LASTNAME = case CONSTITUENT.ISORGANIZATION when 1 then CONSTITUENT.KEYNAMEPREFIX + case CONSTITUENT.KEYNAMEPREFIX when '' then '' else '\' end + CONSTITUENT.KEYNAME else CONSTITUENT.KEYNAME end,
@SUFFIXCODEID = CONSTITUENT.SUFFIXCODEID,
@TITLECODEID = CONSTITUENT.TITLECODEID,
@MAIDENNAME = CONSTITUENT.MAIDENNAME,
@NICKNAME = CONSTITUENT.NICKNAME,
@GENDERCODE = CONSTITUENT.GENDERCODE,
@BIRTHDATE = CONSTITUENT.BIRTHDATE,
@LOOKUPID = CONSTITUENT.LOOKUPID,
@CREATEDON = CONSTITUENT.DATEADDED,
@DATECHANGED = CONSTITUENT.DATECHANGED,
@TSLONG = CONSTITUENT.TSLONG,
@INDUSTRYCODEID = ORGANIZATIONDATA.INDUSTRYCODEID,
@NUMEMPLOYEES = coalesce(ORGANIZATIONDATA.NUMEMPLOYEES, 0),
@NUMSUBSIDIARIES = coalesce(ORGANIZATIONDATA.NUMSUBSIDIARIES, 0),
@MARITALSTATUSCODEID = MARITALSTATUSCODEID,
@DECEASED = dbo.UFN_CONSTITUENT_ISDECEASED(@ID),
@DECEASEDDATE = (
select DECEASEDDATE
from dbo.DECEASEDCONSTITUENT
where ID = @ID
),
@WEBADDRESS = WEBADDRESS,
@GIVESANONYMOUSLY = GIVESANONYMOUSLY,
@GENDERCODEID = CONSTITUENT.GENDERCODEID
from dbo.CONSTITUENT
left join dbo.ORGANIZATIONDATA on dbo.CONSTITUENT.ID = dbo.ORGANIZATIONDATA.ID
where CONSTITUENT.ID = @ID;
--EMAIL
declare @EMAILTABLE table (
EMAILADDRESS dbo.UDT_EMAILADDRESS,
EMAILADDRESSID uniqueidentifier,
EMAILADDRESSTYPECODEID uniqueidentifier,
ISPRIMARY bit,
STARTDATE datetime,
ENDDATE datetime,
INFOSOURCECODEID uniqueidentifier,
DONOTEMAIL bit,
LASTUPDATED date
);
insert into @EMAILTABLE (
EMAILADDRESS,
EMAILADDRESSID,
EMAILADDRESSTYPECODEID,
ISPRIMARY,
STARTDATE,
ENDDATE,
INFOSOURCECODEID,
DONOTEMAIL,
LASTUPDATED
)
select EMAILADDRESS,
ID,
EMAILADDRESSTYPECODEID,
ISPRIMARY,
STARTDATE,
ENDDATE,
INFOSOURCECODEID,
DONOTEMAIL,
DATECHANGED
from dbo.EMAILADDRESS
where EMAILADDRESS.CONSTITUENTID = @ID;
select @EMAILID = EMAILADDRESSID,
@EMAILADDRESSTYPECODEID = EMAILADDRESSTYPECODEID,
@EMAILADDRESS = EMAILADDRESS,
@EMAILADDRESSSTARTDATE = STARTDATE,
@EMAILADDRESSENDDATE = ENDDATE,
@EMAILADDRESSINFOSOURCECODEID = INFOSOURCECODEID,
@EMAILADDRESSDONOTEMAIL = DONOTEMAIL
from @EMAILTABLE
where ISPRIMARY = 1;
set @EMAILS = (
select EMAILADDRESSID,
EMAILADDRESSTYPECODEID,
EMAILADDRESS,
STARTDATE,
ENDDATE,
ISPRIMARY,
LASTUPDATED
from @EMAILTABLE
order by ISPRIMARY desc
for xml raw('ITEM'),
type,
elements,
root('EMAILS'),
binary BASE64
);
--PHONE
declare @PHONETABLE table (
PHONENUMBER nvarchar(100),
PHONEID uniqueidentifier,
PHONETYPECODEID uniqueidentifier,
ISPRIMARY bit,
STARTDATE datetime,
ENDDATE datetime,
DONOTCALL bit,
COUNTRYID uniqueidentifier,
STARTTIME dbo.UDT_HOURMINUTE,
ENDTIME dbo.UDT_HOURMINUTE,
SEASONALSTARTDATE dbo.UDT_MONTHDAY,
SEASONALENDDATE dbo.UDT_MONTHDAY,
INFOSOURCECODEID uniqueidentifier,
LASTUPDATED date
);
insert into @PHONETABLE (
PHONENUMBER,
PHONEID,
PHONETYPECODEID,
ISPRIMARY,
STARTDATE,
ENDDATE,
DONOTCALL,
COUNTRYID,
STARTTIME,
ENDTIME,
SEASONALSTARTDATE,
SEASONALENDDATE,
INFOSOURCECODEID,
LASTUPDATED
)
select PHONE.NUMBER,
PHONE.ID,
PHONE.PHONETYPECODEID,
PHONE.ISPRIMARY,
PHONE.STARTDATE,
PHONE.ENDDATE,
DONOTCALL,
COUNTRYID,
STARTTIME,
ENDTIME,
SEASONALSTARTDATE,
SEASONALENDDATE,
INFOSOURCECODEID,
DATECHANGED
from dbo.PHONE
where PHONE.CONSTITUENTID = @ID;
-- get primary phone
select @PHONEID = PHONEID,
@PHONETYPECODEID = PHONETYPECODEID,
@PHONENUMBER = PHONENUMBER,
@PHONEDONOTCALL = DONOTCALL,
@PHONECOUNTRYID = COUNTRYID,
@PHONESEASONALSTARTDATE = SEASONALSTARTDATE,
@PHONESEASONALENDDATE = SEASONALENDDATE,
@PHONESTARTDATE = STARTDATE,
@PHONEENDDATE = ENDDATE,
@PHONESTARTTIME = STARTTIME,
@PHONEENDTIME = ENDTIME,
@PHONEINFOSOURCECODEID = INFOSOURCECODEID
from @PHONETABLE
where ISPRIMARY = 1;
set @PHONES = (
select PHONEID,
PHONETYPECODEID,
PHONENUMBER,
STARTDATE,
ENDDATE,
ISPRIMARY,
LASTUPDATED
from @PHONETABLE
order by ISPRIMARY desc
for xml raw('ITEM'),
type,
elements,
root('PHONES'),
binary BASE64
);
--ADDRESS
declare @ADDRESSTABLE table (
ADDRESSID uniqueidentifier,
ADDRESSTYPECODEID uniqueidentifier,
ADDRESSBLOCK nvarchar(150),
CITY nvarchar(50),
STATEID uniqueidentifier,
POSTCODE nvarchar(12),
ISPRIMARY bit,
STARTDATE dbo.UDT_MONTHDAY,
ENDDATE dbo.UDT_MONTHDAY,
COUNTRYID uniqueidentifier,
HISTORICALSTARTDATE date,
HISTORICALENDDATE date,
DONOTMAIL bit,
DONOTMAILREASONCODEID uniqueidentifier,
DPC nvarchar(max),
CART nvarchar(max),
LOT nvarchar(5),
INFOSOURCECODEID uniqueidentifier,
INFOSOURCECOMMENTS nvarchar(256),
COUNTYCODEID uniqueidentifier,
REGIONCODEID uniqueidentifier,
CONGRESSIONALDISTRICTCODEID uniqueidentifier,
STATEHOUSEDISTRICTCODEID uniqueidentifier,
STATESENATEDISTRICTCODEID uniqueidentifier,
LOCALPRECINCTCODEID uniqueidentifier,
CERTIFICATIONDATA int,
LASTVALIDATIONATTEMPTDATE date,
OMITFROMVALIDATION bit,
VALIDATIONMESSAGE nvarchar(200),
LASTUPDATED date
);
insert into @ADDRESSTABLE (
ADDRESSID,
ADDRESSTYPECODEID,
ADDRESSBLOCK,
CITY,
STATEID,
POSTCODE,
ISPRIMARY,
STARTDATE,
ENDDATE,
COUNTRYID,
HISTORICALSTARTDATE,
HISTORICALENDDATE,
DONOTMAIL,
DONOTMAILREASONCODEID,
DPC,
CART,
LOT,
INFOSOURCECODEID,
INFOSOURCECOMMENTS,
COUNTYCODEID,
REGIONCODEID,
CONGRESSIONALDISTRICTCODEID,
STATEHOUSEDISTRICTCODEID,
STATESENATEDISTRICTCODEID,
LOCALPRECINCTCODEID,
CERTIFICATIONDATA,
LASTVALIDATIONATTEMPTDATE,
OMITFROMVALIDATION,
VALIDATIONMESSAGE,
LASTUPDATED
)
select ADDRESS.ID,
ADDRESS.ADDRESSTYPECODEID,
ADDRESS.ADDRESSBLOCK,
ADDRESS.CITY,
ADDRESS.STATEID,
ADDRESS.POSTCODE,
ISPRIMARY,
STARTDATE,
ENDDATE,
COUNTRYID,
HISTORICALSTARTDATE,
HISTORICALENDDATE,
DONOTMAIL,
DONOTMAILREASONCODEID,
DPC,
CART,
LOT,
INFOSOURCECODEID,
INFOSOURCECOMMENTS,
COUNTYCODEID,
REGIONCODEID,
CONGRESSIONALDISTRICTCODEID,
STATEHOUSEDISTRICTCODEID,
STATESENATEDISTRICTCODEID,
LOCALPRECINCTCODEID,
CERTIFICATIONDATA,
LASTVALIDATIONATTEMPTDATE,
OMITFROMVALIDATION,
VALIDATIONMESSAGE,
ADDRESS.DATECHANGED
from dbo.ADDRESS
left join dbo.ADDRESSVALIDATIONUPDATE on ADDRESSVALIDATIONUPDATE.ID = ADDRESS.ID
where ADDRESS.CONSTITUENTID = @ID;
-- get primary address
select @ADDRESSID = ADDRESSID,
@ADDRESSTYPECODEID = ADDRESSTYPECODEID,
@ADDRESS_ADDRESSBLOCK = ADDRESSBLOCK,
@ADDRESS_CITY = CITY,
@ADDRESS_STATEID = STATEID,
@ADDRESS_POSTCODE = POSTCODE,
@ADDRESS_COUNTRYID = COUNTRYID,
@ADDRESSHISTORICALSTARTDATE = HISTORICALSTARTDATE,
@ADDRESSHISTORICALENDDATE = HISTORICALENDDATE,
@ADDRESSDONOTMAIL = DONOTMAIL,
@ADDRESSDONOTMAILREASONCODEID = DONOTMAILREASONCODEID,
@ADDRESSSTARTDATE = STARTDATE,
@ADDRESSENDDATE = ENDDATE,
@ADDRESSDPC = DPC,
@ADDRESSCART = CART,
@ADDRESSLOT = LOT,
@ADDRESSINFOSOURCECODEID = INFOSOURCECODEID,
@ADDRESSINFOSOURCECOMMENTS = INFOSOURCECOMMENTS,
@ADDRESSCOUNTYCODEID = COUNTYCODEID,
@ADDRESSREGIONCODEID = REGIONCODEID,
@ADDRESSCONGRESSIONALDISTRICTCODEID = CONGRESSIONALDISTRICTCODEID,
@ADDRESSSTATEHOUSEDISTRICTCODEID = STATEHOUSEDISTRICTCODEID,
@ADDRESSSTATESENATEDISTRICTCODEID = STATESENATEDISTRICTCODEID,
@ADDRESSLOCALPRECINCTCODEID = LOCALPRECINCTCODEID,
@ADDRESSCERTIFICATIONDATA = CERTIFICATIONDATA,
@ADDRESSLASTVALIDATIONATTEMPTDATE = LASTVALIDATIONATTEMPTDATE,
@ADDRESSOMITFROMVALIDATION = OMITFROMVALIDATION,
@ADDRESSVALIDATIONMESSAGE = VALIDATIONMESSAGE
from @ADDRESSTABLE
where ISPRIMARY = 1;
set @ADDRESSES = (
select ADDRESSID,
ADDRESSTYPECODEID,
ADDRESSBLOCK,
CITY,
STATEID,
POSTCODE,
STARTDATE,
ENDDATE,
ISPRIMARY,
COUNTRYID,
dbo.UFN_BUILDFULLADDRESS(ADDRESSID, ADDRESSBLOCK, CITY, STATEID, POSTCODE, COUNTRYID) as FULLADDRESS,
LASTUPDATED,
HISTORICALSTARTDATE,
HISTORICALENDDATE
from @ADDRESSTABLE
order by ISPRIMARY desc
for xml raw('ITEM'),
type,
elements,
root('ADDRESSES'),
binary BASE64
);
-- spouse information
select @SPOUSENAME = CONSTITUENT.name,
@SPOUSELOOKUPID = CONSTITUENT.LOOKUPID,
@SPOUSESTARTDATE = RELATIONSHIP.STARTDATE,
@SPOUSEENDDATE = RELATIONSHIP.ENDDATE
from dbo.RELATIONSHIP
inner join dbo.CONSTITUENT on RELATIONSHIP.RECIPROCALCONSTITUENTID = CONSTITUENT.ID
where RELATIONSHIP.RELATIONSHIPCONSTITUENTID = @ID and RELATIONSHIP.ISSPOUSE = 1;
-- household information
if @ISORGANIZATION = 0 and @ISGROUP = 0
select top (1) @HOUSEHOLDNAME = CG.name,
@HOUSEHOLDLOOKUPID = CG.LOOKUPID
from dbo.GROUPMEMBER as GM
join dbo.CONSTITUENT as CG on GM.GROUPID = CG.ID
join dbo.GROUPDATA as GD on GD.ID = CG.ID
where GM.MEMBERID = @ID and dbo.UFN_GROUPMEMBER_ISCURRENTMEMBER(GM.ID) = 1 and GD.GROUPTYPECODE = 0;
-- get primary business
if @ISORGANIZATION = 0 and @ISGROUP = 0
select @BUSINESSNAME = [ORG].KEYNAME,
@BUSINESSLOOKUPID = [ORG].LOOKUPID
from dbo.RELATIONSHIP
inner join dbo.CONSTITUENT as [ORG] on [ORG].ID = RELATIONSHIP.RECIPROCALCONSTITUENTID
where RELATIONSHIP.RELATIONSHIPCONSTITUENTID = @ID and RELATIONSHIP.ISPRIMARYBUSINESS = 1;
select @DEFAULTCOUNTRYID = DEFAULTCOUNTRYID
from dbo.INTERNATIONALIZATIONINFO
-- constituencies
select @CONSTITUENCIES = (
select
CONSTITUENCYCODEID as '@CONSTITUENCYCODEID',
ORIGINALCONSTITUENCYID as '@ORIGINALCONSTITUENCYID',
DATEFROM as '@DATEFROM',
DATETO as '@DATETO'
from dbo.UFN_CONSTITUENT_GETCONSTITUENCIES_FORUPDATEBATCH(@ID)
for xml path('ITEM'), type, elements, root('CONSTITUENCIES'), BINARY BASE64
)
return 0;