UFN_REVENUEBATCH_GETDEFAULTMATCHINGGIFTS

Returns the default matching gifts for a revenue batch row.

Return

Return Type
table

Parameters

Parameter Parameter Type Mode Description
@CONSTITUENTID uniqueidentifier IN
@DATE datetime IN
@DONATIONAMOUNT money IN
@DONATIONRECEIPTAMOUNT money IN
@DONATIONSPLITS xml IN

Definition

Copy


            CREATE function dbo.UFN_REVENUEBATCH_GETDEFAULTMATCHINGGIFTS
            (
                @CONSTITUENTID uniqueidentifier,
                @DATE datetime,
                @DONATIONAMOUNT money,
                @DONATIONRECEIPTAMOUNT money,
                @DONATIONSPLITS xml
            )
            returns @R table
            (
                MATCHEDCONSTITUENTID uniqueidentifier,
                ORGANIZATIONID uniqueidentifier,
                RELATIONSHIPID uniqueidentifier,
                MATCHINGGIFTCONDITIONTYPEID uniqueidentifier,
                AMOUNT money,
                DATE datetime,
                SPLITS xml,
                COULDNOTDEFAULTMATCHINGGIFT bit
            )
            as 
            begin
                if @CONSTITUENTID is null
                    return;

                if dbo.UFN_MATCHINGGIFTPREFERENCE_AUTOADDMG() > 0
                begin
                    insert into @R(MATCHEDCONSTITUENTID, ORGANIZATIONID, RELATIONSHIPID, MATCHINGGIFTCONDITIONTYPEID, AMOUNT, DATE, SPLITS, COULDNOTDEFAULTMATCHINGGIFT)
                        select 
                            @CONSTITUENTID,
                            ORGANIZATIONID,
                            RELATIONSHIPID,
                            MATCHINGGIFTCONDITIONTYPEID,
                            AMOUNT,
                            DATE,
                            SPLITS,
                            COULDNOTDEFAULTMATCHINGGIFT
                        from dbo.UFN_REVENUEBATCH_GETDEFAULTMATCHINGGIFTS_FORCONSTITUENT(@CONSTITUENTID, @DATE, @DONATIONAMOUNT, @DONATIONRECEIPTAMOUNT, @DONATIONSPLITS);

                end

                if dbo.UFN_MATCHINGGIFTPREFERENCE_AUTOADDSPOUSEMG() > 0
                begin
                    declare @SPOUSEID uniqueidentifier;
                    select @SPOUSEID = RECIPROCALCONSTITUENTID 
                    from dbo.RELATIONSHIP 
                    where RELATIONSHIPCONSTITUENTID = @CONSTITUENTID 
                        and ISSPOUSE = 1;

                    if @SPOUSEID is not null
                        insert into @R(MATCHEDCONSTITUENTID, ORGANIZATIONID, RELATIONSHIPID, MATCHINGGIFTCONDITIONTYPEID, AMOUNT, DATE, SPLITS, COULDNOTDEFAULTMATCHINGGIFT)
                            select 
                                @SPOUSEID,
                                ORGANIZATIONID,
                                RELATIONSHIPID,
                                MATCHINGGIFTCONDITIONTYPEID,
                                AMOUNT,
                                DATE,
                                SPLITS,
                                COULDNOTDEFAULTMATCHINGGIFT
                            from dbo.UFN_REVENUEBATCH_GETDEFAULTMATCHINGGIFTS_FORCONSTITUENT(@SPOUSEID, @DATE, @DONATIONAMOUNT, @DONATIONRECEIPTAMOUNT, @DONATIONSPLITS);
                end

                return;
            end