USP_DATALIST_CAMPAIGNPLANNEDGIFTS
List of planned gifts with a designation associated with a campaign
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CAMPAIGNID | uniqueidentifier | IN | Input parameter indicating the context ID for the data list. |
@STATUSCODE | tinyint | IN | Status |
@VEHICLECODE | tinyint | IN | Vehicle |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
@SITEFILTERMODE | tinyint | IN | Sites |
@SITESSELECTED | xml | IN | |
@SECURITYFEATUREID | uniqueidentifier | IN | Input parameter indicating the ID of the feature to use for site security checking. |
@SECURITYFEATURETYPE | tinyint | IN | Input parameter indicating the type of the feature to use for site security checking. |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_CAMPAIGNPLANNEDGIFTS
(
@CAMPAIGNID uniqueidentifier,
@STATUSCODE tinyint = null,
@VEHICLECODE tinyint = null,
@CURRENTAPPUSERID uniqueidentifier = null,
@SITEFILTERMODE tinyint = 0,
@SITESSELECTED xml = null,
@SECURITYFEATUREID uniqueidentifier = null,
@SECURITYFEATURETYPE tinyint = null
)
as
set nocount on;
select distinct PG.ID,
CONSTITUENT.NAME PROSPECTNAME,
[PLAN].NAME PLANNAME,
PG.VEHICLE,
PG.STATUS,
dbo.UFN_PLANNEDGIFT_GETSITELIST(PG.ID) SITES,
dbo.UFN_PLANNEDGIFT_GETTOTALAMOUNT(PG.ID, 3, PG.BASECURRENCYID) GIFTAMOUNT,
PG.BASECURRENCYID
from dbo.PLANNEDGIFT PG
inner join dbo.CONSTITUENT on PG.CONSTITUENTID = CONSTITUENT.ID
left join dbo.PLANNEDGIFTDESIGNATION PGD on PGD.PLANNEDGIFTID = PG.ID
left join dbo.PLANNEDGIFTDESIGNATIONCAMPAIGN PGDCAMPAIGN on PGDCAMPAIGN.PLANNEDGIFTDESIGNATIONID = PGD.ID
left join dbo.PLANNEDGIFTADDITION PGA on PG.ID = PGA.PLANNEDGIFTID
left join dbo.PLANNEDGIFTADDITIONDESIGNATION PGAD on PGAD.PLANNEDGIFTADDITIONID = PGA.ID
left join dbo.PLANNEDGIFTADDITIONDESIGNATIONCAMPAIGN PGADCAMPAIGN on PGADCAMPAIGN.PLANNEDGIFTADDITIONDESIGNATIONID = PGAD.ID
left join dbo.PROSPECTPLAN [PLAN] on PG.PROSPECTPLANID = [PLAN].ID
where
(PGDCAMPAIGN.CAMPAIGNID = @CAMPAIGNID or PGADCAMPAIGN.CAMPAIGNID = @CAMPAIGNID) and
(@VEHICLECODE is null or PG.VEHICLECODE = @VEHICLECODE) and
(@STATUSCODE is null or PG.STATUSCODE = @STATUSCODE) and
(
select
count(*)
from
dbo.UFN_SITEID_MAPFROM_PLANNEDGIFTID(PG.ID) as PLANNEDGIFTSITE
where
(dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 or exists (select 1 from dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,@SECURITYFEATUREID,@SECURITYFEATURETYPE) where SITEID=[PLANNEDGIFTSITE].[SITEID] or (SITEID is null and [PLANNEDGIFTSITE].[SITEID] is null)))
) > 0 and
(
@SITEFILTERMODE = 0
or PG.ID in (
select
PLANNEDGIFTSITE.PLANNEDGIFTID
from
dbo.UFN_SITE_BUILDDATALISTSITEFILTER (@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED) as SITEFILTER
inner join dbo.PLANNEDGIFTSITE on PLANNEDGIFTSITE.SITEID = SITEFILTER.SITEID
)
)