UFN_BATCHSPONSORSHIPCONSTITUENT_NAMEFORMAT_FROMID
This function returns the built name based on the batch constituent id and name format function id.
Return
Return Type |
---|
nvarchar(700) |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@NAMEFORMATFUNCTIONID | uniqueidentifier | IN | |
@BATCHSPONSORSHIPCONSTITUENTID | uniqueidentifier | IN |
Definition
Copy
create function dbo.UFN_BATCHSPONSORSHIPCONSTITUENT_NAMEFORMAT_FROMID(
@NAMEFORMATFUNCTIONID uniqueidentifier,
@BATCHSPONSORSHIPCONSTITUENTID uniqueidentifier
) returns nvarchar(700)
with execute as caller
as begin
declare @NAME nvarchar(700);
select
@NAME = dbo.UFN_BUILDNAMEFORMAT(
@NAMEFORMATFUNCTIONID,
coalesce(CONSTITUENT.ID, BATCHSPONSORSHIPCONSTITUENT.ID),
coalesce(CONSTITUENT.KEYNAME, BATCHSPONSORSHIPCONSTITUENT.KEYNAME),
coalesce(CONSTITUENT.FIRSTNAME, BATCHSPONSORSHIPCONSTITUENT.FIRSTNAME),
coalesce(CONSTITUENT.MIDDLENAME, BATCHSPONSORSHIPCONSTITUENT.MIDDLENAME),
(select DESCRIPTION from dbo.TITLECODE where ID = coalesce(CONSTITUENT.TITLECODEID, BATCHSPONSORSHIPCONSTITUENT.TITLECODEID)),
(select DESCRIPTION from dbo.SUFFIXCODE where ID = coalesce(CONSTITUENT.SUFFIXCODEID, BATCHSPONSORSHIPCONSTITUENT.SUFFIXCODEID)),
coalesce(EXISTING_SPOUSE.KEYNAME, NEW_EXISTING_SPOUSE.KEYNAME, NEW_SPOUSE.KEYNAME),
coalesce(EXISTING_SPOUSE.FIRSTNAME, NEW_EXISTING_SPOUSE.FIRSTNAME, NEW_SPOUSE.FIRSTNAME),
coalesce(EXISTING_SPOUSE.MIDDLENAME, NEW_EXISTING_SPOUSE.MIDDLENAME, NEW_SPOUSE.MIDDLENAME),
(select DESCRIPTION from dbo.TITLECODE where ID = coalesce(EXISTING_SPOUSE.TITLECODEID, NEW_EXISTING_SPOUSE.TITLECODEID, NEW_SPOUSE.TITLECODEID)),
(select DESCRIPTION from dbo.SUFFIXCODE where ID = coalesce(EXISTING_SPOUSE.SUFFIXCODEID, NEW_EXISTING_SPOUSE.SUFFIXCODEID, NEW_SPOUSE.SUFFIXCODEID))
)
from dbo.BATCHSPONSORSHIPCONSTITUENT
left join dbo.CONSTITUENT on BATCHSPONSORSHIPCONSTITUENT.EXISTINGCONSTITUENTID = CONSTITUENT.ID
left join dbo.RELATIONSHIP on CONSTITUENT.ID = RELATIONSHIP.RELATIONSHIPCONSTITUENTID and RELATIONSHIP.ISSPOUSE <> 0
left join dbo.CONSTITUENT as EXISTING_SPOUSE on EXISTING_SPOUSE.ID = RELATIONSHIP.RECIPROCALCONSTITUENTID
left join dbo.BATCHSPONSORSHIPCONSTITUENTRELATION on BATCHSPONSORSHIPCONSTITUENT.ID = BATCHSPONSORSHIPCONSTITUENTRELATION.CONSTITUENTID and BATCHSPONSORSHIPCONSTITUENTRELATION.ISSPOUSE <> 0
left join dbo.BATCHSPONSORSHIPCONSTITUENT as NEW_SPOUSE on BATCHSPONSORSHIPCONSTITUENTRELATION.RELATIONID = NEW_SPOUSE.ID
left join dbo.CONSTITUENT as NEW_EXISTING_SPOUSE on NEW_SPOUSE.EXISTINGCONSTITUENTID = NEW_EXISTING_SPOUSE.ID
where
BATCHSPONSORSHIPCONSTITUENT.ID = @BATCHSPONSORSHIPCONSTITUENTID;
-- CONDBREAK is not currently handled anywhere, so just remove it, at least for now.
set @NAME = replace(@NAME, N'{CONDBREAK}', N' ');
return @NAME;
end;