USP_DATALIST_REVENUEMERGEDATA_DON
Returns revenue merge data donation
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@REVENUEID | uniqueidentifier | IN | Revenue ID |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_REVENUEMERGEDATA_DON
(
@REVENUEID uniqueidentifier
)
as
set nocount on;
select TOP 1
GiftType = case when r.transactionTypecode=0 then RS.APPLICATION else R.TRANSACTIONTYPE END
,TotalGiftAmount = R.AMOUNT * case when S.ENDDATE is not null then
case LOWER(S.FREQUENCYCODE) when 0 then (DATEDIFF(year, S.STARTDATE, S.ENDDATE) + 1)
when 1 then DATEDIFF(year, S.STARTDATE, S.ENDDATE) * 2
when 2 then (DATEDIFF(quarter, S.STARTDATE, S.ENDDATE) + 1)
when 3 then (DATEDIFF(month, S.STARTDATE, S.ENDDATE) + 1)
when 6 then ((DATEDIFF(month, S.STARTDATE, S.ENDDATE) + 1) / 2 + 1)
when 7 then DATEDIFF(month, S.STARTDATE, S.ENDDATE) * 2
when 8 then ((DATEDIFF(week, S.STARTDATE, S.ENDDATE) + 1) / 2 + 1)
when 9 then (DATEDIFF(week, S.STARTDATE, S.ENDDATE) + 1)
else 1
end
else 1 end
,RecurringPaymentAmount =case when r.TRANSACTIONTYPECODE = 2 then coalesce((select sum(RECURRINGGIFTINSTALLMENT.AMOUNT) from dbo.RECURRINGGIFTINSTALLMENT where RECURRINGGIFTINSTALLMENT.REVENUEID = R.ID), 0) else null end
,PledgePaymentAmount = case when r.TRANSACTIONTYPECODE=1 then dbo.UFN_PLEDGE_GETAMOUNTPAID(R.ID) else null end
,GiftFrequency = S.FREQUENCY
,GiftStartDate = S.STARTDATE
,OustandingGiftAmount = dbo.UFN_PLEDGE_GETBALANCE(R.ID)
,AnonymousDonation = R.GIVENANONYMOUSLY
from REVENUE R
LEFT outer join dbo.REVENUESCHEDULE S on S.ID = R.ID
left outer join dbo.REVENUESPLIT RS on R.ID = RS.REVENUEID
where
R.ID = @REVENUEID