USP_DATALIST_REGISTRANTRECOGINITIONTRANSACTIONS
List of transactions made in recognition of registrant.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CONTEXTID | uniqueidentifier | IN | Input parameter indicating the context ID for the data list. |
@TRANSACTIONTYPECODE | tinyint | IN | Transaction type |
@NAME | nvarchar(210) | IN | Donor |
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@SITEFILTERMODE | tinyint | IN | |
@SITESSELECTED | xml | IN | |
@SECURITYFEATUREID | uniqueidentifier | IN | |
@SECURITYFEATURETYPE | tinyint | IN |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_REGISTRANTRECOGINITIONTRANSACTIONS
(
@CONTEXTID uniqueidentifier,
@TRANSACTIONTYPECODE tinyint = null,
@NAME nvarchar(210) = null,
@CURRENTAPPUSERID uniqueidentifier = null,
@SITEFILTERMODE tinyint = 0,
@SITESSELECTED xml = null,
@SECURITYFEATUREID uniqueidentifier = null,
@SECURITYFEATURETYPE tinyint = null
)
as
select R.ID, CDONOR.ID as DONORCONSTITUENTID, CDONOR.NAME,
RS.AMOUNT,
R.[DATE],
R.TRANSACTIONTYPE,
R.LOOKUPID,
RPM.PAYMENTMETHOD,
RS.[TYPE],
RS.APPLICATION
from REGISTRANT RG
join EVENT E on RG.EVENTID = E.ID
join REVENUERECOGNITION RR on RG.CONSTITUENTID = RR.CONSTITUENTID
join REVENUESPLIT RS on RR.REVENUESPLITID = RS.ID
join REVENUE R on RS.REVENUEID = R.ID and E.APPEALID = R.APPEALID and (R.TRANSACTIONTYPECODE = 0 and RS.APPLICATIONCODE in (0, 1, 7, 15, 17) OR R.TRANSACTIONTYPECODE IN (1,2) )
left join REVENUEPAYMENTMETHOD RPM on RPM.REVENUEID = R.ID
left join CONSTITUENT CDONOR on CDONOR.ID = R.CONSTITUENTID
where RG.ID = @CONTEXTID
and (R.TRANSACTIONTYPECODE = @TRANSACTIONTYPECODE or @TRANSACTIONTYPECODE is null)
and (CDONOR.NAME like '%' + @NAME + '%' or @NAME is null)
and (
@SITEFILTERMODE = 0
or (
exists(
select 1 from dbo.UFN_SITEID_MAPFROM_REVENUESPLITID(RS.ID) REVENUESITE
where REVENUESITE.SITEID in (select SITEID from dbo.UFN_SITE_BUILDDATALISTSITEFILTER (@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED))
)
)
)
-- Check site security
and (
exists(
select 1 from dbo.UFN_SITEID_MAPFROM_REVENUESPLITID(RS.ID) REVENUESITE
where (dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 or exists (select 1 from dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,@SECURITYFEATUREID,@SECURITYFEATURETYPE) where SITEID=[REVENUESITE].[SITEID] or (SITEID is null and [REVENUESITE].[SITEID] is null))) )
)
union
select R.ID, CDONOR.ID as DONORCONSTITUENTID, CDONOR.NAME,
RS.AMOUNT,
R.[DATE],
R.TRANSACTIONTYPE,
R.LOOKUPID,
RPM.PAYMENTMETHOD,
RS.[TYPE],
RS.APPLICATION
from REGISTRANT RG
join dbo.EVENT E on RG.EVENTID = E.ID
join REVENUE R on R.CONSTITUENTID = RG.CONSTITUENTID and R.APPEALID = E.APPEALID
join REVENUESPLIT RS on RS.REVENUEID= R.ID and (R.TRANSACTIONTYPECODE = 0 and RS.APPLICATIONCODE in (0, 1, 7, 15, 17) OR R.TRANSACTIONTYPECODE IN (1,2) )
left join REVENUEPAYMENTMETHOD RPM on RPM.REVENUEID = R.ID
left join CONSTITUENT CDONOR on CDONOR.ID = R.CONSTITUENTID
where RG.ID = @CONTEXTID
and (R.TRANSACTIONTYPECODE = @TRANSACTIONTYPECODE or @TRANSACTIONTYPECODE is null)
and (CDONOR.NAME like '%' + @NAME + '%' or @NAME is null)
and (
@SITEFILTERMODE = 0
or (
exists(
select 1 from dbo.UFN_SITEID_MAPFROM_REVENUESPLITID(RS.ID) REVENUESITE
where REVENUESITE.SITEID in (select SITEID from dbo.UFN_SITE_BUILDDATALISTSITEFILTER (@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED))
)
)
)
-- Check site security
and (
exists(
select 1 from dbo.UFN_SITEID_MAPFROM_REVENUESPLITID(RS.ID) REVENUESITE
where (dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 or exists (select 1 from dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,@SECURITYFEATUREID,@SECURITYFEATURETYPE) where SITEID=[REVENUESITE].[SITEID] or (SITEID is null and [REVENUESITE].[SITEID] is null))) )
)