USP_DATALIST_EVENTPROFILEREPORT_NONREPSONDER
Retrieves the constituents that did not respond to an event invite.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@EVENTID | uniqueidentifier | IN | Event |
@ISVISIBLE | bit | IN | Visible |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_EVENTPROFILEREPORT_NONREPSONDER
(
@EVENTID uniqueidentifier,
@ISVISIBLE bit = 1,
@CURRENTAPPUSERID uniqueidentifier
)
as
set nocount on;
if @ISVISIBLE = 1
begin
declare @ISADMIN bit;
declare @APPUSER_IN_NONRACROLE bit;
declare @APPUSER_IN_NOSECGROUPROLE bit;
set @ISADMIN = dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID);
set @APPUSER_IN_NONRACROLE = dbo.UFN_SECURITY_APPUSER_IN_NONRACROLE(@CURRENTAPPUSERID);
set @APPUSER_IN_NOSECGROUPROLE = dbo.UFN_SECURITY_APPUSER_IN_NO_SECURITY_GROUP_ROLE(@CURRENTAPPUSERID);
with INVITEES as
(
select
EVENTID,
CONSTITUENTID,
DECLINED
from
(
select
ROW_NUMBER() over (partition by INVITEE.EVENTID, INVITEE.CONSTITUENTID order by INVITEE.INVITATIONSENTON desc) as ROWNUMBER,
INVITEE.EVENTID,
INVITEE.CONSTITUENTID,
INVITEE.DECLINED
from dbo.INVITEE
) as INVITEELIST
where INVITEELIST.ROWNUMBER = 1
)
select distinct
INVITEES.CONSTITUENTID as CONSTITUENTID,
NF.NAME,
'http://www.blackbaud.com/CONSTITUENTID?CONSTITUENTID='+convert(nvarchar(36),INVITEES.CONSTITUENTID) as CONSTITUENTLINK,
PHONE.NUMBER as PHONENUMBER,
PHONETYPECODE.DESCRIPTION as PHONENUMBERTYPE,
EMAILADDRESS.EMAILADDRESS as EMAILADDRESS,
EMAILADDRESSTYPECODE.DESCRIPTION as EMAILADDRESSTYPE
from INVITEES
left join dbo.REGISTRANT on REGISTRANT.CONSTITUENTID = INVITEES.CONSTITUENTID and REGISTRANT.EVENTID = @EVENTID
left join dbo.PHONE on PHONE.CONSTITUENTID = INVITEES.CONSTITUENTID and PHONE.ISPRIMARY = 1
left join dbo.PHONETYPECODE on PHONETYPECODE.ID = PHONE.PHONETYPECODEID
left join dbo.EMAILADDRESS on EMAILADDRESS.CONSTITUENTID = INVITEES.CONSTITUENTID and EMAILADDRESS.ISPRIMARY = 1
left join dbo.EMAILADDRESSTYPECODE on EMAILADDRESSTYPECODE.ID = EMAILADDRESS.EMAILADDRESSTYPECODEID
cross apply dbo.UFN_CONSTITUENT_DISPLAYNAME(INVITEES.CONSTITUENTID) NF
where
INVITEES.EVENTID = @EVENTID and
INVITEES.DECLINED = 0 and
REGISTRANT.ID is null and
(
@ISADMIN = 1 or
@APPUSER_IN_NONRACROLE = 1 or
dbo.UFN_SECURITY_APPUSER_GRANTED_CONSTITID_FORREPORT(@CURRENTAPPUSERID, INVITEES.CONSTITUENTID, @APPUSER_IN_NOSECGROUPROLE) = 1
);
end