fnFundraiserSolicitorDonationTotal
Return
Return Type |
---|
money |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@FundraiserSolicitorID | int | IN |
Definition
Copy
CREATE FUNCTION [dbo].[fnFundraiserSolicitorDonationTotal]
(
@FundraiserSolicitorID int
)
RETURNS money
AS
BEGIN
DECLARE @Total money
DECLARE @AthonTotal money
DECLARE @AthonUnits int
DECLARE @FRDTable Table(
Amount Money,
IsAthon bit)
IF EXISTS(SELECT TOP 1 null FROM FundraiserDonations WHERE SolicitorID = @FundraiserSolicitorID)
BEGIN
INSERT INTO @FRDTable
SELECT frd.amount, frd.IsAthon
FROM dbo.FundRaiserDonations frd
INNER JOIN DonationTransactions tx ON frd.DonationTransactionsID = tx.DonationTransactionsID
where frd.SolicitorID = @FundraiserSolicitorID AND tx.IsDeleted = 0 and tx.Status = 1
SELECT @AthonUnits = isnull(AthonUnits, 0) from FundraiserSolicitors where ID = @FundraiserSolicitorID
SELECT @Total=isnull(sum(frd.Amount),0)
FROM @FRDTable frd
WHERE frd.IsAthon = 0
SELECT @AthonTotal=isnull(sum(frd.Amount*@AthonUnits),0)
FROM @FRDTable frd
WHERE frd.IsAthon = 1
END
RETURN(isnull(@Total+@AthonTotal, 0))
END