- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-30-2023 01:28 AM - edited 11-30-2023 04:32 AM
Requirement is:
In incident form, when priority changes to 1-critical, the description should set to "this is a critical incident".
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-30-2023 01:50 AM - edited 11-30-2023 03:51 AM
Hi @XYD23 ,
As per your requirment using both SI and CS
Try this:
Client Script
function onChange(control, oldValue, newValue, isLoading, isTemplate) {
if (isLoading || newValue === '') {
return;
}
if (newValue == 1) { // Assuming '1' is the value for Critical priority
var gr = new GlideAjax('UpdateIncidentPriority');
gr.addParam('sysparm_name', 'updateDescription');
gr.getXML(onComplete);
function onComplete(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
var result = JSON.parse(answer);
g_form.setValue('description',result.desc);
}
}
}
Script Include: (Name - UpdateIncidentPriority, Make it client callable)
var UpdateIncidentPriority = Class.create();
UpdateIncidentPriority.prototype = Object.extendsObject(AbstractAjaxProcessor, {
updateDescription: function() {
var obj = {};
obj.desc= "This is critical Incident";
return JSON.stringify(obj);
},
type: 'UpdateIncidentPriority'
});
Please replace '1' with the actual value for Critical priority in your ServiceNow instance.
Thanks and Regards,
Rahul

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-30-2023 01:40 AM
Hi @XYD23 ,
Create onChange - client script on Priority field:
function onChange(control, oldValue, newValue, isLoading, isTemplate) {
if (isLoading || newValue === '') {
return;
}
if (newValue != oldValue && newValue == 1) {
g_form.setValue('description', 'this is a critical incident');
}
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-30-2023 01:50 AM - edited 11-30-2023 03:51 AM
Hi @XYD23 ,
As per your requirment using both SI and CS
Try this:
Client Script
function onChange(control, oldValue, newValue, isLoading, isTemplate) {
if (isLoading || newValue === '') {
return;
}
if (newValue == 1) { // Assuming '1' is the value for Critical priority
var gr = new GlideAjax('UpdateIncidentPriority');
gr.addParam('sysparm_name', 'updateDescription');
gr.getXML(onComplete);
function onComplete(response) {
var answer = response.responseXML.documentElement.getAttribute("answer");
var result = JSON.parse(answer);
g_form.setValue('description',result.desc);
}
}
}
Script Include: (Name - UpdateIncidentPriority, Make it client callable)
var UpdateIncidentPriority = Class.create();
UpdateIncidentPriority.prototype = Object.extendsObject(AbstractAjaxProcessor, {
updateDescription: function() {
var obj = {};
obj.desc= "This is critical Incident";
return JSON.stringify(obj);
},
type: 'UpdateIncidentPriority'
});
Please replace '1' with the actual value for Critical priority in your ServiceNow instance.
Thanks and Regards,
Rahul
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-30-2023 02:23 AM
You don't need to make GlideAjax call for this as the requirement can handle using client script only
You can write an onChange client script on priority field as mention below code:
if(newValue == 1){
g_form.setValue('description',"This is a critical incident")
}else{
g_form.clearValue("description");
}
If my answer solved your issue, please mark my answer as ✅ Correct & 👍Helpful based on the Impact.