Hi
I have a large SharePoint List ( > 2000 items) that has a person / Group field in it.
This article suggests that I should be able to filter this list on the Person / Group field :- https://powerapps.microsoft.com/en-us/blog/powerapps-now-supports-working-with-more-than-256-items-i...
However I try, I still get the dreaded wavy blue line saying the filter will not work correctly with large datasets.
Surely there must be a number of HR SharePoint lists with > 2000 items which have got around this problem ?
Any help, greatly received.
Regards
Nigel
Solved! Go to Solution.
Hi @NigelP,
This warning indicates that a function can't be delegated, PowerApps might not be able to retrieve all of the data, and your app may have wrong results. About delegation, please refer to below documentation:
https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/delegation-overview
The non-delegatable part seems to focus on the .Email part.
To workaround this issue, you can first save your SharePoint list into a collection by setting below formula in the OnStart property of the first screen:
ClearCollect(Collection1,ListName)
Then use Collection1 as the data source in Filter function.
Filter(Collection1, Person.Email=User().Email)
Regards,
Mona
Person is an embedded table and will always show a delegation error in sharepoint lists when used in powerapps. Unless there are more than 2000 names in the person field, I think it can be ignored. I think Kris @v-xida-msft may know how to unpack it as a collection so that it doesn't show the error. You may want to check @CarlosFigueira ,
’s blog post Defining default values for complex SharePoint types in forms
Hi @NigelP,
This warning indicates that a function can't be delegated, PowerApps might not be able to retrieve all of the data, and your app may have wrong results. About delegation, please refer to below documentation:
https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/delegation-overview
The non-delegatable part seems to focus on the .Email part.
To workaround this issue, you can first save your SharePoint list into a collection by setting below formula in the OnStart property of the first screen:
ClearCollect(Collection1,ListName)
Then use Collection1 as the data source in Filter function.
Filter(Collection1, Person.Email=User().Email)
Regards,
Mona
Thanks @v-monli-msft
So does this mean that the article :- https://powerapps.microsoft.com/en-us/blog/powerapps-now-supports-working-with-more-than-256-items-i... is incorrect then ?
One thing work pointing out is that Person.Email=User().Email) is SLOW.
A better way would be set a global variable Set(useremail, User().Email) and then the filter comes :-
Filter(Collection1, Person.Email=useremail)
which is much quicker.
Regards
Nigel
I found this could solve my problem of delegation, too. But in this case, does Person still subject to the limit of 2000 items?
Martin
User | Count |
---|---|
182 | |
124 | |
88 | |
45 | |
43 |
User | Count |
---|---|
247 | |
156 | |
127 | |
78 | |
73 |