- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-18-2025 12:55 AM
Hello All,
if change request is conflict, the add info message not displaying in Service Operational workspace. but it is visible in change request sow view.
Could anyone assist in identifying the cause and suggest a resolution for this issue?
Thanks in advance,
Haribabu
Solved! Go to Solution.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-22-2025 04:44 AM
Hi @Haribabu1 ,
Couple of things
GlideURL and GwtMessage().getMessage api not working on workspace, i have commented that and used top.location.href for workspace view.
Result :
Script for reference, Make sure to test before you use.
function onChange(control, oldValue, newValue, isLoading, isTemplate) {
function getSchedulingConflictMessage() {
var startDateReadOnly = g_form.isReadOnly("", g_form.getControl("start_date"));
var endDateReadOnly = g_form.isReadOnly("", g_form.getControl("end_date"));
if (startDateReadOnly || endDateReadOnly)
return new GwtMessage().getMessage("Scheduling conflict detected. Review the Conflicts form section.");
if (top.location.href.indexOf("now/sow/record/change_request") > -1) {
g_form.addInfoMessage("Scheduling conflict detected. Use the <a href='javascript:void(0);' onclick='openNextAvailableTime()'>Scheduling Assistant</a> to avoid conflicts.");
}
return new GwtMessage().getMessage("Scheduling conflict detected. Use the <a href='javascript:void(0);' onclick='openNextAvailableTime()'>Scheduling Assistant</a> to avoid conflicts.");
}
function showConflictNotification() {
var showConflictMessage = g_scratchpad.show_conflict_message;
if (showConflictMessage.property === "never") return false;
if (showConflictMessage.property === "always") return true;
var showNotification = showConflictMessage.preference;
return showNotification;
}
//We don't want to render the warning and link to the conflict scheduler if we're in 'print' mode
//var gURL = new GlideURL();
// gURL.setFromCurrent();
// var isPrint = !!gURL.getParam("sysparm_media");
//if (!isPrint && newValue === "Conflict" && showConflictNotification()) {
if (newValue === "Conflict" && showConflictNotification()) {
g_form.addWarningMessage(getSchedulingConflictMessage(), "conflict_warn_status");
if (window && window.refreshConflicts)
window.refreshConflicts();
return;
} else if (isLoading || newValue === '')
return;
// Remove the warning message as status is not Conflict.
var chgGlideUI = GlideUI.get();
var messageKey = "warning_" + getSchedulingConflictMessage();
if (!chgGlideUI.messages[messageKey])
return;
delete chgGlideUI.messages[messageKey];
var messageCount = Object.keys(chgGlideUI.messages).length;
if (messageCount === 0)
chgGlideUI.clearOutputMessages();
else {
var msgElement = $("conflict_warn_status");
if (msgElement)
msgElement.remove();
}
if (window && window.refreshConflicts)
window.refreshConflicts();
}
Thank you,
Hemanth
Certified Technical Architect (CTA), ServiceNow MVP 2024, 2025
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
4 weeks ago
Hi @Hemanth M1
I was trying the same and message is coming but "Scheduling Assistant" is not clickable in SOW. How did you resolve that part ?