How to Use the Advanced Search Query Window in AAI (Automation Analytics & Intelligence)
search cancel

How to Use the Advanced Search Query Window in AAI (Automation Analytics & Intelligence)

book

Article ID: 442792

calendar_today

Updated On:

Products

Automation Analytics & Intelligence

Issue/Introduction

Customers want to use the Advanced Search Query window in AAI to filter jobs using free-form expressions but are unsure which operators are supported, how to write correct patterns, and why certain queries (such as those using the equals sign) produce a "not a valid criteria" error.

Environment

  • Automation Analytics & Intelligence 24.4.x

Resolution

How to Open the Query Window

  1. In the All Jobs view, click the Filter icon in the toolbar.
  2. Select the Query tab in the Advanced Search dialog.
  3. Check the Enable Edit checkbox to type a query.
  4. Click Apply to execute.
  5. Click the Query Help button inside the dialog to open the in-app field reference for your specific environment.

Note: When Enable Edit is checked, the Name and Status filter controls are disabled. Unchecking it returns to GUI controls if the current query is a simple AND expression.

Query Syntax

Every query follows the form: field operator value

  • Field: Must be an Autosys JIL property name in uppercase (e.g., JOB_NAMECOMMANDMACHINE).
  • Operator: Specifies the comparison method. Operators depend on the data type (see below).
  • Value: Must always be enclosed in single or double quotes (e.g., 'PROD_DAILY'). Unquoted values and null are not supported.

Supported Operators by Field Type

Using the wrong operator for a field type produces the error: "is not a valid criteria."

1. String Fields (e.g., JOB_NAMEJOB_TYPEOWNERMACHINE)

  • contains / not contains
  • startsWith / not startsWith
  • endsWith / not endsWith
  • matches / not matches: Matches a Java regular expression pattern (full-string match).
  • exists / not exists: Checks if the field has a value.

2. Numeric Fields (e.g., PRIORITY)

  • = (equals)
  • != (not equals)

Important: The equals sign (=) is not valid for String fields. For exact matching on String fields, use the matches operator without wildcards (e.g., JOB_TYPE matches 'CMD').

Case Sensitivity

All string comparisons, including matches, are case-insensitive. This behavior is enforced at the server level and cannot be changed.

Using the matches Operator (Java Regex)

The matches operator requires the pattern to cover the entire field value.

  • Wildcard: Use .* to match any sequence of characters (e.g., JOB_NAME matches 'PROD_.*').
  • Alternatives: Use the pipe character or parentheses (e.g., JOB_NAME matches '(PROD|STAGING)_.*').
  • Common Mistake: A bare asterisk (*) is NOT a glob wildcard. In Java regex, it means zero or more repetitions of the preceding character. Always use .* for a sequence wildcard.

Combining Conditions

Use and (or &), or (or |), and not to combine clauses. Use parentheses to control evaluation order.

  • Example: JOB_NAME startsWith 'PROD_' and JOB_TYPE matches 'CMD'