User settings are not saved for table

Hi all,

we have the strange behavior that user settings for a table are not saved. When the user changes which columns they want to see and closes the screen and enters again, the table is shown as before without the changes. settingsEnabled is not set to false, the setting exists in the database (sec$userSettings) and it works in one test system of ours but not in the other.
So my question would be what other settings are into the mix that save the settings? Is it a security issue and depends on user rights? I could not find sec$UserSettings in a role.

Thanks in advance!

Hello!

No, instances of UserSetting are saved by EntityManager that does not check security.

If you are still looking for UserSettings in the Role editor, select Entities tab and enable System level cehckbox:

Which version of CUBA do you use? Do you have default presentation for this table? If default presentation is applied for the table, changes that user makes will not be saved until checkbox with “Save changes automatically” is active.

Thank you, Roman!
We are using CUBA 7.2 and don’t have any presentations whatsoever in the DB (sec$Presentation is empty).
And I can’t spot any difference between the tables that work and those that don’t.

I got:

  • Table A is saving the settings
  • Table B does not save the settings
    And in another test system with the same application:
  • Tables A and B work

So I was just assuming it has to do with different users and permissions.
Maybe to make sure it works we could create a new presentation and add that to the table, but I did not find a way to set the presentation in the descriptor xml.

To enable presentations you should set:

<groupTable id="orderLinesTable"
            presentations="true"

And “settings” should be enabled too (true by default). See Presentations - CUBA Platform. Developer’s Manual.

If it is possible could you please share code of controller and descriptor where settings are not saved?

Also, try to check whether admin user or any with full access can save settings in the problemed table?

Hi Roman,

I can report new findings, it seems the settings get saved when I close the screen, at least they are correct in the database. It seems to be a problem when opening the screen that before applying the settings to the table, the columns get saved to the default presentation, then overwriting the correct settings. I was debugging that in the WebAbstractTable but due to time constraints had to hold that investigation.
Maybe this rings a bell for you, otherwise, I will continue to explore this mystery in a few days and hope to come to a solution.

Thanks!