I need to display 5000 editable rows in the grid

Certified Associate Developer

Hello everyone!

I need to display 5000 rows of editable rows in the grid - it’s about 2mb of data. First thing I have thought of is to fetch data from database with batches - to set a start index and a batch size and pass it to query entity expression, and then provide that result data subset to editable grid with implemented paging option (clicking back and next will trigger an update to a start index as well as a new batch to be fetched from database)

And I’m facing a problem finding an approach to update that data in the database after editing on the form when switching pages. Most probable storing 5k items in a local variable along with other data will cause memory issues while manipulating it for example

Is there any approach to achieve a desired goal?

  Discussion posts and replies are publicly visible

Parents
  • I strongly recommend against this design approach.  Not only is it very expensive (when even possible) to load this volume of data on-form into local variables, it quickly becomes very cumbersome to manage, do the necessary manual on-form paging operations, etc, and also is very tricky and cumbersome for the user to navigate through all of (and prevent them from accidentally clicking away).  Among other things.

    Instead, show a read-only grid with OOB paging implemented, and give each row a column with an "edit" icon.  When clicked, show that row's editable info in a little section below, and force the user to click "save" or "cancel" before proceeding to do anything else.  When they click "save", promote the updated values directly to the DB.

Reply
  • I strongly recommend against this design approach.  Not only is it very expensive (when even possible) to load this volume of data on-form into local variables, it quickly becomes very cumbersome to manage, do the necessary manual on-form paging operations, etc, and also is very tricky and cumbersome for the user to navigate through all of (and prevent them from accidentally clicking away).  Among other things.

    Instead, show a read-only grid with OOB paging implemented, and give each row a column with an "edit" icon.  When clicked, show that row's editable info in a little section below, and force the user to click "save" or "cancel" before proceeding to do anything else.  When they click "save", promote the updated values directly to the DB.

Children