need help with isinSchedule()
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-14-2017 10:46 AM
Hi Guys,
So I've been introduced to Schedules and have been working on it for last couple of days.
Here's the code am trying to run in a scheduled job that would submit a catalog item if the date in in schedule '8-5 weekdays excluding holidays'. Each time I pass a weekday or any day for that matter, it goes in the else clause. Any thoughts?
*******************
| var schedRec = new GlideRecord('cmn_schedule'); | // Query table for schedule |
| schedRec.get('name','8-5 weekdays excluding holidays'); | // Get the schedule name |
| var sched = new GlideSchedule(schedRec.sys_id); | // Create variable schedule |
| var schedTime = new GlideDateTime("09-14-2017 08:30:00"); | // Create variable with current date/time |
if (sched.isInSchedule(schedTime))
{
gs.log('In schedule');
}
else
{
gs.log('not in schedule');
}
********************
From what I have understood, here the date passed is a weekday and hence should print 'In schedule' in the logs. But its not. Kindly advise.
Thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-22-2023 02:27 AM
Hello @hvrdhn88, @Community Alums, @Michael Kaufman
Is there any OOTB On-call API available which gives "Is there any schedule at the time?"
Thanks.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-08-2026 06:56 AM
I finally got solution for it,
The most possible root cause is because of 'GlideDateTime()', By passing the date/time directly to the 'GlideDateTime' API results in causing the error 'Not in schedule' though it's in the schedule is in scheduled hours.
Use the below code it will work 100%.
var now = new GlideDateTime();
now.setDisplayValue(gs.nowDateTime());
var schedRec = new GlideRecord('cmn_schedule');
schedRec.get('name', 'Your Schedule Name');
var schedule = new GlideSchedule(schedRec.sys_id);
gs.print(schedule.isValid());
gs.print(schedule.isInSchedule(now));