0% found this document useful (0 votes)
37 views39 pages

Linn Zaw Win - Building Dataverse Cloud Flows Efficiently - 200 Nzbas23

The document discusses optimizing Power Automate cloud flows. It provides tips for using trigger filters, productivity tools from Level Up extensions, and FetchXML to efficiently query data. It also covers best practices like caching data, updating lookups dynamically, associating flows to apps, monitoring flow health and usage, and splitting service principals for heavy loads. The document aims to help flow builders optimize actions and stay within platform request limits.

Uploaded by

Linn Zaw Win
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
37 views39 pages

Linn Zaw Win - Building Dataverse Cloud Flows Efficiently - 200 Nzbas23

The document discusses optimizing Power Automate cloud flows. It provides tips for using trigger filters, productivity tools from Level Up extensions, and FetchXML to efficiently query data. It also covers best practices like caching data, updating lookups dynamically, associating flows to apps, monitoring flow health and usage, and splitting service principals for heavy loads. The document aims to help flow builders optimize actions and stay within platform request limits.

Uploaded by

Linn Zaw Win
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 39

NEW ZEALAND https://cutt.

ly/nzbas23flow

BUSINESS
APPLICATIONS Building Dataverse Cloud
SUMMIT 2023 Flows Efficiently
Linn Zaw Win
Dynamics 365 Specialist | Brisbane City Council
Agenda

• Optimise Dataverse Actions

• Productivity Tools

• Platform Limits
Trigger Filter
Trigger Filter

* Make sure there is no space


between each column name​

statecode, statuscode

*Filter rows cannot be filtered based


on the values in the related table

primarycontactid/accountrolecode eq 3
Tools (Level up for Dynamics 365/Power
Apps)
List Rows (Without Select Columns)
List Rows (Select Columns)
List Rows (Formatted Value)

https://linnzawwin.blogspot.com/2020/07/get-lookup-display-name-and-option-set.html
List Rows (Related Table Value)

https://linnzawwin.blogspot.com/2020/07/get-lookup-display-name-and-option-set.html
Tools (FetchXML Builder)
List Rows (Nested Expand)

https://linnzawwin.blogspot.com/2020/08/get-output-data-from-expand-query-of.html#n1twolevel
List Rows (Nested Expand)

https://linnzawwin.blogspot.com/2020/08/get-output-data-from-expand-query-of.html#n1twolevel
List Rows (Filter Rows)
• Filter rows parameter instead of getting all and loop through
Cache Data and Use Filter
Add / Update a Row (Lookup)

https://linnzawwin.blogspot.com/2019/11/power-automate-how-to-set-lookup-field.html
Get EntitySetName (Solution Explorer)
Get EntitySetName (Level Up Extension)
Update Lookup Dynamically
• When Parent Account status is Verified
• If Primary Contact of Parent Account has value
• Overwrite Primary Contact of child Accounts
• Update a few other columns of child Accounts
• If Primary Contact of Parent Account does not contain data
• Leave the Primary Contact of child Accounts as it is
• Only update a few other columns of child Accounts
Update Lookup Dynamically
if(
empty(triggerOutputs()?['body/_primarycontactid_value']),
if(
empty(items('Apply_to_each_Account_-_Expression')?['_primarycontactid_value']),
null,
concat(
'contacts(',
items('Apply_to_each_Account_-_Expression')?['_primarycontactid_value'],
')'
)
),
concat(
'contacts(',
triggerOutputs()?['body/_primarycontactid_value'],
')'
)
https://linnzawwin.blogspot.com/2019/11/power-automate-how-to-set-lookup-field.html
)
Flow Run History
Flow Run History
Flow Run History
Tools (Flow Execution History)
Flow Execution History
Tools (Flow Visio Builder)
Copilot in cloud flows

https://learn.microsoft.com/training/modules/build-real-estate-power-automate-copilot
Copilot in cloud flows
• Preview regions with copilot GPUs: US, Australia, UK
• Copilot is enabled by default, unless it's turned off by an admin.
If you want to learn more…

15:00 - 15:50
Power Platform Request Limits
• Licensed user request limits per 24hrs
• Paid licensed users for Power Platform - 40,000
• excludes Power Apps per App and Dynamics 365 Team Member
• Non-licensed user request limits per 24hrs (tenant-level)
• Dynamics 365 Enterprise & Professional applications –
• 500,000 base requests + 5,000 requests accrued per USL up to 10,000,000 max
• Power Apps + Power Automate (all licenses) – just 25,000 base requests
• Power Automate per flow plan per 24hrs
• 250,000 requests (doesn't use the non-licensed user request limits)
https://learn.microsoft.com/en-us/power-platform/admin/api-request-limits-allocations#licensed-user-request-limits
Cloud Flow Owner
• Automated and scheduled flows always run in the context of the flow
owner

https://learn.microsoft.com/en-us/power-platform/admin/power-automate-licensing/faqs#who-needs-to-purchase-a-premium-license
Cloud Flow Owner
Cloud Flow Owner
Associate flow to app
• If the flow is in context of Power Apps or Dynamics 365 apps, and is
an automated flow, the flow must be associated to the app

https://learn.microsoft.com/en-us/power-automate/associate-flow-to-app
Flows at Risk
• Get-AdminFlowAtRiskOfSuspension

https://learn.microsoft.com/en-us/power-platform/admin/power-automate-licensing/faqs#i-have-many-evironments-h
ow-can-i-get-the-flows-that-need-my-attention-across-tenant
Power Platform request usage information
• Power Platform request usage information (PPAC)
• Licensed User report
• Non-licensed User report
• Per Flow report
• Power Platform Request capacity add-on (+50,000 per 24 hours)
• High usage licensed users or high usage non-licensed users

https://learn.microsoft.com/en-us/power-platform/admin/api-request-limits-allocations#view-detailed-power-platform-
request-usage-information-in-the-power-platform-admin-center-preview
Service protection API limits
• 6000 requests within the 5-minute sliding window / web server
• 20 minutes of execution time within the 5-minute sliding window
• Number of concurrent requests - 52 or higher

• Split Service Principal


• Multiple Connection References
• Cloud flows with heavy load

https://learn.microsoft.com/en-us/power-apps/developer/data-platform/api-limits#how-service-protection-api-limits-are-enforced
Action request limits for cloud flows
• PP Requests per 5 minutes
• 100,000
• PP Requests per 24 hours
• 10,000 for Low
• 100,000 for Medium
• 500,000 for High
• Uses the plan of its owner

https://learn.microsoft.com/en-us/power-automate/limits-and-config#action-request-limits
Expressions over Actions
Expressions over Actions
Thank you
https://cutt.ly/nzbas23flow

You might also like