UFN_DONORCHALLENGE_ENCUMBEREDAMOUNT
Returns the encumbered amount of a donor challenge.
Return
Return Type |
---|
money |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN |
Definition
Copy
create function dbo.UFN_DONORCHALLENGE_ENCUMBEREDAMOUNT(@ID uniqueidentifier) returns money
as
begin
declare @AMOUNT money;
set @AMOUNT = (select coalesce(sum(AMOUNT),0) from dbo.DONORCHALLENGEENCUMBERED where DONORCHALLENGEID = @ID and STATUSTYPECODE = 0);
--subtract any payments that have been approved
set @AMOUNT = @AMOUNT -
coalesce((select sum(DONORCHALLENGEENCUMBERED.AMOUNT)
from dbo.DONORCHALLENGEENCUMBERED
inner join dbo.REVENUESPLIT on
DONORCHALLENGEENCUMBERED.REVENUESPLITID = REVENUESPLIT.ID
where DONORCHALLENGEENCUMBERED.DONORCHALLENGEID = @ID
and DONORCHALLENGEENCUMBERED.STATUSTYPECODE = 1
and DONORCHALLENGEENCUMBERED.REVENUESPLITID in
(
select INSTALLMENTSPLITPAYMENT.PAYMENTID
from dbo.INSTALLMENTSPLITPAYMENT
inner join dbo.INSTALLMENTSPLIT
on INSTALLMENTSPLITPAYMENT.INSTALLMENTSPLITID = INSTALLMENTSPLIT.ID
inner join dbo.REVENUESPLIT
on INSTALLMENTSPLIT.PLEDGEID = REVENUESPLIT.REVENUEID and INSTALLMENTSPLIT.DESIGNATIONID = REVENUESPLIT.DESIGNATIONID
inner join dbo.DONORCHALLENGEENCUMBERED DCEPLEDGE
on DCEPLEDGE.REVENUESPLITID = REVENUESPLIT.ID
where DCEPLEDGE.DONORCHALLENGEID = @ID
and DCEPLEDGE.STATUSTYPECODE = 0
)
), 0)
return @AMOUNT;
end