Skip to content

Text Filters ​

As well as supporting configuraiton of filtering through a popup menu, there is the ability to filter items by a simple text input. The following outlines the available syntax for different filtering options.

Overview ​

The following rules are used across all text search types:

  • String Splitting : A single text filtering string is split into multiple filters split by a space (i.e. searchA account:searchB would search for searchA and account:searchB). If there is the desire to filter an item that has a space in it, then quotes can be used (i.e. search A" account:"search B would search for search A and account:"search B").
  • Prefixes : For each type of filtering ther are different prefixes wchih can be used (outlined below). For example account:search would search the account name for search.
  • Exclude : Putting a ! in front of a search inverts the search. So !account:search would search for account names that don't include search
  • Default Action : For any search item that doesn't have a prefix, there will be a default action applied. There is also a defaut action for search items that don't have an existing prefix, and start with a !.
  • Multiple Of Same Prefix : When there are multiple of the same prefix or action, then the way this is handled depends on the prefix / action.
  • Boolean Prefix : Some filters are a boolean (yes / no) filter. For these items the filter prefix and exclude filter prefix are used (i.e. cash: and !cash:), rather than writing true or false (i.e. cash:true and cash:false). Any text written after the colon is ignored (i.e. cash:false and cash:cash is the same as cash:)
  • Case Sensitivity : All text filters are case insensitive.
  • Filter Wildcards : Wildcards can be used in string filters that align with the underlying database (postgres). The following wildcards are supported:
    • % : Any number of characters (including none)
    • _ : Any single character
  • Range Filters : For filters which are filtering within a range (i.e. max: and min:), the ! vresion of this doesn't make sense. So the ! version of htese filters will function that same with or without the ! (i.e. !max:100 and max:100 will both filter for items with a maximum of 100).

Journals ​

PrefixDefaultFormat / OptionsSearch FunctionDuplicates
description:YstringJournal Descriptionor'ed together
max:numberMaximum journal amountMinimum is used.
min:numberMinimum journal amountMaximum is used.
linked:booleanJournal is "linked"Last is used
reconciled:booleanJournal is reconciledLast is used
checked:booleanJournal has had data checkedLast is used
complete:booleanJournal is completeLast is used
transfer:booleanJournal is part of a transferLast is used
note:booleanThe transaction has at least one note linked to it.Last is used
reminder:booleanThe transaction has at least one note that is a reminder linked to it.Last is used
file:booleanThe transaction has at least one file linked to it.Last is used
before:YYYY-MM-DD or YY-M-DDJournal date is before dateearliest is used
after:YYYY-MM-DD or YY-M-DDJournal date is after datelatest is used
month:YYYY-MM or YY-MJournal date is in chosen monthor'ed together
payee:stringAt least one of the linked journal entries in the same transaction has a payee title.or'ed together

Linked Items ​

For linked items (account, bill, budget, category, tag, label), using the text before the search term for that item will search the related item. For example accounttype:asset will return all journals with an account that is an asset account. The inversion of this is also possible, so !accounttype:asset will return all journals with an account that is not an asset account.

The linked item title without another filter will use the default search for that item. For example account:search is the same as accountdescription:search, and !account:search is the same as !accountdescription:search.

Because of the way the filtering works, it is possible to have some unusual filters such as !account!type:asset which will return journals that don't have an account that isn't an asset. Also !accounttype:asset and account!type:asset will return the same results.

Shorthand Filters ​

For simpler searches fpr common linked items searches there are shorthands as shown below:

  • cash: -> accountcash:
  • !cash: -> account!cash:
  • type: -> accounttype:
  • !type: -> account!type:
  • networth: -> accountnetworth:
  • !networth: -> account!networth:
  • nw: -> accountnetworth:
  • !nw: -> account!networth:

Accounts ​

Accounts have the following search options, as well as the summary items

PrefixDefaultFormat / OptionsSearch FunctionDuplicates
id:YstringItem IDor'ed together
title:YstringAccount Nameor'ed together
titlecombined:YstringAccount Name and Group Combinedor'ed together
group:stringAccount Group Title search (combination of Group 1 / Group 2 / Group 3)or'ed together
group1:stringAccount Group 1 Title searchor'ed together
group2:stringAccount Group 2 Title searchor'ed together
group3:stringAccount Group 3 Title searchor'ed together
type:asset liability income or expense (Can be combined with , or |)Account Type searchor'ed together
cash:booleanAccount is a cash accountLast is used
networth:booleanAccount is a net worth accountLast is used
startafter:YYYY-MM-DD or YY-M-DD (Can be combined with , or |)Account Start Date is after dateLast is used
startbefore:YYYY-MM-DD or YY-M-DD (Can be combined with , or |)Account Start Date is before dateLast is used
endafter:YYYY-MM-DD or YY-M-DD (Can be combined with , or |)Account End Date is after dateLast is used
endbefore:YYYY-MM-DD or YY-M-DD (Can be combined with , or |)Account End Date is before dateLast is used
status:active / disabledAccount status matches termor'ed together
active:booleanAccount is activeLast is used
disabled:booleanAccount is disabledLast is used
allowUpdate:booleanAccount allows updateLast is used
importId:stringImport ID matches valueor'ed together
importDetailId:stringImport Detail ID matches valueor'ed together
note:booleanHas at least one note linked to it.Last is used
reminder:booleanHas at least one note that is a reminder linked to it.Last is used
file:booleanHas at least one file linked to it.Last is used

Bills, Budgets, Labels ​

Bills, Budgets and Labels have the following search options, as well as the summary items

PrefixDefaultFormat / OptionsSearch FunctionDuplicates
id:YstringItem IDor'ed together
title:YstringCombined Titleor'ed together
status:active / disabledAccount status matches termor'ed together
active:booleanAccount is activeLast is used
disabled:booleanAccount is disabledLast is used
allowUpdate:booleanAccount allows updateLast is used
importId:stringImport ID matches valueor'ed together
importDetailId:stringImport Detail ID matches valueor'ed together
note:booleanHas at least one note linked to it.Last is used
reminder:booleanHas at least one note that is a reminder linked to it.Last is used
file:booleanHas at least one file linked to it.Last is used

Categories, Tags ​

Categories and Tags have the following search options, as well as the summary items

PrefixDefaultFormat / OptionsSearch FunctionDuplicates
id:YstringItem IDor'ed together
title:YstringCombined Titleor'ed together
group:stringGroup Titleor'ed together
single:stringSingle Titleor'ed together
status:active / disabledAccount status matches termor'ed together
active:booleanAccount is activeLast is used
disabled:booleanAccount is disabledLast is used
allowUpdate:booleanAccount allows updateLast is used
importId:stringImport ID matches valueor'ed together
importDetailId:stringImport Detail ID matches valueor'ed together
note:booleanHas at least one note linked to it.Last is used
reminder:booleanHas at least one note that is a reminder linked to it.Last is used
file:booleanHas at least one file linked to it.Last is used

Summary Filters ​

The following are available on the linked item lists (i.e. account, bill etc...), and can only be used in the item specific filtering as these don't work as nested filtering for journal filtering.

These filters filter the list based on aggregate data (sum, count, max date, min date) from journals associated with the linked item.

PrefixDefaultFormat / OptionsSearch FunctionDuplicates
min:numberSum of journal entries minimum valuemax
max:numberSum of journal entries maximum valuemin
mincount:numberMinimum count of journal entriesmax
maxcount:numberMaximum count of journal entriesmin
minlast:YYYY-MM-DD or YY-M-DDMinimum last journal entry datemin
maxlast:YYYY-MM-DD or YY-M-DDMaximum last journal entry datemax
minfirst:YYYY-MM-DD or YY-M-DDMinimum first journal entry datemin
maxfirst:YYYY-MM-DD or YY-M-DDMaximum first journal entry datemax