USP_SIMPLEDATALIST_TIMETABLEDAYPERIOD_BYSESSION

Simple list of timetable day period names by session. Orders by start times from first timetable day.

Parameters

Parameter Parameter Type Mode Description
@SESSIONID uniqueidentifier IN

Definition

Copy


CREATE procedure dbo.USP_SIMPLEDATALIST_TIMETABLEDAYPERIOD_BYSESSION
(
    @SESSIONID uniqueidentifier
)
as
select 
    PERIOD as VALUE,
    PERIOD as LABEL
from (select distinct
          (select 
              top 1 STARTTIME
           from 
              dbo.TIMETABLEDAYPERIOD TDP
           inner join dbo.TIMETABLEDAY TD 
              on TD.ID = TDP.TIMETABLEDAYID 
           inner join dbo.CYCLEDAY CD 
              on CD.ID = TD.CYCLEDAYID 
           where 
              TDP.PERIOD = TIMETABLEDAYPERIOD.PERIOD
           order by 
              CYCLEDAY.SEQUENCE) as STARTTIME,
          TIMETABLEDAYPERIOD.PERIOD
      from 
          dbo.TIMETABLEDAYPERIOD
      inner join TIMETABLEDAY 
          on TIMETABLEDAY.ID = TIMETABLEDAYPERIOD.TIMETABLEDAYID
      inner join dbo.CYCLEDAY    
          on CYCLEDAY.ID = TIMETABLEDAY.CYCLEDAYID 
      inner join SESSION 
          on SESSION.TIMETABLEID =  TIMETABLEDAY.TIMETABLEID 
      where 
          SESSION.ID = @SESSIONID) as
order by 
    STARTTIME