USP_EVENTSEATING_SEATEDREGISTRANTS
Returns registrants that are currently seated.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@EVENTID | uniqueidentifier | IN | |
@REPORTUSERID | nvarchar(128) | IN | |
@ALTREPORTUSERID | nvarchar(128) | IN |
Definition
Copy
CREATE procedure dbo.USP_EVENTSEATING_SEATEDREGISTRANTS
(
@EVENTID uniqueidentifier,
@REPORTUSERID nvarchar(128) = null,
@ALTREPORTUSERID nvarchar(128) = null
)
with execute as caller
as
set nocount on;
declare @CURRENTAPPUSERID uniqueidentifier;
declare @ISADMIN bit;
declare @APPUSER_IN_NONRACROLE bit;
declare @APPUSER_IN_NOSECGROUPROLE bit;
set @CURRENTAPPUSERID = dbo.UFN_APPUSER_GETREPORTAPPUSERID(@REPORTUSERID, @ALTREPORTUSERID);
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);
select
dbo.UFN_REGISTRANT_GETNAMEDIRECTORYSTYLE(REGISTRANT.ID) as REGISTRANTNAME,
case SUBSECTIONTYPECODE when 2 then
EVENTSEATINGSUBSECTION.NAME
else
EVENTSEATINGSECTION.NAME
end as SECTIONNAME,
EVENTSEATINGSUBSECTION.NAME as SUBSECTIONNAME,
EVENTSEATINGSEAT.NAME as SEATNAME,
dbo.UFN_REGISTRANT_GETHOSTNAMEDIRECTORYSTYLE(REGISTRANT.ID, GUESTOFREGISTRANTID) as HOSTNAME,
case SUBSECTIONTYPECODE when 0 then
'Table'
when 1 then
'Row'
else
'Section'
end as SUBSECTIONTYPETEXT,
SUBSECTIONTYPECODE AS SUBSECTIONTYPECODE,
case SUBSECTIONTYPECODE when 2 then
EVENTSEATINGSUBSECTION.SEQUENCE
else EVENTSEATINGSECTION.SEQUENCE
end as [SECTIONSORT],
EVENTSEATINGSUBSECTION.SEQUENCE as [SUBSECTIONSORT],
EVENTSEATINGSEAT.SEQUENCE as [SEATSORT],
case
when REGISTRANT.CONSTITUENTID is null then dbo.UFN_REGISTRANT_GETHOSTNAMEDIRECTORYSTYLE(REGISTRANT.ID, GUESTOFREGISTRANTID)
else dbo.UFN_REGISTRANT_GETNAMEDIRECTORYSTYLE(REGISTRANT.ID)
end as [REGISTRANTSORT] --Sort unnamed guests with their hosts
from
dbo.REGISTRANT
inner join dbo.EVENTSEATINGSEAT on EVENTSEATINGSEAT.REGISTRANTID = REGISTRANT.ID
inner join dbo.EVENTSEATINGSUBSECTION on EVENTSEATINGSUBSECTION.ID = EVENTSEATINGSEAT.EVENTSEATINGSUBSECTIONID
inner join dbo.EVENTSEATINGSECTION on EVENTSEATINGSECTION.ID = EVENTSEATINGSUBSECTION.EVENTSEATINGSECTIONID
inner join dbo.EVENTSEATING on EVENTSEATING.ID = EVENTSEATINGSECTION.EVENTSEATINGID
where
REGISTRANT.EVENTID = @EVENTID
and (@ISADMIN = 1 or
@APPUSER_IN_NONRACROLE = 1 or
dbo.UFN_SECURITY_APPUSER_GRANTED_CONSTITID_FORREPORT(@CURRENTAPPUSERID, REGISTRANT.CONSTITUENTID, @APPUSER_IN_NOSECGROUPROLE) = 1)
order by
SECTIONSORT, SUBSECTIONSORT, SEATSORT;