USP_DATAFORMTEMPLATE_EDITLOAD_CLASS_MEETING_TEMPLATE_SINGLE

The load procedure used by the edit dataform template "Class Meeting Template Edit Form Single"

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter used to load the fields defined on the form.
@DATALOADED bit INOUT Output parameter indicating whether or not data was actually loaded.
@TSLONG bigint INOUT Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record.
@HEADER nvarchar(200) INOUT
@PATTERNVISIBLE bit INOUT
@TIMETABLEID uniqueidentifier INOUT
@STARTTIME UDT_HOURMINUTE INOUT Start time
@ENDTIME UDT_HOURMINUTE INOUT End time
@CYCLEDAYID uniqueidentifier INOUT Cycle day
@TIMETABLEDAYPERIODID uniqueidentifier INOUT Starting in period
@LENGTHINPERIODS int INOUT Length in periods
@CLASSID uniqueidentifier INOUT

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_CLASS_MEETING_TEMPLATE_SINGLE
(
    @ID uniqueidentifier,
    @DATALOADED bit = 0 output,
    @TSLONG bigint = 0 output,
    @HEADER nvarchar(200) = null output,
    @PATTERNVISIBLE bit = null output,
    @TIMETABLEID uniqueidentifier = null output,
    @STARTTIME dbo.UDT_HOURMINUTE = null output,
    @ENDTIME dbo.UDT_HOURMINUTE = null output,
    @CYCLEDAYID uniqueidentifier = null output,
    @TIMETABLEDAYPERIODID uniqueidentifier = null output,
    @LENGTHINPERIODS int = null output,
    @CLASSID uniqueidentifier = null output
)
as
    set nocount on

    -- be sure to set these, in case the select returns no rows

    set @DATALOADED = 0
    set @TSLONG = 0

    select
        @DATALOADED = 1,
        @TSLONG = CLASS.TSLONG,
        @HEADER = COURSE.[COURSEID] + ' - ' + CLASS.[SECTION] + ', ' + CYCLEDAY.DAY + ', ' 
            + dbo.UFN_HOURMINUTE_DISPLAYTIME(CLASSMEETINGTEMPLATE.STARTTIME) + ' - '
            + dbo.UFN_HOURMINUTE_DISPLAYTIME(CLASSMEETINGTEMPLATE.ENDTIME),
        @TIMETABLEID = (select TIMETABLE.ID
            from dbo.TIMETABLE
                inner join dbo.SESSION on TIMETABLE.ID = SESSION.TIMETABLEID
            where SESSION.ID = dbo.UFN_SESSION_GET_FORSCHOOL_BYDATE(COURSE.SCHOOLID, CLASS.STARTDATE, CLASS.ENDDATE)),
        @STARTTIME = STARTTIME,
        @ENDTIME = ENDTIME,
        @CYCLEDAYID = CYCLEDAYID,
        @TIMETABLEDAYPERIODID = TIMETABLEDAYPERIODID,
        @LENGTHINPERIODS = LENGTHINPERIODS,
        @CLASSID = CLASS.ID
    from dbo.CLASSMEETINGTEMPLATE
        inner join dbo.CLASSMEETINGGROUP on CLASSMEETINGTEMPLATE.CLASSMEETINGGROUPID = CLASSMEETINGGROUP.ID
        inner join dbo.CLASS on CLASS.ID = CLASSMEETINGGROUP.CLASSID
        inner join dbo.COURSE on COURSE.ID = CLASS.COURSEID
        inner join dbo.CYCLEDAY on CLASSMEETINGTEMPLATE.CYCLEDAYID = CYCLEDAY.ID
    where CLASSMEETINGTEMPLATE.ID = @ID

    select
        @PATTERNVISIBLE = case when TIMETABLE.SCHEDULETIMECODE = 0 then 1 else 0 end
    from dbo.TIMETABLE where ID = @TIMETABLEID