Put a warning message on record producer

dfry123
Mega Expert

Is there a way to put a warning message on a record producer (Either when first going to the form or after submitting) that only shows up after a certain time?

I need to put a warning up that shows up only during the hours of 5 PM - 8 AM.

Thank You!

1 ACCEPTED SOLUTION

rob_pastore
ServiceNow Employee
ServiceNow Employee

oops, i think i screwed you up earlier.  



looking at the error it says that it doesn't recognize the function isInSchedule('string') - becasue that function requires a date object not a string.   i told you getNow would be an object and that's where i messed you up.



put this back in



var schedTime = new GlideDateTime(gs.nowDateTime());      


View solution in original post

28 REPLIES 28

rob_pastore
ServiceNow Employee
ServiceNow Employee

Dates can be a bit of a pain, if you have users in different timezones.   There are different functions to handle that.



I just thought of something else, what about weekends?   If you want the message to come up on weekends as well it may be easier to create a schedule.



Then you can use the isInSchedule() function.


looking at this, with the time spanning 2 days (evening into morning), i would probably suggest going with the schedule.


dfry123
Mega Expert

Thanks for the reply! This is the first time ive used schedules... so I may be doing something wrong. Please see what I have set-up below. No matter what time I set   the schedule to be free the message after hours still shows.




Script within record producer:




var schedRec = new GlideRecord('cmn_schedule');              


schedRec.get('name','Research Request');      


 


var sched = new GlideSchedule(schedRec.sys_id);              


 


var schedTime = new GlideDateTime(gs.nowDateTime());                      


 


gs.log('Time 1: ' + schedTime);


 


if (sched.isInSchedule(schedTime, 'US/Eastern')) {  


 


gs.addInfoMessage("in hours ");


}  


else {  


gs.addInfoMessage("after hours"); 20.}  






------------------------



Screen shot of schedule:






find_real_file.png


rob_pastore
ServiceNow Employee
ServiceNow Employee

Can you post a screenshot after selecting 'show scheduled' in related link?


dfry123
Mega Expert

find_real_file.png


rob_pastore
ServiceNow Employee
ServiceNow Employee

Actually. Out of Box you should have an 8-5 weekdays schedule.   (along with a version that accounts for weekeds and another for holidays)



I would use this one, and reverse the logic.



If it's inside the schedule - no message; if it's outside - message.