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