Skip to main content

PowerApps Delegation Warning

Update Aug 15 2019 - Microsoft has updated PowerApps to allow for some complex SharePoint data delegation, this will hopefully resolve most issues you were seeing when working with SharePoint data: https://powerapps.microsoft.com/en-us/blog/sharepoint-delegation-improvements/

If you've tried to use the Filter, LookUp or Search actions in PowerApps you have seen the yellow warning error that shows a 'delegation warning' and you might have even ignored it because your PowerApp was working fine in testing. However once you get into larger data sets your PowerApp will have some issues so in this blog I will attempt to explain what the delegation warning is and how you can fix your PowerApp.

Delegation

So what even is Delegation in PowerApps? When doing any sort of data manipulation for an app, PowerApps will try to push the processing of that data to the source system instead of doing all of the manipulation in the app. This is done to increase the efficiency of your app and reduce the number of records that need to be retrieved. It is much quicker for a PowerApp to load only the 20 items where the criteria is met instead of loading as many as items the request returns and then filtering them down. PowerApps can use delegation for tabular data sources only such as the CDS, SharePoint, and SQL Sever.

For more information on Delegation you can reference the Microsoft documentation here: https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/delegation-overview

Request Limitations

When not utilizing delegation your PowerApp is, by default, limited to 500 items returned so if you get this error and you're working with large data sets items 1-500 will be returned and anything else will not appear in your app which likely means you're not displaying all of the intended data. Take a look at the example below, the 'ID Text Column' gallery is utilizing delegation to pull in data, while the 'Lookup ID ' gallery is not, so anything past the first 500 results will not return, in this case item 1280 QA Documentation. 

Note: Item IDs in the data set utilized above starts at ID 600
You can always change the limit for returned results in your PowerApp in App settings but you will likely experience some performance issues in returning data as more items will need to be fetched so the best solution will be to fix your data if possible.

Fixing your data

At this point you may be thinking, 'Ok I am using a delegable source so why I am still seeing this error!' and it's likely because you're attempting to filter on data/a column that that is created/manipulated using a non-delegable function. To solve for this you may have to attempt to use other functions or see if you can have this data manipulation done in the source data. If neither of these are possible your only option may be to increase the data limits. While most functions don't support delegation but Microsoft calls out the following notable functions in their documentation: https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/delegation-overview#non-delegable-functions
  • Table shaping
  • Fist, FirstN, Last, LastN
  • Choices
  • Concat
  • Collect, ClearCollect
  • CountIf, RemoveIf, UpdateIf
  • GroupBy, Ungroup

Unsupported SharePoint Columns

There are also a fair amount of  SharePoint columns that are not supported; so if you are filtering on one of the following column types you will get delegation warning.
  • Choice
  • Lookup
  • Dates
  • Person our Group
  • Managed Metadata
The easiest fix for this is to create a new text or number column and use Flow to sync the values between the fields, then use the new column in your filter criteria to ensure all the results are being returned. 

For a complete list of delegable functions for SharePoint data check out the Microsoft documentation here: https://docs.microsoft.com/en-us/connectors/sharepointonline/#powerapps-delegable-functions-and-operations-for-sharepoint

Hope this helps you understand the delegation warning and gives you the knowledge to help resolve any issues you may have. If you have any questions feel free to reach out on twitter: @mslavieri

Comments

  1. Half of the numbers are pink, half are black, plus a single zero which is green. They are positioned randomly with pink and black numbers alternating besides when broken up by the one zero. Las Vegas casino tables often imposes minimum and most bets, and these rules often apply individually for all of a player's "inside" and "outside" bets for every spin. You should ask the Dealer about any minimum and most betting limits at your desk. Outside Bets Players can place "outside" bets which are bets on varied positional groupings of pockets, odd or even, pink or black, or a mixture of these casino.edu.kg choices.

    ReplyDelete

Post a Comment

Popular posts from this blog

SharePoint Site Theming: Header Background Colors

As Microsoft rolls out the new Mega Menu experience for the Modern UI some of you may be wondering where these colors come from. In this post I will review the header background color options and call out which theme colors get used along the way. From left to right in the image below we have the four background options, which I'll call by the names of their color labels, Background Color (White) Theme, Neutral Light Theme, Light Theme, Dark Theme. I used the Microsoft Theme generator ( https://developer.microsoft.com/en-us/fabric#/styles/themegenerator ) to create my theme and applied the theme to my tenant using the Add-PnPTenantTheme ( https://docs.microsoft.com/en-us/powershell/module/sharepoint-pnp/add-pnptenanttheme?view=sharepoint-ps ) command to apply the following theme in PowerShell, I've also added comments to lines that impact themes for your reference. @{ "themePrimary" = "#0a162b"; #Theme Dark Local "themeLighterAlt" = "

Quick Look at the Surface Duo Android Emulator

Microsoft recently released their SDK and Emulator for developing dual screen applications for the Surface Duo ( https://docs.microsoft.com/en-us/dual-screen/introduction ) and being a bit curious about what the experience was going to be on a dual screen device I decided to give download it and give it a try.  First Impressions First and foremost there is the novelty of having two apps launched side by side. The Duo emulator is using Android Version 10 and to be API version 29, both are the latest versions of Android. There is no Play Store or Microsoft Store on the emulator, which is to be expected as its main purpose is app development. But beyond that it appears that most of the Google applications are not included in the device and the build is based off the Android Open Source Project (AOSP) more than anything else. What typically are the default applications on Android have been replaced with Microsoft Applications.  Launcher is the Microsoft Launcher: