8.1. Find

The GnuCash Find dialog can be used to find transactions or to perform business related research on your data file.

8.1.1. Find Transaction

Find Transaction is used to search for transactions in GnuCash and display the results in a General Journal type tab. To open the Find Transaction dialog in you can type the keyboard shortcut Ctrl+F or from the main menu use EditFind... .

Search results differ depending on the tab from which you open it. Aside from the transaction fields Description, Number, Notes, and Date Posted, all of the searchable fields are part of individual splits, and splits are associated with a single account. When you open the Find Transactions dialog from an account register tab only the splits associated with that register will be searched. There is one exception, the All Accounts item, see the footnote about it in table Table 8.1, “Search criteria buttons - Split Search” below. For the transactions fields only transactions linked to a split in that register are inspecected and for the rest only the split attached to that account is, with one exception, All Accounts. If you filter the transactions in a register using View Filter By... , then only transactions in that account and shown by the filter will be searched. If you start from the Accounts page or a General Journal register then all splits in all applicable transactions (in the latter case those included in the register) are inspected.

Note

The first row of the Find Transaction dialog indicates that you are performing a Split Search.

There are two panes in the Find Transaction dialog. The top pane contains the Search Criteria buttons and the bottom pane contains the Type of Search selection.

There are two buttons in the top of the Search Criteria pane. The left button allows you to Add another criteria row to search for multiple criteria. The existing criteria row needs to be completed before adding a new row. The right button is used to Search for items where all criteria are met or Search for items where any criteria are met. The all criteria are met search requires all of the criteria rows to have at least one match. The any criteria are met search requires only one of the criteria rows to be matched.

The criteria row in the Search Criteria pane is used to combine different criteria buttons (see table Table 8.1, “Search criteria buttons - Split Search” for a comprehensive list of combinations)

In the Type of Search pane there are five selections. The first option is always enabled, the following three are available when you invoke the Find... option from a register window or after performing the first Find if the Find... command was invoked from any other window. The last option is available only for Business search.

New Search

Perform a new transaction search

Refine current search

Search within the results of the previous search

Add results to current search

Search based on the first set of criteria or the new criteria

Delete results from current search

Discard any results that match the previous search results

Search only active data

Search only if data are marked as active. This selector is greyed out for the Split Search as it is meaningful only for business related search

Note

When selecting search criteria keep in mind that criteria are applied to individual splits or fields in transactions, and that the entire transaction is included in the results. There is no visual indication in the results to indicate which split or field met the search criteria.

Once you've set the search criteria, you can press the Find button. You will be presented with the search results in a new register tab. A report of the search results may created and printed using ReportsAccount Report . The Account Report has limited formatting options but, like all GnuCash reports, being in html format, can be copied and pasted into a spreadsheet for further formatting. Alternatively, the Account Report can be exported to an html file, and the html file may be opened in a spreadsheet.

Note

Press the Close button to close the Find Transaction dialog.

Table 8.1. Search criteria buttons - Split Search

Button 1

Button 2

Button 3

Button 4

Button 5

Button 6

Button 7

Button 8

Description [a]

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex [b]

does not match regex[b]

Notes[a]

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Memo

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Description, Notes, or Memo [c]

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Number[a]

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Action

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Reconciled Date

is before

Date selection field

Remove row

is before or on

is on

is not on

is after

is on or after

Date Posted[a]

is before

Date selection field

Remove row

is before or on

is on

is not on

is after

is on or after

Value

has credits or debits

less than

Amount entry field

Remove row

less than or equal to

equal to

not equal to

greater than

greater than or equal to

has credits

less than

less than or equal to

equal to

not equal to

greater than

greater than or equal to

has debits

less than

less than or equal to

equal to

not equal to

greater than

greater than or equal to

Shares

is less than

Amount entry field

Remove row

is less than or equal to

equals

does not equal to

is greater than

is greater than or equal to

Share Price

is less than

Amount entry field

Remove row

is less than or equal to

equals

is not equal to

is greater than

is greater than or equal to

Reconcile [d]

is

Not Cleared

Cleared

Reconciled

Frozen

Voided

Remove row

is not

Closing Entries [e]

Check for true

Remove row

Balanced [f]

Check for true

Remove row

Account [g]

matches any account

Choose Accounts

