USP_CONSTITUENT_VALIDWEALTHPOINTSEARCHCRITERIA
Determines whether a given constituent has enough data to perform a WealthPoint search (for both strict and relaxed).
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CONSTITUENTID | uniqueidentifier | IN | |
@STRICT | bit | INOUT | |
@RELAXED | bit | INOUT |
Definition
Copy
CREATE procedure dbo.USP_CONSTITUENT_VALIDWEALTHPOINTSEARCHCRITERIA
(
@CONSTITUENTID uniqueidentifier,
@STRICT bit = null output,
@RELAXED bit = null output
)
as
set nocount on;
declare @NAME bit;
declare @ADDRESS bit;
declare @PHONE bit;
declare @DOB bit;
declare @BUSINESS bit;
select
@NAME = case when len(C.FIRSTNAME)>0 then 1 else 0 end,
@ADDRESS = case when len(A.ADDRESSBLOCK)>0 and len(A.CITY)>0 and A.STATEID is not null and len(A.POSTCODE)>0 then 1 else 0 end,
@PHONE = case when len(P.NUMBER)>0 then 1 else 0 end,
@DOB = case when C.BIRTHDATE!=N'00000000' then 1 else 0 end,
@BUSINESS = case when len(CBUSINESS.NAME)>0 then 1 else 0 end
from
dbo.CONSTITUENT C
left outer join dbo.ADDRESS A on A.CONSTITUENTID=C.ID and A.ISPRIMARY=1
left outer join dbo.PHONE P on P.CONSTITUENTID=C.ID and P.ISPRIMARY=1
left outer join dbo.RELATIONSHIP RBUSINESS on C.ID = RBUSINESS.RECIPROCALCONSTITUENTID and RBUSINESS.ISPRIMARYBUSINESS=1
left outer join dbo.CONSTITUENT CBUSINESS on CBUSINESS.ID=RBUSINESS.RELATIONSHIPCONSTITUENTID
where
C.ID = @CONSTITUENTID;
set @RELAXED = coalesce(@NAME,0);
set @STRICT = coalesce(@NAME,0) & (coalesce(@ADDRESS,0) | coalesce(@PHONE,0) | coalesce(@DOB,0) | coalesce(@BUSINESS,0));
return 0;