Power table configureEditor based on row

I’m trying to do a sort of transposed table to edit. So basically I have UDT instance names as columns and the rows are tags in that UDT. Some are integers/doubles, some are bools. For the booleans, I want to have dropdowns (ideally checkboxes but I don’t want to mess with the renderer stuff right now). I can almost do this… except its all or nothing for the entire column, just the opposite of what I want.

Does anyone have a solution to change the editor by row somehow? I’d also take suggestions for displaying 20-something fields for a dozen UDTs or so. I wanted originally to have the UDT instance name per row, then have fields for the tags inside it, which would be “normal”, however there are just too many columns to read easily so I’m trying the transposed format. I’d like to find a way that can show the data well and edit it well at the same time, if I can’t get this transposed way to work.

Thanks!

If each group of data is uniform, which I take it to be since you’re using a table, you might have more success using templates and a template repeater/canvas.

For configuring the cell renderer on a per-row or even per-cell basis, you might find this article by Perfect Abstractions useful:
http://blog.perfectabstractions.com/2017/03/10/getting-even-more-out-of-your-power-tables/

Yeah I think I might have to go to the template/template repeater option. But the people using this screen would really like to see the data in an easily comparable way - with the template it would be readible but not always easily comparable. Maybe I can do a general view and a compare view that selects only a couple of fields, that could be good.

And I have had that in my bookmarks for a while now, I know where to go for that but its a pain I don’t want to get into just yet. Plus, it doesn’t really solve the problem because it would likely not have any difference between rows

Ahh, I think I see your issue now. Yeah I think you’re right, there’s no real support for a dataset with types that vary between rows.

I think your proposed template solution might be a good fit.
Though another option would be to ‘unpack’ the udt instance data into a dataset/table. In that approach, each row would be a single UDT instance, with the first column being the name, then the next column being member1, then member2, and so on. You could then use your own editor/renderer on a column level and still have support for column filtering and hiding.

Just a thought, not sure how applicable that will be for your case.

I do some transposing myself, and use the DatasetBuilder to set an explicit column type of java.lang.Object for such columns.

1 Like

I’m looking for specific rows (well, all columns in a row except for one) to be a boolean/checkbox, not the columns. But do you have any examples of how you use that with a transposed table?

I just display them, so no. But you can check the type of the value you retrieve. A boolean should be easily identified.