Remove row

matches no accounts

All Accounts [h]

matches all accounts

Choose Accounts

Remove row

[a] The Description, Number, Notes, and Date Posted fields belong to the transaction, all other searchable fields are part of individual splits.

[b] regex means regular expression text search as used in various computer programs such as Perl

[c] Searches for a term in the transaction's Description and Notes fields and the Split's Memo field.

[d] The Reconcile option applies the selected criteria to each line of a transaction individually. Each transaction line may have only one of the indicated values, but there is often a mix of values within a complete transaction, so companion lines may not meet the selected criteria. See separate note defining status values. For a detailed description of transaction statuses see Section 6.11, “Setting the reconcile status (R field) of a transaction”

[e] The Closing Entries selection will find transactions whose split is marked as a closing entry by ToolsClose Book .

[f] Balanced finds transactions that are or are not balanced. Since GnuCash nearly always succeeds in balancing transactions this will almost always return all possible transactions. However it is possible to create a transaction containing multiple commodities that cannot be balanced and unchecking the box will find those transactions.

[g] When the Find Transactions dialog is started from the Accounts tab or a General Journal register the Account option performs a search where the accounts selected in the Choose Accounts dialog will both be searched individually for results. This means that a match in any of the selected accounts will either be displayed (matches any account) or discarded (matches no account). If the FindTransactions dialog is started in a regular account register and the current account is selected return all of the transactions or if it is not, no transactions.

[h] The All Accounts option performs a search where accounts selected in the Choose Accounts dialog will return transactions containing at least one split in every one of the accounts chosen. When run from a regular account register this is the only criterion that will inspect splits from other accounts so if you start the Find Transactions dialog from your Assets:Current Assets:Checking register and want to find all of the transactions in that account with a split in Expenses:Groceries, this is the criterion to use. Keep in mind, though, that it's an "and" search: If you also include Expenses:Misc it will find only those transactions with a split in each of the two, not transactions with a single split in either of them.


8.1.1.1. Explanations of the Criteria

The Reconcile criterion deserves some more explanation. Think of the selected reconciliation status buttons (Not Cleared, Cleared, and so on) as a single group, joined with a logical “or”. In other words, the selection “is ” or “is not” applies to the “or” of the selected status buttons. The buttons which are left unselected are simply ignored. (It’s not the same as saying the reconciliation status must not be one of these.)

For example: if you select Reconcile is Cleared Reconciled, that means you’re saying “I want all transactions which contain cleared splits OR reconciled splits” (imagine an invisible “OR” between all the selected status buttons). It’s the same as selecting Reconcile is Cleared, then adding another search criterion with the Add button, then on the new line selecting Reconcile is Reconciled, and finally selecting Search for items where any criteria are met. In either case, GnuCash will show you exactly the same set of transactions.

8.1.2. Find Customer, Invoice, Job, Vendor, Bill, Employee, Expense Voucher

The business find assistant is used to search for business related items (Customer, Invoice, Job, Vendor, Bill, Employee, Expense Voucher). To open the business search dialog select the desired item to Find from the BusinessCustomer/Vendor/Employee submenus.

Tip

The titlebar and the first row of the assistant dialog reports the item type you are searching for: Customer, Invoice, Job, Vendor, Bill, Employee, Expense Voucher.

There are two panes in the Find dialog. The top pane contains the Search Criteria buttons and the bottom pane contains the Type of Search selection.

8.1.2.1. Search Criteria section

There are two buttons in the top of the Search Criteria pane. The left button allows you to Add another criteria row to search for multiple criteria.

Note

The existing criteria row needs to be completed before adding a new row.

The right button is used to Search for items where all criteria are met or Search for items where any criteria are met. The all criteria are met search requires all of the criteria rows to have at least one match. The any criteria are met search requires only one of the criteria rows to be matched.

The criteria row in the Search Criteria pane is used to combine different criteria buttons (see tables Table 8.2, “Search criteria buttons - Customer Search”, Table 8.3, “Search criteria buttons - Invoice Search”, Table 8.4, “Search criteria buttons - Job Search”, Table 8.5, “Search criteria buttons - Vendor Search”, Table 8.6, “Search criteria buttons - Bill Search”, Table 8.7, “Search criteria buttons - Employee Search” Table 8.8, “Search criteria buttons - Expense Voucher Search” for a comprehensive list of combinations)

