UFN_RELATIONSHIP_CANBEMATCHINGGIFTRELATIONSHIP

Returns whether a relationship can be a matching gift relationship based on the constituent IDs and relationship type code IDs.

Return

Return Type
bit

Parameters

Parameter Parameter Type Mode Description
@RELATIONSHIPCONSTITUENTID uniqueidentifier IN
@RECIPROCALCONSTITUENTID uniqueidentifier IN
@RELATIONSHIPTYPECODEID uniqueidentifier IN
@RECIPROCALTYPECODEID uniqueidentifier IN

Definition

Copy


            CREATE function dbo.UFN_RELATIONSHIP_CANBEMATCHINGGIFTRELATIONSHIP
            (
                @RELATIONSHIPCONSTITUENTID uniqueidentifier = null,
                @RECIPROCALCONSTITUENTID uniqueidentifier = null,
                @RELATIONSHIPTYPECODEID uniqueidentifier = null,
                @RECIPROCALTYPECODEID uniqueidentifier = null
            ) returns bit with execute as caller as begin
                if (
                    select
                        count(*)
                    from
                        dbo.CONSTITUENT RELATIONSHIPCONSTIT
                    cross apply
                        dbo.CONSTITUENT RECIPROCALCONSTIT
                    left join
                        dbo.MATCHINGGIFTCONDITION RELATIONSHIPMCG
                    on
                        RELATIONSHIPMCG.ORGANIZATIONID = RELATIONSHIPCONSTIT.ID
                    left join
                        dbo.MATCHINGGIFTCONDITION RECIPROCALMCG
                    on
                        RECIPROCALMCG.ORGANIZATIONID = RECIPROCALCONSTIT.ID
                    where
                        RELATIONSHIPCONSTIT.ID = @RELATIONSHIPCONSTITUENTID and
                        RECIPROCALCONSTIT.ID = @RECIPROCALCONSTITUENTID and
                        ((RELATIONSHIPCONSTIT.ISORGANIZATION = 1 and RECIPROCALCONSTIT.ISORGANIZATION = 0 and RECIPROCALCONSTIT.ISGROUP = 0) or
                        (RELATIONSHIPCONSTIT.ISORGANIZATION = 0 and RELATIONSHIPCONSTIT.ISGROUP = 0 and RECIPROCALCONSTIT.ISORGANIZATION = 1)) --and

                        --(RELATIONSHIPMCG.RELATIONSHIPTYPECODEID = @RECIPROCALTYPECODEID or

                        --RECIPROCALMCG.RELATIONSHIPTYPECODEID = @RELATIONSHIPTYPECODEID)

                ) > 0
                    return 1;

                return 0;
            end