UFN_RELATIONSHIPCONFIGURATION_CONFIGUREFORREVENUEBATCH

Returns relationship configuration information for a constituent.

Return

Return Type
table

Parameters

Parameter Parameter Type Mode Description
@CONSTITUENTID uniqueidentifier IN

Definition

Copy


            create function dbo.UFN_RELATIONSHIPCONFIGURATION_CONFIGUREFORREVENUEBATCH
            (
                @CONSTITUENTID uniqueidentifier = null
            )
            returns table
            as
            return(
                select
                    R.RELATIONSHIPTYPECODEID as ID,
                    0 as GENDERCODE,
                    case 
                        when EMPLOYEECORPORATERELATIONSHIPTYPE.ID is not null then 1
                        when convert(int, RELATIONSHIPCONSTITUENT.ISGROUP) + convert(int,RELATIONSHIPCONSTITUENT.ISORGANIZATION) = 0 then 1 
                        else 0 end as APPLIESTOINDIVIDUALS,
                    convert(int, RELATIONSHIPCONSTITUENT.ISORGANIZATION) as APPLIESTOORGANIZATIONS,
                    convert(int, RELATIONSHIPCONSTITUENT.ISGROUP) as APPLIESTOGROUPS,
                    case 
                        when convert(int, coalesce(RECIPROCALCONSTITUENT.ISORGANIZATION, RECIPROCALBATCHCONSTITUENT.ISORGANIZATION)) + convert(int, coalesce(RECIPROCALCONSTITUENT.ISGROUP, RECIPROCALBATCHCONSTITUENT.ISGROUP)) = 0 then 1 
                        else 0 end as RELATESTOINDIVIDUALS,
                    case 
                        when EMPLOYEECORPORATERELATIONSHIPTYPE.ID is not null then 1
                        else convert(int, coalesce(RECIPROCALCONSTITUENT.ISORGANIZATION, RECIPROCALBATCHCONSTITUENT.ISORGANIZATION)) end as RELATESTOORGANIZATIONS,
                    convert(int, coalesce(RECIPROCALCONSTITUENT.ISGROUP, RECIPROCALBATCHCONSTITUENT.ISGROUP)) as RELATESTOGROUPS
                from dbo.BATCHREVENUECONSTITUENTRELATION R
                inner join dbo.BATCHREVENUECONSTITUENT RELATIONSHIPCONSTITUENT 
                    on R.CONSTITUENTID = RELATIONSHIPCONSTITUENT.ID
                left join dbo.CONSTITUENT RECIPROCALCONSTITUENT 
                    on R.RELATIONID = RECIPROCALCONSTITUENT.ID
                left join dbo.BATCHREVENUECONSTITUENT RECIPROCALBATCHCONSTITUENT 
                    on R.RELATIONID = RECIPROCALBATCHCONSTITUENT.ID
                left join dbo.EMPLOYEECORPORATERELATIONSHIPTYPE 
                    on EMPLOYEECORPORATERELATIONSHIPTYPE.RELATIONSHIPTYPECODEID = R.RELATIONSHIPTYPECODEID
                where R.CONSTITUENTID = @CONSTITUENTID

                union all

                select
                    R.RECIPROCALTYPECODEID as ID,
                    0 as GENDERCODE,
                    case 
                        when convert(int, coalesce(RECIPROCALCONSTITUENT.ISORGANIZATION, RECIPROCALBATCHCONSTITUENT.ISORGANIZATION)) + convert(int, coalesce(RECIPROCALCONSTITUENT.ISGROUP, RECIPROCALBATCHCONSTITUENT.ISGROUP)) = 0 then 1 
                        else 0 end as APPLIESTOINDIVIDUALS,
                    case 
                        when EMPLOYEECORPORATERELATIONSHIPTYPE.ID is not null then 1
                        else convert(int, coalesce(RECIPROCALCONSTITUENT.ISORGANIZATION, RECIPROCALBATCHCONSTITUENT.ISORGANIZATION)) end as APPLIESTOORGANIZATIONS,
                    convert(int, coalesce(RECIPROCALCONSTITUENT.ISGROUP, RECIPROCALBATCHCONSTITUENT.ISGROUP)) as APPLIESTOGROUPS,
                    case 
                        when EMPLOYEECORPORATERELATIONSHIPTYPE.ID is not null then 1
                        when convert(int, RELATIONSHIPCONSTITUENT.ISGROUP) + convert(int,RELATIONSHIPCONSTITUENT.ISORGANIZATION) = 0 then 1 
                        else 0 end as RELATESTOINDIVIDUALS,
                    convert(int, RELATIONSHIPCONSTITUENT.ISORGANIZATION) as RELATESTOORGANIZATIONS,
                    convert(int, RELATIONSHIPCONSTITUENT.ISGROUP) as RELATESTOGROUPS
                from dbo.BATCHREVENUECONSTITUENTRELATION R
                inner join dbo.BATCHREVENUECONSTITUENT RELATIONSHIPCONSTITUENT 
                    on R.CONSTITUENTID = RELATIONSHIPCONSTITUENT.ID
                left join dbo.CONSTITUENT RECIPROCALCONSTITUENT 
                    on R.RELATIONID = RECIPROCALCONSTITUENT.ID
                left join dbo.BATCHREVENUECONSTITUENT RECIPROCALBATCHCONSTITUENT 
                    on R.RELATIONID = RECIPROCALBATCHCONSTITUENT.ID
                left join dbo.EMPLOYEECORPORATERELATIONSHIPTYPE 
                    on EMPLOYEECORPORATERELATIONSHIPTYPE.RELATIONSHIPTYPECODEID = R.RELATIONSHIPTYPECODEID
                where R.CONSTITUENTID = @CONSTITUENTID
                )