July 20, 2023 / Experimental 🥹 new Grid View and 🏛️ Columns Layout in Docs

Oh, I hope one morning you will wake up and all your tables will be grids.

5 Likes

Not relevant to this topic, but Do we have plan for rebuild References, I’m still depend on those backlinks querry so much. I’m heavy using dataview (an Obsidian plugin) to query things. it’s really mess when i have a tons of backlinks without filtering it

2 Likes

Thank you for releasing this early view of the table/grid view. It looks very promising. Here are a few comments so far:

Grouping by other fields

I couldn’t agree more. I think being able to group rows using other field types is really important. Current structure which requires relations, limit usability. It is missing in other areas of fibery as well (e.g. smart folders and lists). Board view and timelines support additional grouping options for the bins/lanes. I hope the same could be extended to grid/table view. I am hoping that in the future it would be even possible to define custom groupings per view based on things like numerical values or dates.

Collapse/expand button

Currently, the collapse/expand buttons are combined with the database icon which appears next to the name field. However, if you don’t display the name field, you no long are able to control expanding/collapsing of the list. I think that expansion/collapse should be independent of the name field and appear as needed in a reserved space to the left. This also addresses use case where the name field may not be the first field (as per @PsyRoelofs above):

I think this is also may resolve the related request to make database icons optional.

Aggregate functions

I assume aggregate functions for columns are coming in future iterations of grids/tables but I wanted to mention it again. I also hope that aggregate functions would be possible on grouped items (e.g. subtotals) as well as the entire table.

Column header controls

I know fibery has adopted a particular style for creating view settings (like sorting, filtering, formatting, …). However, I think that it would be a massive improvement if these settings were either moved to column headings or were at least available there (per this request). This is a very common pattern with most applications that deal with tabular data and I think more intuitive for average users. It also allows field/column type specific settings (e.g. specific sorting & filtering for dates vs. numeric fields …) to be available. I know in the current version there are some options available on left-clicking. I am just mentioning this to see what is the ultimate plan.

It would also be great if users had a bit more control on how columns are formatted, like changing the horizontal alignment (left, centre, right) or even option to change font weight, all controlled from the header.

Table quick search/filter

As has been discussed extensively here, having the ability to quickly search/filter a view (similar to the manner excel tables allow) would be a huge improvement to tables and something I hope is going to be integrated.

Combined gantt timeline

+1 for this. It would be quite helpful to see this. However, it might be more optimal to allow addition of more columns to the timeline view.

3 Likes

Delivered today

2 Likes

About the New Grid View: It would be useful to be able to combine databases in one column.
In some uses cases that can save space, and also is desireable, for example:
I some of my entities have a many to one relation (parent relation) to project
Other entities have a many to many relation to a project. To currently require these colums to be separate is a tension that similar apps don’t have.

Do you mean combine fields/columns from related DBs in one Table? Like a join?

I guess @Yuri_BC means that it is possible that some columns (=fields) in grid view may only exist/have content for one type of entity, so some cells in that column are just unused space.
If more than one such column exists, they could be combined, if the gaps in one column match the occupied cells in the other, and vice versa.

1 Like

This indeed is not about database joins (editable lookup fields in views table) what @Matt_Blais refers to, although that is an interesting feature also.

What I referred to is indeed more a display format feature of the table, in which fields can be combined to show in the same column. I came across this when I saw this in a view with multiple first level entity types, in which the related ‘hub’ entities in a many to one task relation are shown in a different column than the many to many project relations:

Apart from this particular example, there are several use cases where displaying multiple values of different entity types in one cell can be beneficial. Here are a few examples:

  1. Contact Information: In a customer database, you might want to display a customer’s contact information (phone number, email address) in a single cell. This can save space and make it easier to copy all contact information at once.
  2. Address Information: Similarly, for an address, you might want to display the street, city, state, and zip code in one cell. This can make the table more compact and easier to read.
  3. Product Details: In a product inventory, you might want to display the product name, SKU, and price in one cell. This can make it easier to get a quick overview of the product without having to look at multiple columns.
  4. Event Details: In an event calendar, you might want to display the event name, date, and location in one cell. This can make it easier to see all relevant information about an event at a glance.
  5. Employee Information: In an employee database, you might want to display an employee’s name, position, and department in one cell. This can make it easier to get a quick overview of the employee’s role in the organization.
  6. Financial Data: In a financial report, you might want to display the quarter, revenue, and profit in one cell. This can make it easier to compare financial performance across different quarters.

I can see that this example (where one type has a to-one relation to another db and another type in the same grid view has a to-many relation to the same db) makes a lot of sense to combine them.
Although I could imagine some users might be confused why they can add multiple values in some cells but not in others.

For the other examples you gave, they seem to only save space if you have a lot of entities (of the same type) that have empty values for different fields, e.g. in example 1. some contacts have an email and not a phone number and others vice versa.
However, for example 3 I don’t see the benefit -surely all products will have name, SKU and price, so there’s no space to be saved is there?

Out of interest, where you have databases where the data might be ‘sparse’ (each entity having a few empty fields, but not the same empty fields in each case) is the list view perhaps a better option that grid view?

