USP_DATALIST_EVENTMOBILE
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@STARTDATE | date | IN | |
@ENDDATE | date | IN |
Definition
Copy
create procedure dbo.USP_DATALIST_EVENTMOBILE
(
@STARTDATE date = null,
@ENDDATE date = null
)
as
set nocount on;
declare @STARTDATEWITHOFFSET datetimeoffset;
declare @ENDDATEWITHOFFSET datetimeoffset;
if @STARTDATE is null
set @STARTDATEWITHOFFSET = dbo.UFN_TIMEZONEENTRY_GETSYSTEMDEFAULTDATEWITHTIMEOFFSET(dbo.UFN_DATE_GETEARLIESTTIME(getdate()), 0);
else
set @STARTDATEWITHOFFSET = dbo.UFN_TIMEZONEENTRY_GETSYSTEMDEFAULTDATEWITHTIMEOFFSET(dbo.UFN_DATE_GETEARLIESTTIME(@STARTDATE), 0);
if @ENDDATE is null
set @ENDDATEWITHOFFSET = dbo.UFN_TIMEZONEENTRY_GETSYSTEMDEFAULTDATEWITHTIMEOFFSET(dbo.UFN_DATE_GETLATESTTIME(@STARTDATEWITHOFFSET), 0);
else
set @ENDDATEWITHOFFSET = dbo.UFN_TIMEZONEENTRY_GETSYSTEMDEFAULTDATEWITHTIMEOFFSET(dbo.UFN_DATE_GETLATESTTIME(@ENDDATE), 0);
select
EVENT.ID,
EVENT.NAME,
EVENT.STARTDATETIME,
EVENT.STARTTIME,
coalesce(
(
select count(1) from dbo.REGISTRANT
left join dbo.SALESORDERITEMTICKETREGISTRANT on REGISTRANT.ID = SALESORDERITEMTICKETREGISTRANT.REGISTRANTID
left join dbo.SALESORDERITEM on SALESORDERITEMTICKETREGISTRANT.SALESORDERITEMTICKETID = SALESORDERITEM.ID
where
REGISTRANT.EVENTID = EVENT.ID and
REGISTRANT.WILLNOTATTEND = 0
),0
)
from dbo.EVENT
left join dbo.PROGRAM
on PROGRAM.ID = EVENT.PROGRAMID
where
EVENT.STARTDATETIMEWITHOFFSET between
@STARTDATEWITHOFFSET and @ENDDATEWITHOFFSET
and
(
(PROGRAM.ISPREREGISTERED = 1 and PROGRAM.ISACTIVE = 1)
or
EVENT.PROGRAMID is null
)
order by EVENT.STARTTIME asc, EVENT.NAME asc