Breaking news from around the world
Get the Bing + MSN extension
Now Available in Community - MBAS 2019 Presentation Videos
Catch the most popular sessions on demand and learn how Dynamics 365, Power BI, PowerApps, Microsoft Flow, and Excel are powering major transformations around the globe. | View Gallery
2019 release wave 2 Discover the latest updates to Dynamics 365Release overview guides and videos Release Plan | Early Access Availability
Ace your Dynamics 365 deployment with packaged services delivered by expert consultants. | Explore service offerings
Connect with the ISV success team on the latest roadmap, developer tool for AppSource certification, and ISV community engagements | ISV self-service portal
The FastTrack program is designed to help you accelerate your Dynamics 365 deployment with confidence.
FastTrack Program | Finance TechTalks | Customer Engagement TechTalks | Talent TechTalks | Upcoming TechTalks
Delegation, powerful concept when working with PowerApps helps in improving app performance by limiting amount of data movement over network. To be precise, delegation will delegate (move) as much data processing down to data layer as is possible instead of retrieving all data and process locally for better performance. Here by processing data means: sorting, filtering, transforming.
Refer article which explains Delegation beautifully and in very much detail.
PowerApps achieve delegation through delegable data sources and functions. You can refer list of delegable sources and functions here. When working with large data sets, it is recommended to use delegable data sources and functions to keep your app performing well.
What happens when Non-delegable function is used?
Functions such as Sort, Filter, Lookup, Aggregate functions are delegable and can be used with large data sets with no issues. But functions such as AddColumns, DropColumns, Concat, Clear, ClearCollect, GroupBy are Non-Delegable functions (Refer here for complete list). Since these functions cannot be delegated, use of these functions will retrieve large sets of data over network and process them locally which will slow down app.
To avoid this, PowerApps imposes a limit on the amount of data that can be processed locally: 500 records by default. In that case if your data source has more than 500 records, only first 500 will be retrieved.
Demo – Use of Delegable vs Non-Delegable function
Search(AddColumns(‘[dbo].[CompanyProducts]’, “ProductUniqueID”, ProductName & “_” & ID), TextSearchBox2.Text,”ProductName”)
You can mitigate this problem by using Collections in PowerApps. Collections helps to store data locally as temporary storage and you can store as many records as you want. For more information on Collections please refer my blog.
Increase 500 records limit
There is a reason why PowerApps chose this number because increase in this limit will degrade app performance. But you can always update this limit (1000-2000) based on your needs.
Business Applications communities