Resource Filters
The resource filter component narrows the planning boardPlanning boardThe main graphical scheduling surface where dispatchers drag tasks onto resources across a timeline. to the resourcesResourceAn entity that can carry out work - a person, vehicle, tool, or room - that you schedule on the planning board. the planner actually cares about right now. In an organization with hundreds of resources, no planner is ever working with all of them at once: a dispatcher handles a single team, a service planner needs people with a specific certification, a regional planner cares only about their region. Without a way to filter, the planner has to scroll past everyone every time.
The filter answers that with two equally important interfaces. A query builder for the planner who knows the criteria up front and wants to compose them by hand, and a one-click filter icon on the task grids that turns a task's own requirements into the filter automatically. The same filter mechanism feeds both, so any filter assembled one way can be tuned the other way.
Whatever the planner filters on (skills, regions, departments, certifications, anything else relevant to the business) comes from the back-office application. The component just plays with the data it's given.
Building a query​
A filter is built from rules, optionally organized into groups, joined by operators.
A rule has three parts:
- The filter groupFilter groupA configurable set of fields used to filter resources and tasks on the planning board. picks the resource property in question (department, skill, region).
- The rule type picks the operation (equals, does not contain, and so on).
- The filter valueFilter valueA single value inside a filter group, used as a qualification on a resource or a requirement on a task. picks what to compare against.
A simple example: "department equals Service". When applied, the resource grid drops anyone outside the Service department.

For anything beyond a single dimension, query groups package related rules together, and an operator decides how the rules and groups combine. The example below filters down to resources in the Service department who also hold either the Accessories or Office Equipment skill:

This is where the query builder earns its place. The planner can express arbitrarily nested ANDs and ORs without leaving the UI; the more specific the criteria, the more targeted the resulting board.
Saving and sharing a filter​
A useful filter rarely stays useful only once. The component is stateful, just like the grids: save it as a layout, share it with the team, set it as the default so it applies on every login. Defaults live per profile, so a dispatcher's profile can boot with their team's filter pre-applied while a regional planner's profile starts with theirs.
The icons in the top bar match the standard grid pattern: apply, reset, load, save, save-as, manage. Apply commits the current filter to the planning board's resource grid; reset clears it. The reset button is also surfaced directly on every planning board for quick access, so the planner does not have to come back here to clear the filter.
One-click filters from a task​
The query builder is the precise tool. The filter icon on each row of the open tasks and planned tasks grids is the fast one.
Tasks ship from the back office already tagged with the filter values they need (a service order's skill requirement, a delivery's region, and so on). Clicking the row's filter icon translates those tags into a query and applies it immediately. No typing, no remembering which skills the task demands; the data already knows.
If the result is not quite what the planner expected (too narrow, too wide, missing a constraint), tweak it in the query builder. Adjustments here do not change the task itself, so the next click on the row's filter icon returns to the original query.