- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-06-2015 11:21 AM
Hi guys,
I created a condition in a workflow to wait for assigned tasks to be complete... however the workflow doesn't advance to the next activity after I have done the change on the task record that would allow the next activity to run.
This is what I have one the code.
// Set the variable 'answer' to true or false to indicate if the condition has been met or not.
answer = true;
var gr_tsk = new GlideRecord("change_task");
gr_tsk.addQuery('change_request', current.sys_id);
gr_tsk.addQuery('u_accept_task', '==', 'Yes');
gr_tsk.addQuery('wf_activity', '');
gr_tsk.query();
if (gr_tsk.next()) {
answer = true;
} else {
answer = false;
}
Thanks for your support.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-08-2015 10:46 PM
The wait for script could then be something like this:
var gr_tsk = new GlideRecord("change_task");
gr_tsk.addEncodedQuery('state<3^change_request=' + current.sys_id);
// gr_tsk.addQuery('u_accept_task','Yes'); // I'm not sure/clear why you need this
//gr_tsk.addQuery('wf_activity', ''); // neither sure/clear why you need this.
gr_tsk.query();
if (gr_tsk.hasNext()) {
answer = false; // if there's at least one record open then continue waiting
} else {
answer = true; // if there's no records found then exit the wait for activity
}
Thanks,
Berny

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-07-2015 04:11 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-08-2015 06:05 PM
That's correct. All tasks are being created manually by the user. I need some mechanism to wait for all tasks to be assigned to user then, enabled the request for approval button or send approval automatically.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-08-2015 09:29 PM
bernyalvarado have you seen this?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-08-2015 10:26 PM
Hi Jesus, the way I have approached this on the past is by using a forceUpdate() that will wake-up the workflow which is waiting on the Wait For condition.
The approach is something similar to what Kalai suggests below with the one difference that i use the following method:
.setForceUpdate(true);
Thanks,
Berny
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-08-2015 10:28 PM
You can find here an example of how to use setForceUpdate in a GlideRecord. Make sure you set it within a record and right before .update(); takes place
GlideRecord Query Cheat Sheet - ServiceNow Guru
Thanks,
Berny