Change default number of records loaded, at initial load, for each landing page...?

We have been on the “struggle bus” with regard to the way that Epicor presents the landing pages and sortability. For instance, we usually have 1500 or 2500 open quotes at any given time in the system.

Epicor will not allow us to sort non-native table data until all of the data has been downloaded. (We have set the options to download 2500, but you still need to download it with the button). The biggest issue with this is that you cannot save any of the filters (save layout) on the non-native fields, so you have to download everything first then set your filters (or pivot table) and hope you don’t refresh it, because you have to do this all over again (set the filters to see what you want).

So, we can’t search for Priority, or Customer, or Project Name (see attached graphic) until we download them all. We did try to override these fields and force show the “blued-out” boxes under each column header, but this results with errors when entering anything into the now, forced, search boxes on the columns which should have been “blued-out.”

There are a couple of posts here referring to this, but I don’t see a great answer for Kinetic. (Kinetic Search Selection Option "Select All Maximum" Default Value).

Has anybody come up with a way to either download a set number of records from the onset in Kinetic Landing Pages that works within the Epicor framework, OR, has anybody come up with a way to search non-native table fields on a landing page without having to download them all?

Thank you as always.

2 Likes

There is an Idea out there for “adding UD fields to landing page” since that functionality has been broken for several versions now. Please vote!

https://epicor.ideas.aha.io/ideas/KIN-I-4172

Try this…

In App Studio (hopefully you already have a custom layer you can use), navigate to and edit the landing page.

Click on the Panel Card Grid, scroll down to Advanced and select View Options and work with whatever view is the default when the page loads.

Scroll down to the bottom and you’ll see a checkbox for “Server Paging”. Mine was unchecked by default… which SHOULD mean it won’t use pagination… but it does.

I was farting around and checked that box and previewed… and yeah, it paginated. So, I went back in and unchecked the box… and now it DOESN’T paginate and loads all records on form load.

So, toggling that on and off seemed to override the default pagination behavior??.. at least in Preview mode… in my one test… on the first Friday of the month. I did not publish this and test it fully.

image

Give it a shot.

3 Likes

Pretty sure @mbayley presented something on this at Insights.

1 Like

If you have a pre-defined set of filters, you can define those in View Options, as well!
We have thousands of Transfer Order Shipments, so the landing page grid took forever to load - so now we just have the UnShipped shipments appear on the default View.
Using Rest Params:

and modifying the whereClause:

You can add an (ORDER) BY caluse at the end of the rest where clause in most GetList methods - I’m not sure if it will order by UD Field…

There’s the Set Default checkbox to select which View is displayed on load
image

1 Like

If I understand your problem correctly, you can set the page size to a high value to achieve what you are looking for. If you want to always return all rows, set it to something crazy like 1,000,000…

Grid Model > Page Size
image

This will make GetRows (The BO method used in landing pages) use this value and return all your rows.

image

image

If you do this, I suggest hiding columns you don’t need to help with performance.

I was able to turn off paging like @dcamlin tried, but it’s a little buggy. You have to turn on server paging and off again for the page size to be set to 0 (all rows).

4 Likes

All,

This is amazing information! I'm going to look through it with our developer and I'll be sure to report back. Thank you all for your time.
1 Like