How filters are structured
Filters are built from groups and conditions.- Conditions inside one group are joined with OR. Any one of them may match.
- Groups are joined with AND. Every group must match.
The parts of a condition
Every condition has four parts.
Exclude negates that one condition before its group is combined.
Exclude – Billable – is – true keeps everything that is not billable.
The ten operators
is any of and is none of take a list. When the field has a picker you tick several values. When it does not, type them separated by commas:
draft, sent, overdue.Number fields only get number operators
Some fields hold a number – an amount, a duration, a date. On those, only is greater than, is at least, is less than, is at most and is set are offered. is and is not are deliberately not available on a number field. They compare text against a number, so is would match nothing and is not would match everything, and both would look like a working filter while quietly giving the wrong answer. If you switch a condition from a text field to a number field, TimeTracker repairs the operator for you. It moves to is at least and clears the value. If the operator was already valid for both, your choice is kept.What you can filter on
The filter field list is exactly the column list – every field of the report’s source that you may see and that the source can calculate. Cost and revenue fields do not appear for a role that cannot view them.Time entries
Fields: Date, Day, Week, Month, Quarter, Year, Day of week, Member, Project, Task, Client, Billable, Approval status, Timesheet status, Invoice status, Source, Group, Manager, Job title, Employment type. Number fields: Date, Reported time, Labor cost, Revenue, Profit, Billing rate.Expenses
Fields: the five date buckets, Member, Group, Category, Project, Client, Billable, Date, Approval status, Invoice status. Number fields: Date, Expense cost, Billable value.Invoices
Fields: the five date buckets, Invoice, Client, Status, Date, AR aging. Number fields: Invoice (the number), Date, Invoice total, Subtotal, Discount, Tax, Paid, Outstanding.Projects
Fields: the five date buckets, Project, Client, Status, Health. Number fields: Budget, Actual cost, Tracked value, Forecast margin, Invoiced.Tasks
Fields: the five date buckets, Task, Assignee, Group, Section, Status, Priority. Number fields: Estimate (h), Tracked, Remaining (h).Timesheets
Fields: the five date buckets, Status, Member, Period, Group, Manager, Employment type. Number fields: Submitted, Approved.Time off
Fields: the five date buckets, Policy, Member, Group, Status, Unit. Number fields: Days, Hours.Timecard
Fields: the five date buckets, Member, Status, Group. Number fields: Scheduled, Worked, Late, Left early, Over scheduled.Counts and percentages are never filterable. A count belongs to a whole group, not to one record, so there is nothing on a single record to compare it against.
Pickers versus free text
Some fields hold an id behind the scenes – a member, a group, a project, a client, a tag. Typing a name against those would match nothing, so TimeTracker gives you a picker of real values instead.
With is any of or is none of, the picker becomes multi-select.
Each picker is permission-checked on the server. If your role may not read the list, the field falls back to a text box rather than showing an empty picker that would look like “there are none”.
How to add a filter
1
Open Filters
In the report builder, open the Filters section. With nothing set it reads: “No filters. The report includes every row in the period.”
2
Add a group
Click Add group. A bordered box appears with one starter condition.
3
Set the condition
Choose Include or Exclude, pick the field, pick the operator, then set the value.
4
Add an OR
Click Add condition inside the same group. The new row is joined to the one above with OR.
5
Add an AND
Click Add group again. The new group is joined to the previous one with AND.
6
Remove something
The X on a condition row removes that condition. The X at the bottom of a group removes the whole group. It only appears when there is more than one group.
Example
Priya Raman wants billable, unbilled work on Northwind Studio’s two Bluebird Coffee projects.
All three groups must match, so the report shows only billable, uninvoiced time on those two projects. She adds the Uninvoiced time and Revenue columns and now has the money still on the table.
To exclude one person from the same report, she adds a fourth group: Exclude – Member – is –
Ana Ferreira.
Temporary filters in the viewer
A report you cannot edit still lets you change the filters. Those changes are temporary and never touch the saved report. A banner appears while a temporary filter is active:Temporary preview You’re previewing with temporary filters. They won’t change this saved report.Two buttons sit beside it. Reset clears the overrides. Save as new report keeps them as a fresh report, and only appears if you can create reports.
Permissions
You do not need a separate capability to filter. What you can filter on follows what you can see:- A cost field only appears if your role holds
time.viewCost. - A billing field only appears if your role holds
rate.viewBilling. - Roster fields only appear if your role can read the roster.
- A picker only loads values your role is allowed to read.
What happens next
Filters are part of the saved report, so they travel with it into exports and scheduled emails. A scheduled report runs its saved filters, not whatever you last previewed.Common questions
How do I say 'A and B' on the same field?
How do I say 'A and B' on the same field?
Put each condition in its own group. Groups are joined with AND. Two conditions in one group would be OR.
What is the difference between 'is not' and Exclude?
What is the difference between 'is not' and Exclude?
They land in the same place for a single condition. Exclude is clearer when you want to negate a picker-based condition such as is any of, because you keep the list and flip the whole thing.
Why can I not use 'is' on an amount?
Why can I not use 'is' on an amount?
An amount is a number and the value box collects text. is would match nothing and is not would match everything. Use is at least or is at most instead.
Why is my field showing a text box instead of a picker?
Why is my field showing a text box instead of a picker?
Either the field’s value is the human text already – a job title, an employment type, billable – or your role may not read the underlying list.
Can I filter on a total?
Can I filter on a total?
No. Counts, distinct counts and percentages describe a group, not a record, so there is nothing to test per row. Filter on the underlying field instead.
Troubleshooting
Related guides
Build a report
The whole builder, section by section.
Report sources
Which fields each source offers.
Grouping and pivots
Nest rows and read subtotals.
Date ranges and periods
The period is a filter too.
Report permissions
Why some fields never appear.