At this point, the list view I like a lot for easy navigation, but when it includes many fields, I find confusing because they can appear irreguarly horizontally listed.

For the use cases mentioned I’m more thinking in the direction of a proposed new Gallery View. I won’t go in detail here, but I used Gallery views a lot in other applications. See New view type: Gallery View

Leveraging Field Combination in Fibery: Insights from Drupal’s Approach

1. Potential Issue in Fibery: Fragmented Data Display

  • Fibery’s default setup I see often results in fragmented information across a single page.
  • My temporary solution involves activating a unified field that merges all databases, restricting the display to entities that have a direct relation.
  • However, this method falls short when trying to amalgamate fields from diverse entities into a single cell or card.

2. Drupal’s Approach: Utilizing ‘Global: Custom Text’ and Field Tokens

  • Drupal’s Views module enables the creation of a ‘Global: Custom Text’ field in the views table, which can incorporate field tokens. See also https://www.drupal.org/project/token
  • This allows a single table cell to present a combination of token outputs. For instance, a cell could display a user’s name, email, and last login date all together.

3. Advantages of Field Tokens

  • Field tokens provide a user-friendly, code-free method for users to customize the output of a field.
  • They can be used to display a field in a variety of formats. For example, a date field could be displayed as “July 7, 2023”, “07/07/2023”, or “2023-07-07” depending on the token used.

4. Suggestion: Enhanced Integration of Field Tokens in Fibery

  • Fibery currently employs tokens within its automation features.
  • An improvement could be the introduction of ‘lookup tokens’ in Fibery views, enhancing the adaptability and compactness of the output. For instance, a lookup token could be used to display the name of a related entity directly in a view, without needing to navigate to the entity itself.

Conclusion

  • Enhancing token integration in Fibery could offer users greater control over entity field displays, addressing a frequent request within the community.
  • I am available to provide additional examples or engage in further discussion if needed.

You could add a formula (text*) field to every (relevant) database, called ‘Global’ whose contents varies from db to db.
Then you could enable Global on any view, and would see the relevant info from each entity.

*Fwiw, I don’t think Fibery will support variant data types any time soon.

1 Like

Quick feedback on the Fit All Columns feature. Currently it only is available for Creator permission users. But using it doesn’t push out column widths to non creator permission users. Everyone else still has to drag sizes to make them appropriate widths.

When grid is officially released, can this feature be available to everyone, or if not can the ‘fit all columns’ widths be the default widths for every user?

3 Likes

I really really like the new grid view which I start to use instead of list view and table view.
One thing I really miss is the ability to edit cells à la excel (which is also the behaviour on the AG grid demo) : enter in edit mode when you start typing (and not after a double click or the enter key).
For example, if you want to replace a value, you currently need to press “supp”, then “enter” and start typing…
I think it is the default behaviour on most of editable table and the most efficient.
Please :face_holding_back_tears:

1 Like

Do you mean Number field editing? It should work for Text field, as for Number field it is a bug we will fix

Currently, the editing is triggered not only by the “enter” key but also by alphanumeric keys, which is great.
But this first key is lost.
For what I tested, this is true not only for number cells but also for text cells and entity/options cells.
But this is on a good way, thanks… just this bug for the first key !

Grid view feedback:

  • BUG: When using the mouse to open an entity from grid view (i.e. the little “Open a new panel on the right” button), the keyboard focus is not switched to the new panel, so hitting Esc closes the grid panel on the left instead of closing the newly opened entity panel on the right.
    If you open the entity using Space, hitting Esc works as expected and closes the entity panel on the right.
    The same issue occurs if you use a grid cell’s right-click/popup menu to open the entity in a new panel (“Expand”).

  • BUG?: The “current (highlighted) cell” should only be highlighted when it has the keyboard focus. If you click away, the cell remains highlighted, but now it does not respond to the keyboard.

  • BUG: After drag-reordering some columns, Hiding a displayed column causes the column ordering to revert to some earlier state/default.

  • REQUEST: Can we pretty-please get PageUp, PageDown, Home, End, and Shift-cursor key combos to work in the standard, expected way in Grid views, for moving the current focused cell and selecting multiple cells?

  • REQUEST: Now that text fields can display embedded newlines correctly in entity view, it would be fabulous if editing a multi-line text field in a Grid view would pop up a multi-line input field.

  • REQUEST: Ability to wrap the contents of a column to multiple lines (tricky, I know).

  • REQUEST: When opening a related entity in a cell by clicking its little triangle, allow holding Ctrl or Shift to open the entity in a new browser tab or window.

  • REQUEST: Ability to “Expand All” and “Collapse All” rows. Or perhaps Expand/Collapse should operate on all rows within the current selection?

  • REQUEST: Include “Edit” option in column headers for Buttons .

  • BUG: Impossible to use Context menu on a multi-row selection - so records can only be unlinked one at a time :roll_eyes: Also, “Unlink” is not in the Actions menu.

  • BUG?: Sometimes there is no drag-handle shown on rows in a Grid view - maybe because Name column was hidden/shown/moved, etc?


3 Likes