Reordering Rows with Custom Action to mimic Independent Screen Configuration

I’m trying to mimic Independent Screen Configuration in the new version of Glide Apps.

I’ve successfully set it up to where I can individually setup each screen by creating a custom action with conditional logic.

My issue is that doing it this way seems to lock in the row order. I’d like to be able to reorder the rows as needed. Currently, when I move a row, the screen configuration does not move with it. Is there a way to keep them linked together?

Here is the way my action is currently setup:

“Title/1”, “Title/2”, “Title/3”, etc. are computed Single Value columns so that the titles of the page can be changed without breaking the conditional logic.

To give more context for my setup, I have an “Info” tab with a List Collection inside of it.
That list contains 40 possible options. About 10/40 need custom screen configurations, the other 30 use the same layout. Only 10-15 of these are active at any given time. It is for a conference and the viewable info changes throughout.

What if you used a different query column for each of these views? Query column allows you to set the sort.

Or you could do this all as one tab using a container for each view. Then use buttons to select a view and visibility controls to show whichever container is selected.

1 Like

I’ll look into using a query column, I haven’t used that column type yet.

Would you provide an example of how that could be set up for my use case?

I don’t think the second solution would be a good fit for my particular scenario.

Take a look through the Query column documentation; it’s actually an incredibly powerful column!

1 Like

Does the title ever change? If not, maybe you can set the condition by the title name itself.

Else, I think using the row’s rowID will work best. Though that isn’t very human-friendly when you want to go to the action to adjust something later.

Another idea, if you have a fixed set of options, is to:

  • Add a rowID column.
  • Join them all into a comma-delimited list and copy them to a template column (this step is to lock in the original order).
  • Split that template column using a split text column.
  • Use the “find element index” column to find the index of the current row’s rowID.

Using this, if you move rows around, the index won’t change since you locked the original order in the template column. Use the index to construct your action.

1 Like

Thanks! The titles can change, so I think using the rowID is going to be my best solution.

The index solution would work as well, but I’m using a Google Sheet as my data source, so it’s easy to look there and see the rowIDs I need.

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.