CollabPortals

Filter & Sort Controls

Give portal users their own filter, search, and sort controls on a table. Configured per table and per role, applied server-side, and only ever narrows what the role can already see.

Overview

Filter and sort controls let the person looking at a portal table narrow it down themselves: filter by a field, search across text fields, and sort the results. They are configured per table (and per role) in the admin UI, and they apply on top of what the role is already allowed to see.

This is most useful once a role can see every record in a table. A directory of hundreds of contractors or a board of every open job is hard to use without a way to search and filter it down.

How It Relates to Other Filtering

These controls are end-user facing and optional. They are separate from the admin-side record filter, which is a fixed condition you set, and from linked-record scoping, which limits a user to their own rows.

The controls always compose on top of those: they can only narrow the list further, never widen it. A user can never use them to see a record the role was not already allowed to see.

Enabling Them

  1. 1

    Open the Display tab and turn the controls on

    Open the table in the admin and go to the Display tab. Scroll down to the Filter & Sort Controls card and turn on Enable filter, search and sort. A layout picker and four field lists appear.

  2. 2

    Choose which fields users can filter, sort and search

    Pick the fields for each list. You are choosing what the controls offer, not changing what the role can see.

    • Filter layout: where the controls sit on the page, a left sidebar or a row above the records. Leave it on Default to keep what each view type has always used: a sidebar for a gallery, a top row for everything else.
    • Filterable fields: the fields users can filter on. Fields with a fixed set of values (single select, multiple select, rating, linked records) get a list of the values on that table. Number fields (number, currency, percent, count, auto number) get a min and max box instead.
    • Lookup fields are filterable when they pull through a select, a linked record or a sync source. Those get a list of values just like the original column does. Number and date lookups are not offered: a number column is filterable on its own but gets a min and max box, and neither that nor a date can be matched through a lookup. A lookup can hold several values on one record, so it always matches by "contains one of the values you picked", the way a multiple select does.
    • Sortable fields: the fields users can sort by.
    • Search fields: the text fields the search box looks through.
    • Groupable fields: the fields users can group the table by. Leave every field unticked to keep the grouping you set under View Layout fixed. Lookups can be grouped by on the same terms as filtering: a lookup of a single select, a multiple select or a linked record is offered, and a record holding several values is counted once, in a group named after the whole set.

    Save the portal and the controls appear on that table's pages.

    The Filter & Sort Controls card on the Display tab, with the enable toggle on and Rating, Property Type, Address and Tenant Name chosen across the filterable, sortable and search field lists
    The Filter & Sort Controls card. Turn the controls on, then choose which fields are filterable, sortable and searchable.

What Users See

The same controls render in both layouts, sized to fit. Filters are staged as the user selects them and only take effect when they press Apply (or Enter in a box). For a single field, ticking several values matches any of them. Across different fields, all of the conditions must match. The current filters are reflected in the page URL, so a filtered view can be bookmarked or shared.

Which layout a table uses is up to you, under Filter layout. The two below are the defaults.

A filter panel runs down the left side with the search box, a section per filterable field, and a sort control.

A portal gallery page with a Filters panel on the left containing a search box, Rating stars and Property Type checkboxes, narrowed by a search to a single matching property card
Gallery view: the search box and filter panel narrow a property directory down to the one record the user is after.

Table view

A toolbar sits above the table with the search box, a button per filterable field, and an Apply button. The Apply button counts what is waiting, so it reads "Apply 2 filters" once two values are ticked. Clicking a column header sorts the whole table.

On a table with enough filterable fields to fill the row, the buttons wrap onto a row of their own beneath them rather than being squeezed in beside the last one. With only a few filters they stay on the same row.

A portal table page with a toolbar above it holding a search box, Status and Type filter buttons and an Apply button
Table view: the same controls as a toolbar across the top of the table.

On narrow screens both layouts collapse to a single Filters button that opens the controls in a panel.

The sort control follows the view, not the layout. A table view is sorted from its column headers, so it has no separate sort control wherever its filters sit. A gallery has no headers, so its sort control travels with its filters.

Number fields

A filterable number field gets two boxes, a minimum and a maximum. Either one on its own is a valid filter: a minimum alone means "this much or more", a maximum alone means "this much or less". Both bounds are inclusive.

Under the boxes is the range that field covers across the records the person can see, so it is clear what there is to filter. It does not change as they page through the list or narrow it with other filters. On a table of more than 500 records the range is not shown at all, because it would be worked out from part of the table and could name a maximum well below the real one. The boxes still work; there is just no hint above them. Records with the field left empty are never matched by a number filter, including by a maximum: an empty cell is not a zero.

Percent fields are typed the way they read, so 50 means 50%.

Grouping

If you ticked any groupable fields, a Group by picker appears with the other controls, at the right of the toolbar's last row or as its own section in the sidebar. Unlike the filters it takes effect as soon as it is picked, with no Apply, because it only changes how the records already on screen are arranged. Picking No grouping turns it off even when you have set a default grouping under View Layout.

Grouping is table view only, and it needs the whole result set, so a table over 500 records shows ungrouped until it is filtered down. See View Types for the details.

Notes

  • Filtering and sorting run server-side, so they stay correct across pages on large tables.
  • Date range filters are not included yet. Use the admin record filter for those cases for now.
  • Duration, formula and rollup fields cannot be given a number filter yet, even when they hold a number.
  • A rating field shows as stars and can be filtered by the number of stars, rather than as a min and max.
  • Kanban and calendar pages do not show these controls. They appear only where that table is a related tab on another record, inside the view's own control bar, so the layout choice does not apply to them.

Next Steps