UFN_CORPORATION_GETCONSTITUENTGIFTSINCURRENCY
Returns the gifts for the given constituent based on the currently selected organizations in a given currency
Return
Return Type |
---|
table |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@ROOTID | uniqueidentifier | IN | |
@CURRENCYID | uniqueidentifier | IN |
Definition
Copy
CREATE function [dbo].[UFN_CORPORATION_GETCONSTITUENTGIFTSINCURRENCY](@CURRENTAPPUSERID uniqueidentifier, @ROOTID uniqueidentifier, @CURRENCYID uniqueidentifier)
returns table
as return
select
CSS.SELECTEDID as CONSTITUENTID,
R.ID as REVENUEID,
RS.ID as REVENUESPLITID,
cast(sum(cast(dbo.UFN_REVENUESPLIT_GETAMOUNTINCURRENCY(RS.ID,@CURRENCYID) as decimal(20,5)) - cast(coalesce(WO.AMOUNT, 0) as decimal(20,5))) as money) as AMOUNT,
R.TRANSACTIONTYPECODE as TRANSACTIONTYPECODE,
RS.APPLICATIONCODE as APPLICATIONCODE,
RS.TYPECODE as TYPECODE,
RS.DESIGNATIONID as DESIGNATIONID
from
dbo.CORPORATESTRUCTURESELECTION CSS
inner join dbo.REVENUE R on CSS.SELECTEDID = R.CONSTITUENTID
inner join (select distinct REVENUEID from dbo.UFN_SITEACCESSABLE_REVENUESPLITID_FORUSER(@CURRENTAPPUSERID)) SITEFILTER on SITEFILTER.REVENUEID = R.ID
inner join dbo.REVENUESPLIT RS on RS.REVENUEID = R.ID
left join
(select
INSTALLMENTSPLIT.PLEDGEID,
INSTALLMENTSPLIT.DESIGNATIONID,
sum(coalesce(dbo.UFN_INSTALLMENTSPLITWRITEOFF_GETAMOUNTINCURRENCY(INSTALLMENTSPLITWRITEOFF.ID,@CURRENCYID),0)) AMOUNT
from
dbo.INSTALLMENTSPLITWRITEOFF
inner join
dbo.INSTALLMENTSPLIT
on
INSTALLMENTSPLIT.ID = INSTALLMENTSPLITWRITEOFF.INSTALLMENTSPLITID
group by
INSTALLMENTSPLIT.PLEDGEID, INSTALLMENTSPLIT.DESIGNATIONID) WO
on
WO.PLEDGEID = R.ID and WO.DESIGNATIONID = RS.DESIGNATIONID
left join
dbo.V_PLANNEDGIFTREVENUE_WITHADDITIONS PGR on PGR.REVENUEID = R.ID
left join
dbo.PLANNEDGIFT PG on PG.ID = PGR.PLANNEDGIFTID
cross apply dbo.UFN_CORPORATION_GETFILTERDATES(@CURRENTAPPUSERID) DF
where
((DF.STARTDATE is null or DF.STARTDATE <= R.DATE)
and
(DF.ENDDATE is null or DF.ENDDATE >= R.DATE)) and
CSS.APPUSERID = @CURRENTAPPUSERID and
CSS.ROOTID = @ROOTID
group by CSS.SELECTEDID, R.ID, RS.ID, R.TRANSACTIONTYPECODE, RS.APPLICATIONCODE, RS.TYPECODE, RS.DESIGNATIONID;