USP_DATALIST_GIFTAIDDISQUALIFICATIONRULES

Returns a list of Gift Aid disqualification rules.

Parameters

Parameter Parameter Type Mode Description
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.
@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.
@SITEFILTERMODE tinyint IN Sites
@SITESSELECTED xml IN

Definition

Copy


                CREATE procedure dbo.USP_DATALIST_GIFTAIDDISQUALIFICATIONRULES
                (
                    @CURRENTAPPUSERID uniqueidentifier = null,
                    @SECURITYFEATUREID uniqueidentifier = null,
                    @SECURITYFEATURETYPE tinyint = null,
                    @SITEFILTERMODE tinyint = 0,
                    @SITESSELECTED xml = null
                )
                as
                    set nocount on;

                    select
                        GIFTAIDDISQUALIFIEDBYAPPEAL.ID,
                        'Appeal' as BASEDON,
                        APPEAL.NAME as SELECTEDCRITERIA,
                        SITE.NAME as SITE
                    from
                        dbo.GIFTAIDDISQUALIFIEDBYAPPEAL
                        inner join dbo.APPEAL on APPEAL.ID = GIFTAIDDISQUALIFIEDBYAPPEAL.ID
                        left join SITE on SITE.ID = APPEAL.SITEID
                    where
                        dbo.UFN_SITEALLOWEDFORUSER(@CURRENTAPPUSERID, APPEAL.SITEID)=1 and
                            (@SITEFILTERMODE = 0
                                or exists(
                                    select 1
                                    from dbo.UFN_SITE_BUILDDATALISTSITEFILTER (@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED) SITEFILTER
                                    where APPEAL.SITEID = SITEFILTER.SITEID)
                                )

                    UNION ALL

                    select
                        GIFTAIDDISQUALIFIEDBYCAMPAIGN.ID,
                        'Campaign' as BASEDON,
                        CAMPAIGN.NAME as SELECTEDCRITERIA,
                        SITE.NAME as SITE
                    from
                        dbo.GIFTAIDDISQUALIFIEDBYCAMPAIGN
                        inner join dbo.CAMPAIGN on CAMPAIGN.ID = GIFTAIDDISQUALIFIEDBYCAMPAIGN.ID
                        left join dbo.CAMPAIGNSITE on CAMPAIGNSITE.CAMPAIGNID = CAMPAIGN.ID
                        left join SITE on SITE.ID = CAMPAIGNSITE.SITEID
                    where
                        SITE.NAME is null or
                        (select count(*) from dbo.UFN_SITEID_MAPFROM_CAMPAIGNID(CAMPAIGN.ID) as VALIDSITES where (dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 or exists (select 1 from dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,@SECURITYFEATUREID,@SECURITYFEATURETYPE) where SITEID=[VALIDSITES].[SITEID] or (SITEID is null and [VALIDSITES].[SITEID] is null)))) > 0 and
                            (@SITEFILTERMODE = 0
                                or CAMPAIGN.ID in
                                    select CAMPAIGNSITE.CAMPAIGNID
                                    from dbo.UFN_SITE_BUILDDATALISTSITEFILTER (@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED) SITEFILTER
                                        where SITE.ID = SITEFILTER.SITEID) 
                            )

                    UNION ALL

                    select
                        GIFTAIDDISQUALIFIEDBYDESIGNATION.ID,
                        'Designation' as BASEDON,
                        DESIGNATION.NAME as SELECTEDCRITERIA,
                        dbo.UFN_TRANSLATIONFUNCTION_SITE_GETNAME(dbo.UFN_SITEID_MAPFROM_DESIGNATIONID(DESIGNATION.ID)) as SITE
                    from
                        dbo.GIFTAIDDISQUALIFIEDBYDESIGNATION
                        inner join dbo.DESIGNATION on DESIGNATION.ID = GIFTAIDDISQUALIFIEDBYDESIGNATION.ID
                    where
                        dbo.UFN_SITEALLOWEDFORUSER(@CURRENTAPPUSERID, dbo.UFN_SITEID_MAPFROM_DESIGNATIONID(DESIGNATION.ID))=1 and
                            (@SITEFILTERMODE = 0
                                or exists(
                                    select 1
                                    from dbo.UFN_SITE_BUILDDATALISTSITEFILTER (@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED) SITEFILTER
                                    where dbo.UFN_SITEID_MAPFROM_DESIGNATIONID(DESIGNATION.ID) = SITEFILTER.SITEID)
                                )

                    UNION ALL

                    select
                        GIFTAIDDISQUALIFIEDBYEVENT.ID,
                        'Event' as BASEDON,
                        EVENT.NAME as SELECTEDCRITERIA,
                        SITE.NAME as SITE
                    from
                        dbo.GIFTAIDDISQUALIFIEDBYEVENT
                        inner join dbo.EVENT on EVENT.ID = GIFTAIDDISQUALIFIEDBYEVENT.ID
                        left join dbo.EVENTSITE on EVENTSITE.EVENTID = EVENT.ID
                        left join SITE on SITE.ID = EVENTSITE.SITEID
                    where
                        (select count(*) from dbo.UFN_SITEID_MAPFROM_EVENTID(EVENT.ID) as VALIDSITES where (dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 or exists (select 1 from dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,@SECURITYFEATUREID,@SECURITYFEATURETYPE) where SITEID=[VALIDSITES].[SITEID] or (SITEID is null and [VALIDSITES].[SITEID] is null)))) > 0 and
                            (@SITEFILTERMODE = 0
                                or EVENT.ID in
                                    select EVENTSITE.EVENTID
                                    from dbo.UFN_SITE_BUILDDATALISTSITEFILTER (@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED) SITEFILTER
                                        where SITE.ID = SITEFILTER.SITEID)
                        )

                    UNION ALL

                    select
                        GIFTAIDDISQUALIFIEDBYMEMBERSHIPPROGRAM.ID,
                        'Membership program' as BASEDON,
                        MEMBERSHIPPROGRAM.NAME as SELECTEDCRITERIA,
                        SITE.NAME as SITE
                    from
                        dbo.GIFTAIDDISQUALIFIEDBYMEMBERSHIPPROGRAM
                        inner join dbo.MEMBERSHIPPROGRAM on MEMBERSHIPPROGRAM.ID = GIFTAIDDISQUALIFIEDBYMEMBERSHIPPROGRAM.ID
                        left join SITE on SITE.ID = MEMBERSHIPPROGRAM.SITEID
                    where
                        dbo.UFN_SITEALLOWEDFORUSER(@CURRENTAPPUSERID, MEMBERSHIPPROGRAM.SITEID)=1 and
                            (@SITEFILTERMODE = 0
                                or exists(
                                    select 1
                                    from dbo.UFN_SITE_BUILDDATALISTSITEFILTER (@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED) SITEFILTER
                                    where MEMBERSHIPPROGRAM.SITEID = SITEFILTER.SITEID)
                                )

                    order by
                        BASEDON, SELECTEDCRITERIA, SITE