Power Apps provides a powerful way to build custom applications that connect to different data sources.
One of the most common requirements in these apps is the ability to search records efficiently.
In this article, learn how the Power Apps Search function works when connected to SharePoint lists and Dataverse tables, highlighting key differences, limitations, and best practices.
Setting Up the Search Function
Imagine you have an app connected to a SharePoint list called carservice. This list contains over 2,000 records with fields such as:
- Car
- Customer
- Service
- Check-in date
- Price
You also have a Dataverse table that mirrors this SharePoint list with the exact same columns and data.
To enable search in your app:
- Select the Gallery control.
- Go to the Items property.
- Use the Search function to filter records based on user input from a text box.
Example formula:
Search(
carservice,
TextInputSearch.Text,
Car,
Customer,
Service
)
This searches the SharePoint list for whatever is typed in the search box, across the Car, Customer, and Service columns.
Search in SharePoint
When applied to SharePoint:
- The search works correctly for small datasets.
- You can filter records by keywords in any of the three fields (car, customer and service).
- However, you’ll encounter a delegation warning.
Delegation Limitation
Delegation means that Power Apps pushes the query to the data source so it can process large datasets. Unfortunately, the Search function is not delegable in SharePoint.
- Only the first 500 records are retrieved by default.
- Searches are limited to those records.
- For example, if “Patrick” appears in record 1 and record 2134, only the first occurrence will be shown.
This limitation makes the Search function unsuitable for large SharePoint lists unless you implement delegation-friendly alternatives (like the Filter function or indexed columns).
Take a look on this other article and video to learn more about delegation issues and how to solve them.
Search in Dataverse
When connected to a Dataverse table, the behavior changes significantly:
- The Search function is delegable.
- Queries run across the entire dataset, not just the first 500 records (2000 max if configured as such).
- Searching for “Patrick” will return all matching records, even if they are beyond record 500.
This makes Dataverse a more scalable option for apps that require reliable search functionality across large datasets.
Important Notes
- The Search function works only on text columns.
- It does not support other data types such as Choice, Number, or Date.
- If you need to search across non-text fields, use the Filter function instead.
Key Takeaways
- SharePoint: Search is limited to the first 500 records due to delegation issues.
- Dataverse: Search is fully delegable, making it ideal for large datasets.
- Best Practice: Use Dataverse when building apps that require scalable search functionality.
- Alternative: For non-text fields or delegation-safe queries, use the Filter function.
Power Apps makes it easy to implement search, but understanding delegation is crucial to avoid unexpected limitations.
If your app relies heavily on searching large datasets, Dataverse is the recommended data source.

Leave a Comment