a week ago
How to escape from a repeat loop in workato when a specific condition is met? Repeating entire list and check condition is bad for the performance.
I don t want to use monitor functionality and throw error to escape from the loop.
is there any alternate solution present?
Solved! Go to Solution.
Tuesday
If you're calling SF within the loop and you need the SF response/flag to break the loop, then the simplest way to accomplish this is to use the error monitor. It does exactly what you need and will not process the full list once the loop is broken. You can configure it so it does additional processing after the catch/break.
Is there a reason don't you want to use the error monitor?
Wednesday
Another possible workaround to this is to utilize a Recipe Function. Within the Recipe function, include the necessary loop and condition. Once the condition is met, use the Return function to exit the Recipe Function and return to the parent recipe.
Wednesday
Yea I agree about the Monitor/Error block. I resisted using it at first b/c it felt un-intuitive and a bit of an eyesore for this purpose, but I embraced it b/c it's easy. The recipe function idea is a good one too, but you may want to save the task usage if you'll be calling this recipe (and/or the function) many times.
Friday
Hi @prp_proton ,
It depends on your use case; for example, if you want to stop the loop after several lists or indexes, you can add a condition and a monitor action to move to the next step in the recipe. Here's an example:
Monday
There are different options, but it depends on your input and what you're trying to accomplish. If you can provide more info we can probably make a few suggestions.
Monday
Hi,
I am just looping over a repeat helper list which is of size 100(size is unknown). Inside the loop, I am calling salesforce. Based on the SF response, when a flag is true, I want to exit from the loop and do the other processing's.
I don't want to create 100 tasks, when I might require to exit after 5 tasks. This is the scenario.
Tuesday
If you're calling SF within the loop and you need the SF response/flag to break the loop, then the simplest way to accomplish this is to use the error monitor. It does exactly what you need and will not process the full list once the loop is broken. You can configure it so it does additional processing after the catch/break.
Is there a reason don't you want to use the error monitor?
Wednesday
Yea I agree about the Monitor/Error block. I resisted using it at first b/c it felt un-intuitive and a bit of an eyesore for this purpose, but I embraced it b/c it's easy. The recipe function idea is a good one too, but you may want to save the task usage if you'll be calling this recipe (and/or the function) many times.