Filtered/linked choice lists?

Can the selection in a “primary” choice list be used to filter possible selections in a “secondary” choice list?

2 Likes

Technically yes, but it all depends on your situation. I’d say no you can’t in add/edit mode, unless you were willing to use visibility to show/hide several different secondary choice components based on the first selected choice. If you are in view mode, then you can use a choice component where the selected value will be immediately sent to the sheet to allow relations and lookups to update based on that first choice. Then the updated lookup column can be used for the second choice component. If you needed, you could perform all your selections in view mode, then use a form button to pull in those selections into the form to add a record.

2 Likes

Thanks! I had thought about the filter mode for visibility you describe but wasnt sure if or how the first choice selection value would be immediately available as a filter value.

Ditto the timing/delay of the update loop via the backend sheet.

I’m not sure what add/edit versus view mode means …?

When I say add/edit mode, I mean a screen, such as the add screen (plus button), edit screen (pencil button) or form screen (form button). Anything the requires the user to tap on a submit button to submit the changes to the sheet. When I say view mode, I mean a screen such as the detail layout where you are simply displaying the data. View mode does allow for entry components, but any changes to the be value in each component are immediately sent to the sheet without the need to tap on Submit.

Thanks for the clarification.
Makes perfect sense.

1 Like

This is my issue too. I would like to include filtered lists to an add/edit form. For example, if the user selects “wood” from a dropdown, then the next drop down would only show types of wood (not metals, plastics, etc.).

Is there a work around or any plans to add this feature?

1 Like

Take a look at my concept app here…it’s close to what you’re talking about:

experiments.glideapp.io

Robert, thanks for the suggestion. I’m not sure if that approach will work with an Add/Edit screen though.

In my app, I am trying to get the user to add selection data from two drop down lists, sequentially filtered. For example, the first dropdown list selection the user may choose is “Wood” (type of project) and then the next dropdown selection should be filtered to only include types of wood. (no metals, plastics, etc.)

Will your experiment example allow for filtered dropdown lists in the Add/Edit screen?

Yes. If I were to change those choice elements to dropdowns rather than inline selectors, they change dynamically.

If your choice values are fairly static and don’t change much for the first choice component, you could create multiple choice components with visibility, so if you select Wood in the first choice, only the types of wood choice component would show. If you picked Metals, the only the types of metals choice component would show. You can have multiple components writing to the same column, so that’s not a problem. You will get a warning but it can be ignored.

Could you please say more about how to accomplish this? I’m especially interested in how I might implement a hierarchical selection and then allow the user to record their selection in a form (along with other values). Thanks!

In a native way, a dynamic choice isn’t posible within a form (edit/add view). The Jeff’s suggestion is regarding to use visibility to show/hide other choice components within that form

Saludos

Thanks for your reply. I’m familiar with the method of using visibility to show/hide selection controls based on a prior choice. But it sounds like @Jeff_Hager has an alternative method in mind as well. I’m thinking he is suggesting the use of the “columns component” to insert values into a form based on the originating sheet/row (from where the form button is clicked). I’m new to glide, but this seems to be a promising approach based on a bit of experimentation. Would like to hear more from the veteran users, though.

I’m using a plan C but I’m testing it on my new APP, let me finish it and I will show a simple and small demo to help you and the others.

Saludos @lkenyan

On whichever screen you have your form button, create entry or choice components pointing to columns (preferably set as User Specific) in the sheet of the page you are on. You can make your selections here and they will be stored in the sheet. Then you can use the Column Values components in the form to get those selections. For a couple of examples, look at the Dynamic List Filter and the Booking examples in https://concepts.glideapp.io/. That should give you a better idea. The Dynamic List Filter example is using the first selection to build a relation for the second selection.

https://docs.glideapps.com/all/reference/privacy-and-per-user-data/user-specific-columns

2 Likes