Search for a Task

Use the Search field on the Tasks page to search for specific tasks.

You can do a simple search based on keywords such as task title, description, task Id, and process instance Id.

Click Try business search on top right of the Tasks page to enable advanced search with business data.

Note:

Searches are not case sensitive. For example a search for Task can return results with matches such as task, TASK, Task, or TasK.

About Business Search

Business search gives end users a rich search experience by providing them the ability to do complex searches that can include one or more fields, standard query operators, wildcards, fuzzy term search, and more.

Different types of query options are supported in business search. Some of the most used ones are listed below:

Simple query

A simple query uses a simple syntax build with terms, quote-enclosed phrases, and operators. It uses Lucene's simple query parser. This type of query is more flexible and will attempt to interpret a search request even if it's not perfectly composed.

You can use the following operators in a simple query:

Operator Description
+ Specifies AND operation.
"" Wraps multiple terms to specify them as exact phrases.
| Specifies OR operation.
- Specifies NOT operation.
* Specifies prefix query if used at the end of a term.

For example: "expense report" +limit -reject

The search result for the above query returns the exact phrase expense report AND the word limit, and it does NOT contain the word reject.

Advanced query

An advanced query uses complex syntax that can be build with operators, wildcards, as well as one or more fields. It uses Lucene's full query string syntax. While this type of search is versatile, the query is strict and returns an error if the query string includes any invalid syntax.

The following table lists some examples of advanced query.

Query Description
status:open The field status contains the term open.
title:expense AND total:(3000 TO 4000) The field title contains the term expense and the field's total value should be between 3000 and 4000.
hotel_name:(hotel NOT motel) AND category:'Resort and Spa' The field hotel_name contains the term hotel and doesn't contain the term motel; and the field category matches Resort and Spa.
book.\*:(quick OR brown) Any of the fields such as book.title, book.content or book.date contains quick or brown.

Auto-suggestion

Auto-suggestion enables real-time suggestion of fields that are configured with business data. As you type, a list of business search enabled fields will be displayed that you can use to query. For example, if you want to search by using a patient’s name, then on entering the patient name, a list of possible fields that you may want to use is suggested. Selecting one of the fields will then prompt you for the value that you want to search in this field.

Boosting a term

Term boosting refers to ranking a match higher if it contains the boosted term, relative to others that don't contain the term. To boost a term, use the caret ^ symbol with a boost factor (a number) at the end of the term you're searching. Note that the default boost factor is 1.

For example: make: nissan^10 OR city: "new york"

In the above query make: nissan receives a boost factor of 10 as compared to city: "new york" with boost factor of 1. Hence in the search result, matches that contain make as nissan will get higher relevance and ranking.

Fuzzy search

Fuzzy search matches on terms that are similar, including misspelled words. To do a fuzzy search, use the tilde ~ symbol at the end of a single word. An optional parameter of value between 0 and 2 can specify the maximum number of edits allowed. If no value is specified, then the default value is 2.

For example to search for a term similar in spelling to "book" use the fuzzy search: book~1. The search will return terms like books and cook.

Key things to note in search results

  • Relevance: Search results are sorted in accordance to their relevance. For example, in a free text search, if the same term matches in one task's title and in another task's summary, then the task where the term match is in the title is given higher preference and is ranked higher in the task results.

  • Synopsis: A fragment text containing the matching search criteria is provided in the search results. Thus providing a summary to users as to why certain tasks are ranked higher in the search results. To view the synopsis, click the expand arrow next to a match.

  • Highlights: Matching criteria are highlighted in the search results to draw users attention.

Search Use Cases

Explore some common search use cases.

Free text search

You can do a free text search when you have some data but don't know the exact field names against which the search query should be based. So you query one or more terms, where any of the terms is considered a match.

For example, a hospital's front desk can search for a patient's first name john in the admission records. But there may be a number of patients with the first name John, so the search is refined to include the patient's last name doe. The search may still return multiple results as there may be more than one patient with the name John Doe. So the search can be refined further to include the last four digit of the patient's social security number (SSN).

The search query can be: +((john doe) +(*1234)) which means that matches containing the terms john, doe and a number1234 should come up in the search result.

Free text search with phrases

In the above use case of free text search, the search results may be anywhere. For example, (john doe) can be in a comment:I got the confirmation from John that someone named Doe will drop the package.

To eliminate this kind of anomalies and reduce noise in the search results you can do a free text search with phrases where the exact phrase is enclosed in double quotes. This ensures that the search matches the whole phrase and in that order in the search result.

For our hospital use case, the search query can be: (("john doe" +(*1234)) which means that only matches that contain the whole phrase john doe and in that order comes up in the search result.

Advanced search

In the above use case where you do a free text search with phrases, you may still end up with undesirable search results. For example, john doe may occur in some comments or in fields other than the targeted field. Or, there's a record where an orderid or telephone number ends with 1234.

To eliminate such cases, you can refine the search to specific field names. In the search field, you can enter a query of field: value, where field is the fieldName and value is the value that fieldName should contain. Each field: value combination is called a clause. You can have as many clauses as you want with nested hierarchy in the search query.

For example: +( field1: (value1 OR value1`)) + ( field2: value2 OR field3: value3) - (field4: value4)

where:

MUST field1 should have value1 or value1`

MUST

MUST field2 should have value2 OR field3 should have value3

NOT field4 to have value4 (This field with value shouldn't be present at all)

For our hospital use case, the search query can be: name: "john doe" AND ssn: *1234 which should return the exact matching result where the name of the patient is John Doe whose SSN ends with the number 1234.

You can expand the above queries using number and date ranges.