UFN_CLASSMEETINGTEMPLATE_VALIDPERIOD

Validates that the period matches the other record data if not null.

Return

Return Type
bit

Parameters

Parameter Parameter Type Mode Description
@CYCLEDAYID uniqueidentifier IN
@TIMETABLEDAYPERIODID uniqueidentifier IN
@LENGTHINPERIODS int IN
@STARTTIME UDT_HOURMINUTE IN
@ENDTIME UDT_HOURMINUTE IN

Definition

Copy


create function dbo.UFN_CLASSMEETINGTEMPLATE_VALIDPERIOD
(
    @CYCLEDAYID uniqueidentifier,
    @TIMETABLEDAYPERIODID uniqueidentifier,
    @LENGTHINPERIODS int,
    @STARTTIME dbo.UDT_HOURMINUTE,
    @ENDTIME dbo.UDT_HOURMINUTE
)
returns bit
as begin
    declare @RETVAL bit = 0    

    if @TIMETABLEDAYPERIODID is null or 
        (
            exists (
                select 1
                from dbo.UFN_CLASSMEETINGTEMPLATE_GETPERIODTIME(@TIMETABLEDAYPERIODID, @LENGTHINPERIODS) T
                where T.STARTTIME = @STARTTIME
                    and T.ENDTIME = @ENDTIME
            ) and exists (
                select 1
                from dbo.TIMETABLEDAY
                    inner join dbo.TIMETABLEDAYPERIOD on TIMETABLEDAY.ID = TIMETABLEDAYPERIOD.TIMETABLEDAYID
                where TIMETABLEDAYPERIOD.ID = @TIMETABLEDAYPERIODID
                    and TIMETABLEDAY.CYCLEDAYID = @CYCLEDAYID
            )
        )
        set @RETVAL = 1;

    return @RETVAL;
end