This could be a paradigm problem, so let me know if that is the case.
We have created a page that our user works through a list of records (table) that need action taken on them. Each row on the list has a drawer with action buttons and more information. We have a few buttons that call a flow immediately, and we have a few popups that make changes to main table’s model.
Our user enjoys seeing what they changed upon save. However, when we use a button that calls a flow or a popup where changes are saved in the popup, the changes are not visible until we refresh the underlying model or the table, but that causes the user to lose their place on the page, and sometimes lose the record from the table if it has changed enough to be excluded from the table filter.
Is there a way to force a refresh on just one row in a model? I was also starting to think, maybe there is a better way to display this kind of task.
This is a really interesting challenge. By default the re-query action affects the whole model. And yes - that typically resets pagination, sort orders, etc. Disconcerting. Especially if data has changed in other ways and expected rows are no longer there…
There are sketchy solutions running around my head - but they all end up being really complex. Something like: Your flows and secondary actions could trigger refresh of a second model on the same object. And then once that model is requeried - you’d update the particular table row with the new data using the update row action. The tricky part would be accurately determiing what row in the original model to update. That might take some interesting events, code or trickery.
Alternately - the updates could just increase a UI counter - which showed the user the number of updated records they had saved - or how badly out of synch thier current model view was with the database. And give them the option to refresh the whole view. That way they know changes have been made, but control when it affects thier whole view.
Let us know what you come up with.
Hey @nkovash were you able to find a solution/fix for your users to be able to show the on click save?
@Germany3 Not quite yet. We are still iterating on what we want the UI to be, but in the short term we’ve settled for using a sliding panel with a page include with the details for the row. That way we can save the single row and refresh without affecting the master table. We still don’t have the changes instantly show up on the table though.
Instead, we added a UI-Only field to the master table that we mark true when the sliding panel has been activated. We use that field value to render some of the text differently on the master table (changing the color and making it italics) to indicate the row has been looked at or worked on, but the actual changes are not present.
I think Rob’s idea above of running two models side by side could work, but I haven’t tried to implement it yet.
Thanks for sharing that @nkovash and let us know how it goes when you begin implementing the solution. If you need any additional help, please feel free to reach out!
Thank you, I appreciate that!