UFN_PLEDGE_PAYMENTDUE
This function returns the total amount that is due on a given pledge as of a given date.
Return
Return Type |
---|
money |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@REVENUEID | uniqueidentifier | IN | |
@ASOFDATE | datetime | IN |
Definition
Copy
CREATE function dbo.UFN_PLEDGE_PAYMENTDUE
(
@REVENUEID uniqueidentifier,
@ASOFDATE as datetime
)
returns money
as
begin
declare @paymentAmount as money
declare @writeoffAmount as money
declare @totalAmount as money
select @paymentAmount = coalesce(sum(INSTALLMENTPAYMENT.AMOUNT), 0)
from dbo.INSTALLMENTPAYMENT
inner join dbo.INSTALLMENT
on INSTALLMENT.ID = INSTALLMENTPAYMENT.INSTALLMENTID
where INSTALLMENT.REVENUEID = @REVENUEID
and INSTALLMENT.DATE <= @ASOFDATE;
select @writeoffAmount = coalesce(sum(INSTALLMENTWRITEOFF.TRANSACTIONAMOUNT), 0)
from dbo.INSTALLMENTWRITEOFF
inner join dbo.INSTALLMENT
on INSTALLMENT.ID = INSTALLMENTWRITEOFF.INSTALLMENTID
where INSTALLMENT.REVENUEID = @REVENUEID
and INSTALLMENT.DATE <= @ASOFDATE;
select @totalAmount = coalesce(sum(INSTALLMENT.TRANSACTIONAMOUNT), 0)
from dbo.INSTALLMENT
where INSTALLMENT.REVENUEID = @REVENUEID
and INSTALLMENT.DATE <= @ASOFDATE;
return (@totalAmount - @paymentAmount - @writeoffAmount);
end