Microsoft Flow is a very powerful tool and can be used to do many different things. I think it has become my favorite tool in Office 365. Therefor I want to spread the Flow love and tell you a couple of tips and tricks when developing Flows.
A very useful and time saving capability within Micorosft Flow is that we can copy and paste actions. You can copy configured actions and reuse them! The best thing about this capability is that you can copy an action from one flow and past it into another. I often use this to copy the more complex HTTP request actions. This feature is currently in preview, but so far I have not encountered any issues with it.
- Click on the … on an action.
- Click on Copy to my clipboard (preview).
- Click on + New step.
- Open the tab My clipboard.
- Select the copied action.
Continue flow after a failed action
By default a flow will stop working if an action fails. If you know that an actions might fail occasionally you can setup a situation where only that action fails but not the whole flow. You can do with the Configure run after setting.
- Click on the … of the action after the action that might fail.
- Click on Configure run after.
- Here you can configure if the action will be run even if the previous failed, skipped or timed out.
- In this example I selected both is successfull and has failed to.
- The flow will now continue if the previous action failed or succeeded.
Scope try and catch
We can use the action scope to group actions to make the flow easier to read. There is however another great use for them. The scope action encapsulate a block of actions and inherit the last terminal status (Succeeded, Failed, Cancelled) of actions inside. This in combination with the Configure run after setting we can create a try and catch logic in our flows. In this example the second scope (catch) only runs if the first scope (Try) failed.
- Create a scope with some actions
- Create a second scope after the first scope
- Set the Configure run after setting of the second scope to has failed, is skipped and has timed out.
- In this scenario the catch scope will only run if the Try scoped faild.
- The flow will look like this.