UFN_TIMETABLEDAYPERIOD_OVERLAP
Check to see if dates overlap an existing period for a given day
Return
Return Type |
---|
bit |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@TIMETABLEDAYID | uniqueidentifier | IN | |
@STARTTIME | UDT_HOURMINUTE | IN | |
@ENDTIME | UDT_HOURMINUTE | IN |
Definition
Copy
CREATE function dbo.UFN_TIMETABLEDAYPERIOD_OVERLAP
(
@ID uniqueidentifier,
@TIMETABLEDAYID uniqueidentifier,
@STARTTIME dbo.UDT_HOURMINUTE,
@ENDTIME dbo.UDT_HOURMINUTE
)
returns BIT
as begin
if exists(select TIMETABLEDAYPERIOD.ID from dbo.TIMETABLEDAYPERIOD
inner join TIMETABLEDAY on TIMETABLEDAY.ID = TIMETABLEDAYPERIOD.TIMETABLEDAYID
where TIMETABLEDAY.ID = @TIMETABLEDAYID and TIMETABLEDAYPERIOD.ID <> @ID and
((TIMETABLEDAYPERIOD.STARTTIME > @STARTTIME and TIMETABLEDAYPERIOD.STARTTIME < @ENDTIME)
or (TIMETABLEDAYPERIOD.ENDTIME > @STARTTIME and TIMETABLEDAYPERIOD.ENDTIME < @ENDTIME)
or TIMETABLEDAYPERIOD.STARTTIME = @STARTTIME or TIMETABLEDAYPERIOD.ENDTIME = @ENDTIME))
return 1;
return 0;
end