8.1.2.2. Type of Search section

In the Type of Search pane there are five selections. The first and alst options are always selectable while the following three are available only when you perform the first search by setting some search criteria and pressing the Find button.

New Search

Perform a new search

Refine current search

Search within the results of the previous search

Add results to current search

Search based on the first set of criteria or the new criteria

Delete results from current search

Discard any results that match the previous search results

Search only active data

Search only if data are marked as active.

8.1.2.3. The rest of the search dialog

When search criteria are selected, you can press the Find button. You will be presented with the list of search results in the same Find dialog.

Tip

Aside from the results, GnuCash gives you some buttons to manage the highlighted result.

Tip

In the bottom right of the Find dialog there is a button that allows you to create a New business item.

Note

Press the Close button to close the Find assistant dialog.

8.1.2.4. List of search criteria buttons

Table 8.2. Search criteria buttons - Customer Search

Button 1

Button 2

Button 3

Button 4

Button 5

Button 6

Button 7

Button 8

Company Name

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Customer ID

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Billing Contact

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Shipping Contact

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]


Table 8.3. Search criteria buttons - Invoice Search

Button 1

Button 2

Button 3

Button 4

Button 5

Button 6

Button 7

Button 8

Invoice ID

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Company Name

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Date Opened

is before

Date selection field

Remove row

is before or on

is on

is not on

is after

is on or after

Is Posted?

is

set true

Remove row

is not

Date Posted

is before

Date selection field

Remove row

is before or on

is on

is not on

is after

is on or after

Is Paid?

is

set true

Remove row

is not

Billing ID

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Invoice Notes

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Invoice Owner

is

Customer

Criteria entry field

Select...

Remove row

Vendor

Employee

Job

is not

Customer

Vendor

Employee

Job


Table 8.4. Search criteria buttons - Job Search

Button 1

Button 2

Button 3

Button 4

Button 5

Button 6

Button 7

Button 8

Job Name

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Job Number

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Billing ID

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Only Active?

is

set true

Remove row

is not

Owner's Name

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]


Table 8.5. Search criteria buttons - Vendor Search

Button 1

Button 2

Button 3

Button 4

Button 5

Button 6

Button 7

Button 8

Company Name

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Vendor ID

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Billing Contact

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]


Table 8.6. Search criteria buttons - Bill Search

Button 1

Button 2

Button 3

Button 4

Button 5

Button 6

Button 7

Button 8

Bill ID

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Company Name

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Due Date

is before

Date selection field

Remove row

is before or on

is on

is not on

is after

is on or after

Date Opened

is before

Date selection field

Remove row

is before or on

is on

is not on

is after

is on or after

Is Posted?

is

set true

Remove row

is not

Date Posted

is before

Date selection field

Remove row

is before or on

is on

is not on

is after

is on or after

Is Paid?

is

set true

Remove row

is not

Billing ID

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Bill Notes

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Bill Owner

is

Customer

Criteria entry field

Select...

Remove row

Vendor

Employee

Job

is not

Customer

Vendor

Employee

Job


Table 8.7. Search criteria buttons - Employee Search

Button 1

Button 2

Button 3

Button 4

Button 5

Button 6

Button 7

Button 8

Employee Name

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Employee Username

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Employee ID

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]


Table 8.8. Search criteria buttons - Expense Voucher Search

Button 1

Button 2

Button 3

Button 4

Button 5

Button 6

Button 7

Button 8

Voucher ID

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Employee Name

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Due Date

is before

Date selection field

Remove row

is before or on

is on

is not on

is after

is on or after

Date Opened

is before

Date selection field

Remove row

is before or on

is on

is not on

is after

is on or after

Is Posted?

is

set true

Remove row

is not

Date Posted

is before

Date selection field

Remove row

is before or on

is on

is not on

is after

is on or after

Is Paid?

is

set true

Remove row

is not

Billing ID

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Voucher Notes

contains

Criteria entry field

Is entry Case Insensitive?

Remove row

matches regex[b]

does not match regex[b]

Voucher Owner

is

Customer

Criteria entry field

Select...

Remove row

Vendor

Employee

Job

is not

Customer

Vendor

Employee

Job