USP_DATALIST_ADDRESSES_2
This datalist returns all addresses for a constituent.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CONSTITUENTID | uniqueidentifier | IN | Input parameter indicating the context ID for the data list. |
@INCLUDEFORMER | bit | IN | Show former addresses |
Definition
Copy
create procedure dbo.USP_DATALIST_ADDRESSES_2
(
@CONSTITUENTID uniqueidentifier,
@INCLUDEFORMER bit = 0
)
as
set nocount on;
with [CTE] as
(
select
ADDRESS.ID,
case when HISTORICALENDDATE is null
then coalesce(ADDRESSTYPECODE.DESCRIPTION, N'') + N' (Current) '
else coalesce(ADDRESSTYPECODE.DESCRIPTION, N'') + N' (Former) '
end as [DESCRIPTION],
case when ADDRESSCOORDINATES.ID is null or ADDRESSCOORDINATES.PENDINGGEOCODE = 1 or ADDRESSCOORDINATES.INVALIDGEOCODE = 1 then 0 else 1 end ISGEOCODED,
case when ADDRESSCOORDINATES.ID is null then 0 else ADDRESSCOORDINATES.PENDINGGEOCODE end PENDINGGEOCODE,
case when ADDRESSCOORDINATES.ID is null then 0 else ADDRESSCOORDINATES.INVALIDGEOCODE end INVALIDGEOCODE,
dbo.UFN_MAPPING_BUILDCONTEXTRECORDID(cast('645E6BE7-459C-402b-A03C-67587CA72B94' as uniqueidentifier),@CONSTITUENTID,ADDRESS.ID) as [MAPCONTEXTID],
ADDRESS.ISPRIMARY,
case when ADDRESS.HISTORICALENDDATE is null then 0 else 1 end as ISFORMER,
case when ADDRESS.HISTORICALSTARTDATE is null then '0001-01-01' else ADDRESS.HISTORICALSTARTDATE end as [STARTDATE_SORT],
case when ADDRESS.HISTORICALENDDATE is null then '0001-01-01' else ADDRESS.HISTORICALENDDATE end as [ENDDATE_SORT],
ADDRESS.DATEADDED
from dbo.ADDRESS
left join
dbo.ADDRESSTYPECODE
on
ADDRESS.ADDRESSTYPECODEID = ADDRESSTYPECODE.ID
left join
dbo.ADDRESSCOORDINATES
on
ADDRESSCOORDINATES.ADDRESSID = ADDRESS.ID
where
ADDRESS.CONSTITUENTID = @CONSTITUENTID
and (@INCLUDEFORMER = 1 or HISTORICALENDDATE is null)
)
select ID, DESCRIPTION, ISGEOCODED, PENDINGGEOCODE, INVALIDGEOCODE, MAPCONTEXTID, ISFORMER from [CTE]
order by ISPRIMARY desc, ISFORMER asc, ENDDATE_SORT desc, STARTDATE_SORT desc, DATEADDED desc