Countfire estimate uses powerful filtering (rather than a fixed traditional tree structure) to help you navigate around your project.

This filtering gives you exceptional flexibility when completing estimates and producing reports.

A basic filter looks something like this: "discipline:Lighting zone:Tenants"

The result of which will filter your estimate to items within the "Lighting" discipline and the "Tenants" zone.

There are two types of filter (numeric and text) plus a few special filters related to kits.

Search operators

Search operators are tools to control how Countfire estimate displays data.

There are 3 types of search operators:

  • Standard operators

  • Logic operators

  • Special operators

Standard operators

Operator

Description

Columns

:

Contains

Text and number

=

Equal to (exact match)

Text and number

<

Less than

Number

<=

Less than or equal to

Number

>

Greater than

Number

>=

Greater than or equal to

Number

Logic operators

Operator

Description

Columns

and

In addition to

Text and number

or

Either or

Text and number

Not

Excluding

Text and number

( & )

Contrain within

Text and number

Special operators

Operator

Description

Columns

Known

Value is known

Text

Unknown

Value is not known

Text

Confirmed

Kit is confirmed

Specific to kits

Unconfirmed

Kit is not confirmed

Specific to kits

Auto

Any auto linked items

Specific to kits

Searching

By default, searching works across all columns.

It's also possible to limit search to a specific column by providing a column name, operator and value to search for.

For example, "discipline:lighting" will only search for items that contain the word "lighting" in the discipline column.

Using standard operators

Contains vs exact match

You can use ":" & "=" to narrow or broaden your search.

For example, say you have the item names "Socket", "Cleaners socket" and "Spur". Using a contains search ( : ) and searching for "name:socket" will find both the sockets and cleaners sockets (because both contain "socket").

However, using an exact match search ( = ) and searching for "name=socket" will only find the sockets (and not the cleaners sockets, because "Cleaners socket" is not an exact match).

When searching within number columns, all searching is exact match and both ":" and "=" work the same. IE: both quantity:18 and quantity=18 will find items with quantity of 18 but not 180 or 118 etc.

Less than & greater than

Numeric columns can be searched using less than ( <, <= ) and greater than ( >, >= ) operators.

For example, if you want to find all items with a quantity of 18 or more, you could use "quantity>=18"

Using special operators

There are a few special values that can be used to search on a column.

"known" and "unknown" work on text columns, while "confirmed", "auto" and "unconfirmed" work specifically with kits.

Below are some example uses of special operators:

Operator

Description

zone:known

Find items where the zone is specified (not empty)

zone:unknown

Find items where the zone is not specified (empty)

kit:known

Find items that have a kit linked (irrespective of whether that kit is auto, unconfirmed or confirmed)

kit:unknown

Find items that don't have a kit linked

kit:confirmed

Find only items with confirmed kits

kit:unconfirmed

Find items with unconfirmed, auto or no kits (the opposite of kit:confirmed)

kit:auto

Find items with auto or no kits

Using logic operators

Filters can be combined with "and", "or", "not" and brackets "( and )".

Operator

Description

and

Both filters being searched need to be found for the row to be included

or

Either of the two filters being searched need to be found for the row to be included

Not

If the filter matches, the row is excluded rather than included

( and )

Can be used to combine the above into an advanced search

Space between unquoted filters are treated as "and" operators (like Google).

For example, searching for "socket power" would find rows that contain "Socket" in any column, and contain "Power" in any column.

Because of how likely it is that "Socket" can only be found as part of the name, and "Power" as part of the discipline, this can be a quick way to find what you want without needing to use logic operators.

However, if you want to find "Sockets" but not "Cleaners sockets" you'll want to take advantage these logic operators.

You could achieve the above in a couple of ways:

  • Use "and" and "not" EG: socket and not cleaners

  • Because spaces are treated as "and" logic operators, we could also remove "and" EG: socket not cleaner

  • You could also use the exact match standard operator EG: name=socket

You can also combine it with other searches. For example, if you want to see sockets & spurs, but not cleaners sockets you could use: (socket not cleaner) or spur

Case sensitivity

Searching is not case sensitive. IE: Name:Socket , name:socket , NAME:SOCKET, nAMe:SoCKeT will all produce the same results.

The special keywords "and", "or" and "not" are also not case sensitive.

Double quotes

Generally, spaces within filters are not significant. IE: name:socket, name : socket, name : socket are all going to produce the same result.

However, if you want to search for text that contains space in the middle (EG: Type B), you'll want to wrap your search term in double quotes so the phrase is treated as one thing.

For example, name:"type b" will find items that have names like Type B, Type BE etc.

It might seem like double quotes are unnecessary, however, there are situations when they are the most precise way to specify what you're searching for.

Let's assume you instead search for name:type b . The missing quotes will result in the filter being treated as two separate filters and you're essentially asking to find items where the name contains "type" and also "b", across any column within a single row.

As you can see in the above example, it has matched items with the name "Type C" and also the zone "Building 1", because it matches on "Type" in name and "B" in the zone all in the same row.

Items columns


Below is a list of all item column names that can be used with search and filters:

Operator

Columns

name

Text

discipline

Text

drawing

Text

zone

Text

quantity

Number

kit

Text

kit:confirmed

Text

kit:unconfirmed

Text

kit:auto

Text

kit:known

Text

kit:unknown

Text

unit_material_buy

Number

unit_material_sell

Number

unit_material_profit

Number

materials_buy

Number

materials_sell

Number

materials_profit

Number

materials_markup

Number

materials_profit_margin

Number

unit_labour_hours

Number

unit_labour_buy

Number

unit_labour_sell

Number

unit_labour_profit

Number

labour_hours

Number

labour_buy

Number

labour_sell

Number

labour_profit

Number

labour_markup

Number

labour_profit_margin

Number

unit_buy

Number

unit_sell

Number

unit_profit

Number

buy

Number

sell

Number

profit

Number

markup

Number

profit_margin

Number

Kit columns


Below is a list of all kit column names that can be used with search and filters:

Operator

Columns

manufacturer

Text

part_code

Text

description

Text

quantity

Text

unit_material_buy

Number

unit_material_sell

Number

unit_material_profit

Number

materials_buy

Number

materials_sell

Number

materials_profit

Number

materials_markup

Number

materials_profit_margin

Number

labour_hours

Number

labour_buy

Number

labour_sell

Number

labour_profit

Number

labour_markup

Number

labour_profit_margin

Number

buy

Number

sell

Number

profit

Number

markup

Number

profit_margin

Number

Did this answer your question?