UFN_MEMBERSHIPPROGRAMCONTRIBUTIONREVENUE_GETAPPLICATIONSELECTIONRESULTS
Return
Return Type |
---|
table |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@MEMBERSHIPPROGRAMID | uniqueidentifier | IN | |
@APPLICATIONSELECTIONID | uniqueidentifier | IN | |
@LASTRUNONDATE | datetime | IN | |
@PROCESSDATE | datetime | IN | |
@MINIMUMDATERANGE | datetime | IN | |
@ORGANIZATIONCURRENCYID | uniqueidentifier | IN | |
@PROGRAMBASECURRENCYID | uniqueidentifier | IN | |
@PROGRAMBASECURRENCYDIGITS | tinyint | IN | |
@PROGRAMBASECURRENCYROUNDINGTYPECODE | tinyint | IN |
Definition
Copy
create function dbo.UFN_MEMBERSHIPPROGRAMCONTRIBUTIONREVENUE_GETAPPLICATIONSELECTIONRESULTS (
@MEMBERSHIPPROGRAMID uniqueidentifier,
@APPLICATIONSELECTIONID uniqueidentifier,
@LASTRUNONDATE datetime,
@PROCESSDATE datetime,
@MINIMUMDATERANGE datetime,
@ORGANIZATIONCURRENCYID uniqueidentifier,
@PROGRAMBASECURRENCYID uniqueidentifier,
@PROGRAMBASECURRENCYDIGITS tinyint,
@PROGRAMBASECURRENCYROUNDINGTYPECODE tinyint
)
returns table
as return
select
REVENUESPLIT_INCURRENCY.CONSTITUENTID,
FINANCIALTRANSACTION.ID as FINANCIALTRANSACTIONID,
REVENUESPLIT_INCURRENCY.ID as FINANCIALTRANSACTIONLINEITEMID,
REVENUESPLIT_INCURRENCY.AMOUNTINCURRENCY, --This amount does not factor in discounts since Altru cannot currently make use of this application selection filter option.
FINANCIALTRANSACTION.TYPECODE as TRANSACTIONTYPECODE,
cast(FINANCIALTRANSACTION.DATE as datetime) as [DATE],
REVENUESPLIT_INCURRENCY.APPLICATIONCODE,
REVENUESPLIT_INCURRENCY.DESIGNATIONID
from dbo.UFN_IDSETREADER_GETRESULTS_GUID(@APPLICATIONSELECTIONID) as APPLICATIONSELECTIONRESULTS
inner join dbo.UFN_REVENUESPLIT_GETAMOUNTINCURRENCY_BULK(
@PROGRAMBASECURRENCYID,
@ORGANIZATIONCURRENCYID,
@PROGRAMBASECURRENCYDIGITS,
@PROGRAMBASECURRENCYROUNDINGTYPECODE
) as REVENUESPLIT_INCURRENCY on
APPLICATIONSELECTIONRESULTS.ID = REVENUESPLIT_INCURRENCY.ID
inner join dbo.FINANCIALTRANSACTION on
REVENUESPLIT_INCURRENCY.REVENUEID = FINANCIALTRANSACTION.ID
left join dbo.MEMBERSHIPPROGRAMCONTRIBUTIONREVENUE on
MEMBERSHIPPROGRAMCONTRIBUTIONREVENUE.FINANCIALTRANSACTIONLINEITEMID = REVENUESPLIT_INCURRENCY.ID and
MEMBERSHIPPROGRAMCONTRIBUTIONREVENUE.MEMBERSHIPPROGRAMID = @MEMBERSHIPPROGRAMID
where
(FINANCIALTRANSACTION.DATECHANGED >= @LASTRUNONDATE or @LASTRUNONDATE is null) --Since last run
and cast(FINANCIALTRANSACTION.DATE as datetime) between @MINIMUMDATERANGE and @PROCESSDATE --Since the longest term until this process run
and MEMBERSHIPPROGRAMCONTRIBUTIONREVENUE.FINANCIALTRANSACTIONLINEITEMID is null --Not already considered in previous run
and REVENUESPLIT_INCURRENCY.SPLITDELETEDON is null --Deleted splits
--This function does not consider refunds. The selection functionality is not currently enabled for Altru.