fnFundRaiserForwardedTotalDonationAmount

Return

Return Type
money

Parameters

Parameter Parameter Type Mode Description
@FundRaiserSolicitorContactID int IN

Definition

Copy

            CREATE   FUNCTION [dbo].[fnFundRaiserForwardedTotalDonationAmount]
            (    
            @FundRaiserSolicitorContactID int
            )
            RETURNS money
            AS
            BEGIN

                DECLARE @total1 money
                DECLARE @total2 money
                DECLARE @FRETable table(FRDID int, Amount money, AthonUnits int, IsAthon bit)

                Insert Into @FRETable
                    SELECT  frd.ID, frd.Amount, frs.AthonUnits, frd.IsAthon
                    FROM dbo.FundRaiserDonations frd
                    inner join dbo.FundraiserSolicitorContactAction FRActionDonation on FRActionDonation.FundRaiserDonationsID = frd.id
                    inner join dbo.FundraiserSolicitorContactAction FRActionForward on FRActionForward.ForwardingContactActionID = FRActionDonation.ID
                    inner join dbo.FundraiserSolicitors frs on frs.ID = frd.SolicitorID
                    WHERE FRActionForward.Type = 6
                    and FRActionForward.FundraiserSolicitorContactID = @FundRaiserSolicitorContactID

                select @total1=isnull(sum(Amount),0)
                FROM @FRETable
                where IsAthon = 0

                SELECT @total2=isnull(sum(Amount * AthonUnits),0)
                FROM @FRETable
                WHERE IsAthon=1
                and not exists(select null from dbo.FundRaiserDonations frd where frd.PledgeID=FRDID)

                RETURN @total1+@total2

            END