cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
SergiP
Level: Powered On

500 rows limit

hi,

I read a lot about ways to overcome the 500 limit, but I suppose I'm doing something wrong.

I have a table called TaulaProd with about 6000 lines and 3 columns:  SKU / Name / PartName like:

 

SKU   /  Name   /    PartName

--------------------------------------

SKU1    Prod1        Part1

SKU1    Prod1        Part2

SKU1    Prod1        Part3

SKU2    Prod2        Part1

...

 

I create a dropdown that lists all the parts in SKU1, so showing:  Part1, Part2 and Part3...

 

Everything works great for the SKUs on the 1st 500 lines... but not after this 500 records for example SKU900 that is way under the 1st 500 rows.

I tried defining the dropdown Items= Filter(TaulaProd, SKU="SKU900") and it is not working

I thought Filter is delegable and should not be a problem...

then I tried collecting:

ClearCollect(Peces,Filter(TaulaProd,SKU= "SKU900"))

but the collection is empty, while works perfectly if I do ClearCollect(Peces,Filter(TaulaProd,SKU= "SKU9")) because in on the 500 first rows.

 

What I'm doing wrong?

thanks

1 ACCEPTED SOLUTION

Accepted Solutions
SergiP
Level: Powered On

Re: 500 rows limit

hi,

 

I found the solution to my problem thank to your tips.

I simply converted my excel table into a Sharepoint List and it works.

 

Small correction to your tip: there´s no 5000 rows limit to sharepoint lists, actually the list can have up to 30 million rows, the only limit is set to the amount of rows that can be pulled at once. So if you are able to use delegation (filtering) in clever way this should be enough for most of applications.

 

Thanks vivekb! without your contribution I'm sure I wouldn't have found the solution so fast.

12 REPLIES 12
Super User
Super User

Re: 500 rows limit

@SergiP

 

What is your Data source? If  Excel, then it is not delegable. If its in a Sharepoint list, then it should work, however, I know that the sharepoint list has a record limit of 5000 rows. 

 

Have you conisdered, storing the PartNames in a multiple choice type of column in Sharpoint list? This would reduce the number of records considerably.

 

Also, PowerApps now has increased the limit for non-delegable queries to 2000 , details for which can be found here

https://powerapps.microsoft.com/en-us/blog/powerapps-data-row-limit-for-non-delegable-queries/ 

 

clip_image002

You can change this to 2000.

 

 


Vivek Bavishi aka That API Guy
PowerApps and Flow MVP
Blog | Twitter | YouTube | Community Profile | GitHub



If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

SergiP
Level: Powered On

Re: 500 rows limit

Thanks!
My table is an Excel file in OneDrive. So no delegation..👎
I will investigate the multiple choice list you suggested and try to find a way to convert my Excel into this
SergiP
Level: Powered On

Re: 500 rows limit

hi,

 

I found the solution to my problem thank to your tips.

I simply converted my excel table into a Sharepoint List and it works.

 

Small correction to your tip: there´s no 5000 rows limit to sharepoint lists, actually the list can have up to 30 million rows, the only limit is set to the amount of rows that can be pulled at once. So if you are able to use delegation (filtering) in clever way this should be enough for most of applications.

 

Thanks vivekb! without your contribution I'm sure I wouldn't have found the solution so fast.

Super User
Super User

Re: 500 rows limit

Glad that it worked out. I think the 5000 rows is a limit set by my company’s admin.
Hopefully converting excel to sharepoint list wasn’t a pain.

Did you use excel’s export to sharepoint list feature?


Vivek Bavishi aka That API Guy
PowerApps and Flow MVP
Blog | Twitter | YouTube | Community Profile | GitHub



If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

SergiP
Level: Powered On

Re: 500 rows limit

I used the sync add-in Excel-sharepoint List.

So that I can easily update the list when needed.

GaryEden
Level: Powered On

Re: 500 rows limit

I'm trying to pull data from Saleforce, although delegation works to a point one set of data I want to use exceeds the 2000 row limit.

 

Is it possible to create a collection (or use multiple collections) with a filter option that returns rows from a given starting point (as you can do with other data bases).

 

e.g.

StartFromRow: 0, LimitRows: 2000 -> returns the first 2000 rows

StartFromRow: 2001, LimitRows: 2000 -> returns the next 2000 rows

StartFromRow: 4001, LimitRows: 2000 -> returns the next 2000 rows (or remaining rows above 4001)

 

If the rows cannot be added to a single collection then each separate collection can be queried and the results put into a secondary collection for use in tabls, lists etc. or simply added up.

 

Cheers

 

 

 

arun_mathew
Level: Powered On

Re: 500 rows limit

Is there a way to pull the latest 500 rows from the excel table? 

 

I use Powerapps for users to enter data into an excel and powerbi for the dashboard based on the excel data.

So I am happy to display just the latest 500 records in my powerapp. 

 

Thanks

GaryEden
Level: Powered On

Re: 500 rows limit

Hi

The only way I found to achieve this was by pre-filtering using a collection e.g. filtering on a date range or some other field in the excel table to narrow down the results. Once you have the collection you can use it within the app like you would normally to display the information and then use the Patch() function to update the excel table - aligning the collection fields to the excel table fields.

 

With a little bit of work you can display the data using a gallery to look like a table, adding a button to update the data at the end of each row. There is a ForAll() function in PowerApps that acts like a ForEach() / Loop() function in SQL queries to allow you to update multiple lines at the same time but I haven't managed to get this to work reliably (yet).

 

(Tip: If you are using the same data in multiple places (regardless of data source), using a collection significantly improves app performance as the data is cached, rather making repeat calls to the data source. You can also create child collections from collections to further pre-filter your data.)

 

WARNING, I found that working with large excel tables could end up being unstable and very easy to corrupt them (not sure if this was just me or if others have had a similar problem?).

 

After having a few excel data tables corrupt (data lost), I moved on to using the CDS (building my own tables to hold my data) this was more reliable. However, I also found this limiting (especially as there was no easy way to back up the data) and I've now moved on to using SQL hosted in Azure. This is surprisingly easy to connect up to PowerApps and gives you the full power of a SQL database using SQL Server Management Studio. I'm now experimenting with running the queries in SQL to pre-filter the data I need for the app, letting SQL do the hard work. It's early days but it looks promising.

 

Hope this helps.

arun_mathew
Level: Powered On

Re: 500 rows limit

Thanks GaryEden. I was hoping for an easy way, looks like that wont be the case.

 

Azure SQL: is also an acceptable solution. Need to see how much effort is required to port the existing app.

Unstable Excel : For time being we have put in a daily back up to ensure that we dont lose any data. Havent had any issues in the past three months. Fingers crossed