- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-08-2023 11:33 PM - edited 05-08-2023 11:59 PM
We are manually resolving the incident ticket ,but can we restrict the incident ticket to not to resolve while incident tasks are in open state /work in progress
Please suggest the best pratices
Solved! Go to Solution.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-09-2023 12:37 AM
@String Here is the BR which you need to create to restrict the incident from changing the state to Resolved if there associated open/work in progress tasks.
Here is the script.
(function executeRule(current, previous /*null when async*/) {
// Add your code here
var glideIncidentTask = new GlideRecord('incident_task');
glideIncidentTask.addEncodedQuery('incident='+current.sys_id+'^stateIN1,2')
glideIncidentTask.query();
if(glideIncidentTask.hasNext()){
current.setAbortAction(true);
gs.addErrorMessage('This incident has incident tasks which are either in opened or work in progress state.');
}
})(current, previous);
Please mark this answer correct and helpful if it manages to address your requirement.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-09-2023 12:37 AM
@String Here is the BR which you need to create to restrict the incident from changing the state to Resolved if there associated open/work in progress tasks.
Here is the script.
(function executeRule(current, previous /*null when async*/) {
// Add your code here
var glideIncidentTask = new GlideRecord('incident_task');
glideIncidentTask.addEncodedQuery('incident='+current.sys_id+'^stateIN1,2')
glideIncidentTask.query();
if(glideIncidentTask.hasNext()){
current.setAbortAction(true);
gs.addErrorMessage('This incident has incident tasks which are either in opened or work in progress state.');
}
})(current, previous);
Please mark this answer correct and helpful if it manages to address your requirement.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-09-2023 12:48 AM
Hi @Sandeep Rajput Thanks for your reply .
am tried the same code but still ticket is getting resolve with below error
Please guide me

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-09-2023 12:59 AM
@String After this error, it appears that the state is set to Resolved but if you refresh the page the state will revert back to previous state. This BR will not let the user change the state to Resolved until the child tasks are in Open and WIP state.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-09-2023 01:14 AM
@Thanks @Sandeep Rajput got it ,After showing the error message can we refresh the ticket using same BR .So that user won't get confussed .am using the below syntax but not working
gs.setRedirect (current.getLink(true));

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
05-09-2023 01:28 AM
Unfortunately, gs.setRedirect doesn't work along with current.setAbortAction(true) here is the knowledge article for it https://support.servicenow.com/kb?id=kb_article_view&sysparm_article=KB0539962