UFN_CLASSMEETINGTEMPLATE_OVERLAP

Validates that the specified class meeting template does not overlap create an overlap.

Return

Return Type
bit

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN
@CLASSMEETINGGROUPID uniqueidentifier IN
@CYCLEDAYID uniqueidentifier IN
@STARTTIME UDT_HOURMINUTE IN
@ENDTIME UDT_HOURMINUTE IN

Definition

Copy


create function dbo.UFN_CLASSMEETINGTEMPLATE_OVERLAP
(
    @ID uniqueidentifier,
    @CLASSMEETINGGROUPID uniqueidentifier,
    @CYCLEDAYID uniqueidentifier,
    @STARTTIME dbo.UDT_HOURMINUTE,
    @ENDTIME dbo.UDT_HOURMINUTE
)
returns bit
as begin
    declare @RETVAL bit = 0

    if exists(
            select CLASSMEETINGTEMPLATE.ID 
            from dbo.CLASSMEETINGTEMPLATE
            where (CLASSMEETINGTEMPLATE.ID <> @ID) and 
                  (CLASSMEETINGTEMPLATE.CLASSMEETINGGROUPID = @CLASSMEETINGGROUPID) and
                  (CLASSMEETINGTEMPLATE.CYCLEDAYID = @CYCLEDAYID) and
                  not (CLASSMEETINGTEMPLATE.ENDTIME <= @STARTTIME or CLASSMEETINGTEMPLATE.STARTTIME >= @ENDTIME)
        )
        set @RETVAL = 1;

    return @RETVAL;
end