cancel
Showing results for 
Search instead for 
Did you mean: 

Best way(s) to handle data with many columns in a table?

Former Member
0 Kudos

I have a need to display large (wide) datasets in a table, but the problem that I'm running into is that there are often so many columns that performance is very poor (unacceptable).

  • The columns and rows are based on the user's data and it is entirely within reason for that data to consist of several hundred columns, as well as several hundred rows.
  • Because it is driven by the user's data, there is no way to prioritize a subset of columns to display and hide the rest (the expectation is that all are readily available).
  • The cells must be editable (think Excel).
  • OData is not an option, only JSONModel. (I am not in an SAP environment and am limited by the existing APIs available)
  • I'm currently using sap.m.Table.

I've been trying to find examples of this, but so far all I have found is documentation stating that many columns should be avoided. If there are any "best practice" or already implemented ways for doing this, that would be great to hear about.

So far the "best" solution I have is to implement column paging in the UI, but I'm not yet convinced that this is the way to go.

Any suggestions?

Thanks,

Sophie

Accepted Solutions (1)

Accepted Solutions (1)

former_member182862
Active Contributor
0 Kudos

HI Sophie

FYI, I have facing the same problem. We are writing our own table control.

Thanks

-D

Former Member
0 Kudos

Dennis,

Given that large tables are by no means a rarity (particularly in the SAP world) it is somewhat surprising to me that there is still nothing available (even as an alternative to "Table", but that could function similarly). My guess is that the other teams that are internally hitting this problem are forced to take the same path that you are and create their own implementation of Table. Given the desire for consistency across products, if this really is happening it would seem like a good reason to include it in the main library - otherwise large tables in the different applications will be slightly different. Unfortunately even if we could get so lucky as to have a Table like that added to UI5, it would already be too late to be helpful for either of us.

Are you completely starting over with Table, or just aiming to implement a similar concept for tables that already exists for rows: to only render what is visible on the screen, then swap out the data as the user scrolls horizontally?

Thanks,

Sophie

former_member182862
Active Contributor
0 Kudos

Hi Sophie

Disclaimer: I work for SAP but I am NOT in the SAPUI5 team. And I have no influence over what the SAPUI5 team deliver. I am fortunate to have the opportunities to work with a few key peoples in the core SAPUI5 team.

Yes, in SAP world, we have tables with many columns.

Yes, a team member is creating a table control to not render the columns if they are not visible. Just like the rows.

Thanks

-D

Former Member
0 Kudos

Hi Dennis,

I understand that all too well (I was with SAP for just over 6 years, prior to my current position). I was just thinking of it from a product consistency standpoint - not that you personally have any affiliation with the UI5 team. It'd just be nice if they felt a little pressure to help out their own (as it isn't just external folks running into this problem).

Now that I know at least someone else thinks that the best solution is to implement the column rendering, I will add it to the list of possibilities. It's also nicer to just handle that for the user, rather than forcing them to page through their columns.

Regards!

Sophie

Answers (0)