USP_DATAFORMTEMPLATE_EDITLOAD_TRANSFERSTUDENT
The load procedure used by the edit dataform template "Transfer Student Data Form"
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | nvarchar(73) | 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. |
@STUDENTCOURSEID | uniqueidentifier | INOUT | |
@NAME | nvarchar(200) | INOUT | Student |
@GRADELEVEL | nvarchar(100) | INOUT | Grade level |
@COURSEID | uniqueidentifier | INOUT | Course |
@CLASSID | uniqueidentifier | INOUT | |
@CLASS | nvarchar(300) | INOUT | Class |
@ACADEMICYEAR | nvarchar(100) | INOUT | Academic year |
@TRANSFERDATE | date | INOUT | Transfer date |
@TRANSFERTERMID | uniqueidentifier | INOUT | Transfer starting in |
@TRANSFERTO_CLASSID | uniqueidentifier | INOUT | Transfer to |
@CLASS_STARTTERMID | uniqueidentifier | INOUT | |
@EXCEEDTARGETCLASSSIZE | bit | INOUT | Exceed target class size |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_TRANSFERSTUDENT(
@ID nvarchar(73),
@DATALOADED bit = 0 output,
@TSLONG bigint = 0 output,
@STUDENTCOURSEID uniqueidentifier = null output,
@NAME nvarchar(200) = null output,
@GRADELEVEL nvarchar(100) = null output,
@COURSEID uniqueidentifier = null output,
@CLASSID uniqueidentifier = null output,
@CLASS nvarchar(300) = null output,
@ACADEMICYEAR nvarchar(100) = null output,
@TRANSFERDATE date = null output,
@TRANSFERTERMID uniqueidentifier = null output,
@TRANSFERTO_CLASSID uniqueidentifier = null output,
@CLASS_STARTTERMID uniqueidentifier = null output,
@EXCEEDTARGETCLASSSIZE bit = null output
)
as
set nocount on;
declare @STUDENTID uniqueidentifier
select
@CLASSID = cast(substring(@ID,1,36) as uniqueidentifier),
@STUDENTID = cast(substring(@ID,38,36) as uniqueidentifier)
select
@DATALOADED = 1,
@STUDENTCOURSEID = STUDENTCOURSE.ID,
@NAME = CONSTITUENT.NAME,
@GRADELEVEL = dbo.UFN_CLASS_GETSTUDENTGRADELEVELSTRING(@CLASSID, STUDENTCOURSE.ID),
@COURSEID = COURSE.ID,
@CLASS = COURSE.[COURSEID] + ' - ' + CLASS.[SECTION],
@ACADEMICYEAR = ACADEMICYEARNAMECODE.DESCRIPTION,
@TRANSFERDATE = getdate(),
@CLASS_STARTTERMID = TERM.ID
from dbo.CLASS
inner join dbo.COURSE on CLASS.COURSEID = COURSE.ID
inner join dbo.ACADEMICYEAR on COURSE.SCHOOLID = ACADEMICYEAR.SCHOOLID
and ACADEMICYEAR.STARTDATE <= CLASS.STARTDATE
and ACADEMICYEAR.ENDDATE >= CLASS.ENDDATE
inner join dbo.ACADEMICYEARNAMECODE on ACADEMICYEAR.ACADEMICYEARNAMECODEID = ACADEMICYEARNAMECODE.ID
inner join dbo.CLASSMEETINGGROUP on CLASS.ID = CLASSMEETINGGROUP.CLASSID
inner join dbo.SESSION on ACADEMICYEAR.ID = SESSION.ACADEMICYEARID
inner join dbo.TERM on SESSION.ID = TERM.SESSIONID
and CLASSMEETINGGROUP.STARTDATE = TERM.STARTDATE
and CLASSMEETINGGROUP.ENDDATE = TERM.ENDDATE
inner join dbo.STUDENTCLASSMEETINGGROUP on CLASSMEETINGGROUP.ID = STUDENTCLASSMEETINGGROUP.CLASSMEETINGGROUPID
inner join dbo.STUDENTCOURSE on STUDENTCLASSMEETINGGROUP.STUDENTCOURSEID = STUDENTCOURSE.ID
inner join dbo.CONSTITUENT on STUDENTCOURSE.STUDENTID = CONSTITUENT.ID
where CLASS.ID = @CLASSID
and STUDENTCOURSE.STUDENTID = @STUDENTID
return 0;