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