
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-09-2017 02:22 PM
We currently have a Wait For Condition in a workflow that is waiting for an inbound email action to kick off, changing a field value in the RITM to true. Once the field value changes to True, the workflow advances and creates the next Catalog Task. The problem is that the email action might never fire, meaning someone either "fat fingered" the inbound email so it is evaluated improperly or the item the user is ordering might have been rejected in the external approval system that some of our items have to pass through, resulting in no email being generated.
I would like to have some sort of Timer/Condition that waits for X amount of time before ending the workflow if the Wait for Condition never fires but I don't want to end the workflow if the Wait for Condition DOES fire and the workflow continues.
What would be the best way to accomplish this? I tried a Timer condition running along side of the Wait for Condition but the Wait for Condition was Cancelled and the Timer ended immediately.
Solved! Go to Solution.
- Labels:
-
Workflow
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-09-2017 04:39 PM
Hi Kyle,
My suggestion would be to try replacing your wait for condition with a run script, a turnstile and a timer.
Your run script can check whether your condition has been met, and if so move on - transition as you are already in your workflow.
If the condition is not met, it can transition to a turnstile activity - you can configure that with the number of times you want to check your condition. Lets say 24 times.
Then connect the turnstile to a timer that waits the interval you want to wait, lets say 5 minutes. After the interval, it will transition back to your run script to check again.
You also connect the turnstile to your end condition - or whatever you want to happen if the timeout is exceeded. In this case we check up to 24 times waiting 5 minutes in between each - giving you a timeout of 2 hours.
So in effect you'll have
Run script (wait for condition)
-> Success (condition met) -> what it does currently
-> Failure (condition not met)
-> Turnstile (have we checked enough times yet?)
-> No -> Timer (5mins) -> Back to run script
-> Yes -> End condition.
Let me know if that works out for you or if you have any questions on using those activities.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-09-2017 04:39 PM
Hi Kyle,
My suggestion would be to try replacing your wait for condition with a run script, a turnstile and a timer.
Your run script can check whether your condition has been met, and if so move on - transition as you are already in your workflow.
If the condition is not met, it can transition to a turnstile activity - you can configure that with the number of times you want to check your condition. Lets say 24 times.
Then connect the turnstile to a timer that waits the interval you want to wait, lets say 5 minutes. After the interval, it will transition back to your run script to check again.
You also connect the turnstile to your end condition - or whatever you want to happen if the timeout is exceeded. In this case we check up to 24 times waiting 5 minutes in between each - giving you a timeout of 2 hours.
So in effect you'll have
Run script (wait for condition)
-> Success (condition met) -> what it does currently
-> Failure (condition not met)
-> Turnstile (have we checked enough times yet?)
-> No -> Timer (5mins) -> Back to run script
-> Yes -> End condition.
Let me know if that works out for you or if you have any questions on using those activities.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-10-2017 11:36 AM
That worked! I ended up just using a Switch instead of a Run Script because it involved a specific variable but using the Turnstile and the Timer worked as well! Thanks!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-15-2019 06:58 AM
Hi there, I am wondering if you could help me understand if this is a good solution to my situation.
We are using a workflow that happens when a ritm is submitted. A change request will be made and we want to automatically close a change task when the change request gets approved. I tried using the "Wait for condition" block but now I understand that this only checks when the ritm is updated. Would your method work for my situation?
I also have tried to use an If condition block to check if the change is approved and if it is not, it will just loop and recheck until it is true.
Thoughts? I appreciate any help 🙂
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-15-2019 09:11 PM
Hi Emma,
In this case you're going to want a 'nudge'. Because you need to trigger the workflow to 'recheck' after something happens on a different table, the nudge tells the workflow to 'check again'.
Essentially you'll probably take the code out of the 'nudge' ui action, and implement it as a BR on the table you want to check.
I.e. when the change task is automatically close, trigger the nudge, at that point your workflow will recheck it's wait for condition and it should be met, and it should carry on.
Hope that helps,
Cheers,
Stephen