What-Why-How | Cloud Power Automates – Myths – General Guidelines

Cloud Power Automates, is a powerful tool that allows users to create and automate workflows between different applications and services.

This article will cover three things

  1. Basic best practices for implementing Power Automates
  2. Myths and Facts
  3. General Guidelines based on my experience

Basic best practices for implementing Power Automates

Here are some basic best practices while implementing Cloud Power Automates:

  1. Plan your workflow: Before creating a flow, take the time to plan out the steps and actions that will be involved. This will help you to create a more efficient and effective flow.
  2. Use templates: Cloud Power Automates offers a wide range of templates that can help you get started quickly. These templates are designed to address common scenarios and can save you time and effort.
  3. Test your flows: Before deploying a flow, make sure to test it thoroughly to ensure that it is working as intended. This will help you to identify and fix any issues before the flow is used in a production environment.
  4. Monitor your flows: Once a flow is deployed, it is important to monitor its performance and usage. This will help you to identify any issues and make any necessary adjustments.
  5. Keep your flows up to date: As the applications and services that your flows interact with change, it is important to keep your flows up to date. This will help to ensure that your flows continue to work as intended.

By following these best practices, you can make the most of Cloud Power Automates and create powerful and effective workflows.

Myths and Facts

Myth: Power Automates are slow

Power Automate, is a powerful tool that allows users to create and automate workflows between different applications and services. However, some users have reported that Power Automate can be slow. Let us explore some of the factors that can affect the speed of Power Automate and what you can do to improve its performance.

Factors that can affect the speed of Power Automate

  • Number of actions: The speed of a flow can be affected by the number of actions it contains. The more actions a flow has, the longer it may take to run.
  • Concurrency: Whether or not you are using concurrency can also affect the speed of a flow. Concurrency allows multiple instances of set of actions to run simultaneously, which can improve its performance.
  • Flow ownership and connections: The speed of a flow can also be affected by who owns the flow and whose connections are being used. If the flow owner or the connections being used are experiencing high load, this can slow down the flow.
  • Load on the source or target: The load on the source or target of a flow can also affect its speed. If the source or target is experiencing high load, this can slow down the flow. For example, understand the throttling behaviours of Dataverse is important!

Myth: Power Automate cannot replace plugins

Fact: It is important to note that Power Automate cannot replace all features of plugins. While it can replace most of the functionalities of a plugin, there are some things that it cannot do. If you need to perform complex operations or calculations, you may need to use a plugin instead of a flow. You might also need to go for plugins if you need to do some actions without an additional DB update.

Myth: Difficult to cancel Power Automate runs

Fact: Another issue that some users have reported with Power Automate is that it can be difficult to cancel runs. However, there are APIs available that can be used to cancel runs, and new features are coming to manage it via Dataverse. https://learn.microsoft.com/en-us/power-automate/how-tos-bulk-resubmit#cancel-more-than-20-flow-runs

Myth: Do not adopt Power Automates as it needs licenses.

Fact: Most customers have sufficient Enterprise Licenses that have Power Automate as part of it. However, before choosing to use Power Automate, make sure to check if you have the required licenses. This will help to ensure that you are able to use the tool effectively and avoid any issues.

While Power Automate can be slow, there are several factors that can affect its speed. By understanding these factors and taking steps to address them, you can improve the performance of your flows and make the most of this powerful tool.

As part of my implementations, I tend to suggest / follow the below best practices. Hope it is useful to you as well:

General Guidelines:

  • Naming Conventions are a set of rules for choosing the character sequence to be used for identifiers in a flow. A good naming convention is crucial for the readability and maintainability of your flows. Here is a sample format for naming conventions in Power Automate:

[TRIGGER TYPE]<<WORKING/TRIGGERING ENTITY>>|<<TRIGGERING ACTION>>|<<Short description of the business logic>>

Some examples of this format include:

  • [Auto] Opportunity | On Change of Owner | Set Assigned To
  • [Manual] Opportunity | Calculate Birthday
  • [Recurring] Opportunity | Once a week | Calculate Birthday
  • [Child Flow] Travel Requests | Approval Logic | Send Approval Request Email
  • [Manual / Parent] Opportunity | Calculate Birthday
  • [Parent] Opportunity | Calculate Birthday
  • [DONOTUSE] Opportunity | Calculate Birthday

By following a consistent naming convention, you can make it easier to understand and manage your flows.

  • Action names and notes are important components of a flow in Power Automate. Action names are used to identify the actions within a flow, while notes provide additional information about the purpose or function of an action. By using clear and descriptive action names and notes, you can make your flows easier to understand and maintain. It is a good practice to use action names that accurately describe the action being performed and to include notes that provide additional context or explanation. An example is given below
  • Basic setup for Dataverse Actions / Triggers: When setting up triggers for a Dataverse action, there are a few important things to keep in mind. Here are some best practices to follow:
    • Use Scope as ‘Organization’: This will ensure that the trigger is scoped to the entire organization, rather than a specific entity or record.
    • Set Run As as ‘Flow Owner’: This will ensure that the flow runs under the context of the flow owner, rather than the user who triggered the flow.
    • Use Column Filters and Filter Expressions. This will help to restrict the flow to a certain set of records / actions

  • Connection references are a way to manage and share connections between flows in Power Automate. When using connection references in Dataverse flows, it is important to follow best practices to ensure that your flows are secure, reliable, and easy to maintain. Some best practices for using connection references in Dataverse flows include:
    • Use connection references to share connections between flows: By using connection references, you can share connections between multiple flows, making it easier to manage and update your connections. Refrain creating multiple connection references as much as possible, else it will be a maintenance headache.
    • Use a dedicated service account / application user for connections: When creating connections, it is a good practice to use a dedicated service account with the minimum required permissions (as non-interactive user). This can help to improve the security of your flows and reduce the risk of unauthorized access. This will also help you to use ‘tenant pool’ and can increase the speed of execution by improving the throttling limits. Using Service Principals or Application users can help to improve the performance of your flows by reducing the load on interactive user accounts.
  • Use environment variables: Environment variables allow you to store and manage configuration data for your flows. By using environment variables, you can easily update the configuration of your flows without having to modify the flow itself. This can help to improve the maintainability and flexibility of your flows.
  • It is important to use ‘Try catch’ logic and ‘Do until’ loops when handling large datasets, such as those with more than 5,000 records. This is because Power Automate has a limit on the number of records that can be retrieved in a single action, and using these techniques can help to ensure that all records are processed correctly.
    • ‘Try catch’ logic allows you to handle errors that may occur when processing large datasets. By using this logic, you can specify what actions should be taken if an error occurs, such as retrying the operation or logging the error for further investigation.
    • ‘Do until’ loops, on the other hand, allow you to repeatedly perform an action until a certain condition is met. This can be useful when working with large datasets, as it allows you to process the records in smaller batches, rather than attempting to process all records at once. Use these loops to make sure you go above and beyond the 5K record limit by using paging cookies.

By using these techniques, you can improve the reliability and performance of your flows when working with large datasets.

  • Child flows are a powerful feature in Power Automate that allows you to create reusable, modular flows that can be called from other flows. Using child flows can have several benefits for both licensing and performance aspects.
    • From a performance perspective, using child flows can help you to improve the performance of your flows by breaking down complex flows into smaller, more manageable components. This can help to reduce the load on the Power Automate platform and improve the speed and reliability of your flows. Additionally, using child flows can help you to better organize your flows and make them easier to maintain and update. You are also splitting the number of actions that each flow has and will execute which can help you to be within the limits.

Do comment with your thoughts / Ideas and Questions. Happy automating!

Cheers.

Leave a comment