USP_SIMPLEDATALIST_STUDENTCLASSTERM
List of terms the specified student is enrolled in for the specified student course record.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@STUDENTCOURSEID | uniqueidentifier | IN | STUDENTCOURSEID |
@CLASSID | uniqueidentifier | IN | CLASSID |
@FILTER_WITHDRAWALDATE | bit | IN | FILTER_WITHDRAWALDATE |
Definition
Copy
CREATE procedure dbo.USP_SIMPLEDATALIST_STUDENTCLASSTERM
(
@STUDENTCOURSEID uniqueidentifier = null,
@CLASSID uniqueidentifier = null,
@FILTER_WITHDRAWALDATE bit = null
)
as
declare @CURRENTDATE datetime = getdate()
select
TERM.ID as VALUE,
TERMNAMECODE.DESCRIPTION as LABEL
from dbo.STUDENTCOURSE
inner join dbo.STUDENTCLASSMEETINGGROUP on STUDENTCOURSE.ID = STUDENTCLASSMEETINGGROUP.STUDENTCOURSEID
inner join dbo.CLASSMEETINGGROUP on STUDENTCLASSMEETINGGROUP.CLASSMEETINGGROUPID = CLASSMEETINGGROUP.ID
inner join dbo.COURSE on STUDENTCOURSE.COURSEID = COURSE.ID
inner join dbo.ACADEMICYEAR on ACADEMICYEAR.SCHOOLID = COURSE.SCHOOLID
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
and (
@FILTER_WITHDRAWALDATE is null
or @FILTER_WITHDRAWALDATE = 0
or TERM.WITHDRAWALDATE < @CURRENTDATE
)
inner join dbo.TERMNAMECODE on TERM.TERMNAMECODEID = TERMNAMECODE.ID
where STUDENTCOURSE.ID = @STUDENTCOURSEID
and STUDENTCLASSMEETINGGROUP.STATUSCODE = 0 and
(@CLASSID is null or @CLASSID = CLASSMEETINGGROUP.CLASSID)
group by TERM.ID, TERMNAMECODE.DESCRIPTION, TERM.STARTDATE
order by TERM.STARTDATE