This may be more a feature request than a help request. What I’d like to know is if there is any possibility of automatically hiding (or showing) specific columns using filters as criteria.
For example, a table exists containing different categories of assets, let’s say “Desktops” and “Laptops”. The majority of this table’s columns contain data applicable to both categories, however, there are some that are relevant to “Laptops” exclusively, and others that only apply to “Desktops”.
When applying a display filter to show only one of the categories, is it possible to automatically hide columns that are not relevant to the filtered selection?
I appreciate that what I’m describing can easily be achieved by creating additional pages with pre-determined filters & column visibility. My desire to toggle columns is really more of a maintenance and organization issue than a functional one. The multi-page approach, while fully functional, presents two challenges that I feel could be eliminated with dynamic column visibility:
Despite having multiple categories, the data within the table shares commonality with many other columns and characteristics (Brand, OS, serial#, warranty, IP address columns, etc). As such, it is often necessary to view records from multiple categories at once. Ideally, I’d like to be able to filter the table to show specific “desktops” that are only Brand X and/or Brand Y that have operating system Z installed - and be able to view the resulting records without having to horizontally scroll through multiple columns that are empty & irrelevant because their contents are not applicable to the dataset chosen.
Since the records in all categories are closely related, display customization (adding a card widget to show a selected record’s warranty information, for example) is often applicable to ALL records. Having the ability to automatically toggle column visibility would eliminate the need to create (and maintain changes to) redundant widgets on multiple page views.
Using dynamic column display to essentially work with a single page view would also eliminate a significant amount of “clutter” in the left pane by eliminating the need for multiple filtered views (which would do wonders for my OCD lol).
I’m eager to hear any thoughts on the possibility and/or practicality of such a function. Thanks in advance for any insight!
Thanks for the reply! I’ve re-visited the page you linked, however, unless I’m missing something it simply describes the process for setting the ‘static’ visibility status of each column. I am very familiar with this function and use it regularly.
What I’m looking to do is make this visibility setting ‘dynamic’, so that when I filter the table to show only records in the “Desktops” category, any columns containing data specific to “Laptops” are automatically hidden. Similarly, when I modify the filter to include “Laptops” (or clear it altogether), those columns would automatically become visible again.
something like this would be useful for one of my scenarios also — in our Budget XL, we have different types of costs — staff costs, office costs, etc. All of them have some common column — quantity, unit cost, total cost, etc. But for staff cost, we track employee number, and a host of other attributes. So, it would be nice to have this kind of functionality that allows me to see the relevant details for a cost with only the relevant columns — for my need, a card layout is fine though.
The card widget is actually an interesting approach. Again, I’m not aware of any way to dynamically show/hide fields from the card layout based on filter settings, but having multiple widgets in place (and collapsing / expanding as needed relative to my filter criteria) is something I may need to try.
While it’s still not a fully dynamic display solution, expanding a single card widget that’s been pre-configured to show the columns relevant to the filtered data would be exponentially less cumbersome than hiding a dozen or more columns!
having multiple widgets in place (and collapsing / expanding as needed relative to my filter criteria)
Kirk, is it possible to do this programmatically so that a certain card can be shown when Office Cost budget line is looked at and another card can be shown and the first card minimized when a Staff Cost budget line is looked at?
No, not to my knowledge (but I’m far from being an expert on this app).
I’ve played around a bit with this since reading your comment, with mixed results. Using multiple card widgets on a single page allows for displaying (or hiding) column data with pre-determined criteria. The obvious “PRO” with this method is that is is exponentially more efficient to collapse one widget and expand another than it is to manually hide/unhide multiple columns. That being said, the “CONS” below prevent it from being optimal:
When expanding a collapsed widget, the page orientation structure is not preserved, meaning the sizing and placement of visible elements must be re-adjusted each time.
Using the card widget in this way obviously will only be useful when inspecting a single record’s data. The use of a table widget instead of (or in addition to) the card would allow the viewing of multiple rows of filtered data, but with the trade-off of having to collapse/expand TWO widgets instead of one.
Ultimately, it’s far from the “solution” I was hoping to find, but still an improvement that I wish I had thought of sooner. My python proficiency is virtually non-existing; I’m curious to see if any of the gurus here may be able to suggest some code that may allow for the widget displays to be manipulated automatically as filter settings are changed…
i haven’t tried it but i wonder if you could control that with “Access Rules” some thing like on a row by row basis if the rec.type == LAPTOP then display/hide that column. Didn’t really think it through but maybe? i’m not sure how that would work when you display both types at the same time. worth trying i suppose.
Another possibility is to create each shared column as a new column and use a formula to populate it like “shared col 1” would show the appropriate data for laptop vs desktop. then you could remove the non shared columns, display the shared column only. that would keep the layout consistent but each column would have the same name.