UFN_COURSE_SESSIONDATES_VALID

Verifies that the dates for a course restriction or grading record are valid for a session in the course's school.

Return

Return Type
bit

Parameters

Parameter Parameter Type Mode Description
@COURSEID uniqueidentifier IN
@STARTDATE date IN
@ENDDATE date IN

Definition

Copy


create function dbo.UFN_COURSE_SESSIONDATES_VALID(
    @COURSEID uniqueidentifier,
    @STARTDATE date,
    @ENDDATE date
)
returns bit
with execute as caller
as begin

    declare @retval bit = 0

    -- currently checking *exact* session dates; 

    -- so no longer using UFN_SESSION_GET_FORSCHOOL_BYDATE


    if (select
            SESSION.ID
        from 
            dbo.COURSE
            join dbo.ACADEMICYEAR   on ACADEMICYEAR.SCHOOLID = COURSE.SCHOOLID
            join dbo.SESSION        on SESSION.ACADEMICYEARID = ACADEMICYEAR.ID
            join dbo.TERM           on TERM.SESSIONID = SESSION.ID
        where
            COURSE.ID = @COURSEID
        group by 
            SESSION.ID
        having
            MIN(TERM.STARTDATE) = @STARTDATE
            and MAX(TERM.ENDDATE) = @ENDDATE) is not null
        set @retval = 1;

    return @retval
end