Keyword searching allows you to perform searches on text data fields, documents and file attachments stored in your ExtraView database. There are two searching technologies used within ExtraView:
All searching for keywords is case-insensitive.
There is an option to be able to search attached documents, as well as searching for keywords within the text of the issues in your database. If file attachment searching is enabled, the search box will look like:
Check the box to allow ExtraView to search the attachments in its database. Note that if you have a large number of attachments and / or the attachments are of a large size, and Quickfind is not enabled, the search is likely to take longer to finish. Also, note that the administrator may have restricted the file types through which you can search for keywords. For example, you will probably be allowed to search through Microsoft Word documents, but not through image files. In the same way, the administrator may have placed a limit on the total size of the attachments that can be searched, without warning the user. When you elect to search attachments for the keywords, then the issue is returned when the keyword is found either in the attachment or within the text in the issue.
Note: You cannot save a report that performs a keyword search with the option to search attachments. This is intended as a feature to be used on an ad hoc basis as opposed to being used for routine reporting.
For efficiency, searching attachments works slightly differently if your underlying ExtraView database is Oracle or Microsoft SQL Server. The searching with an Oracle database is case sensitive, and the searching with Microsoft SQL Server is case insensitive. Your system administrator can tell you which database is being used, if you are not certain. This basic search mechanism has the following features:
ExtraView’s Quickfind technology allows especially fast searching for text within your installation when seeking keywords that may be spread through thousands of issues or file attachments. Quickfind’s efficiency and speed comes from techniques that index the text and the file attachments you enter into your database. In addition to searching for text, the Quickfind technology may also be used to search for issue ID's, email addresses and URLs within issues. All searches executed using Quickfind are case-insensitive.
To search for a single word, in any of the text type fields within issues, simply enter the word within the keyword search field. For example, if you enter the word picture, then ExtraView will search for this word anywhere within the text of an issue. Finding a keyword within a field means that the search will look for all words that start with the text you enter. For example, if you enter the keyword table, then issues containing both table and tabletop will be found. Keywords that you search for should not contain special characters (see below), with the exception of email addresses within fields, and with the exception of valid URLs.
Enter the keywords, separated by spaces. All the keywords entered must exist within the same text type field within an issue. For example, if you enter the words picture frame then ExtraView will search for the occurrence of both words within the same field within an issue. The same general rule about special characters as in searching for single keywords applies.
Within each specified keyword there may be either or both of the wildcard characters, * or ?. This produces a wildcard search. At each position where a * exists, there may be zero or more characters in the string in the field for a match to occur. For example, abc*def matches a field value of abcdef or abcxyzdef. At each position where a ? exists, there must be a single character in the string in the field for a match to occur. For example, abc?def matches a field value of abcxdef but NOT abcdef. Wildcards at the beginning of a keyword will invoke a lengthy search of all words within the database and should be avoided if possible. Wildcards may appear once or multiple times in a keyword, and they may appear in any or all of the keywords in a multiple keyword search.
A phrase search is used when a keyword is in either of three formats:
A phrase search of type 1 produces a hit when the exact keyword phrase inside the quotes is found in the field values. Basically, this means that the keywords in the phrase appear in the specified order and are separated only by special characters or spaces. For example, a phrase of "abc def" will match with a field value of abc def or abc-def or abc - - def. Note that - is a special character. A phrase search of type 2 is converted to a phrase search of type 1 by replacing the special characters with spaces and surrounding the result with double quotes. Essentially, the special characters are replaced with token separators and the resultant phrase is used in the phrase search. A phrase search of type 3 is converted to a phrase search of type 1 by replacing all word breaks with a space character and surrounding the result with double quotes, if it is not already surrounded by double quotes. As an example, a string like Fredまままま gets broken into Fred ま ま ま ま, which consists of five words (Alphanumeric and Hiragana). Another example is Fredキキキ, which gets broken into Fred キキキ, which consists of two words (Alphanumeric and Katakana). As another example, abc-def will produce a phrase search of "abc def". This would match a field value of abc def or abc-def or abc - - def, but not abcdef. Terms in a phrase search may use the * and ? wildcards. However, they are not permitted to appear at the beginning of any term used in a phrase search.
When using the contains operator on a keyword search, in conjunction with other query filters that only return a subset of repeating rows in the results, you can use the Filter Repeating Row Values checkbox to restrict the results returned to only those rows that appear in the records returned from the repeating rows that match the query filters on those rows.
This refers to installations with Quickfind enabled only. The Quickfind special characters are:
+ - & | ! ( ) { } [ ] < > ^ " ~ * ? : \
Note that * and ? are wildcard characters. Special characters are ones that Quickfind does not index and you cannot query for these characters, either as characters by themselves or when the character is part of a word, i.e. there is no space between the special character and an adjoining alphanumeric character.
When a text field which contains special characters is indexed, the special characters are removed and are treated as a space. For example if you enter (abc)def then this is indexed as the two separate words abc followed by def.
You can use Boolean operators within your keyword, to perform complex queries. To accomplish this, you use the following operators with the AND, +, OR, NOT and -. To indicate to Quickfind that you are entering a complex query, preface the query with the # character and ensure that the AND, OR and NOT are in upper case.
#abc def AND def ghi
+
#+abc def
OR
#abc def OR def ghi
NOT
#abc def NOT def ghi
Note: The NOT operator cannot be used with just one term. For example, the following search will return no results:
#NOT abc def
-
#abc def - def ghi
You can restrict which Extraview fields to search. You must know the ExtraView field name to perform this searching. To achieve this, you first enter the field name, then a : character, and then the term you are searching for. You can combine the specific field search with other complex search criteria. For example, you might want to search only the SHORT_DESCR field for the term abc. The syntax for this is:
#SHORT_DESCR:abc
Note that if you want to search for multiple words within a field, you need to repeat the field name. For example, to search the SHORT_DESCR field for the terms abc and def you would enter:
#SHORT_DESCR:abc AND SHORT_DESCR:def
Quickfind supports using parentheses to group clauses to form sub queries. This can be very useful if you want to control the boolean logic for a query. For example, to search for either abc or def and ghi use the query:
#(abc OR def) AND ghi
This eliminates any confusion and makes sure that ghi must exist and either term abc or def may exist.
Quickfind supports escaping special characters that are part of the query syntax. The list of special characters is:
+ - & | ! ( ) { } [ ] ^ " ~ * ? : \
To escape these character use the \ before the character. For example to search for (1+1):2 use the query:
#\(1\+1\)\:2
Quickfind supports fuzzy searches based on the Levenshtein Distance, or Edit Distance algorithm. To do a fuzzy search use the tilde ~ symbol at the end of a single word term. For example to search for a term similar in spelling to roam use the fuzzy search:
#roam~
This search will find terms like foam and roams. Note the use of the # at the beginning of the search term. An additional, optional parameter can specify the required similarity. The value entered is between 0 and 1, with a value closer to 1 only terms with a higher similarity will be matched. For example:
#roam~0.8
The default that is used if the parameter is not given is 0.5.
Quickfind supports finding words are a within a specific distance from each other. To do a proximity search use the tilde ~ symbol at the end of a phrase. For example to search for abc and def within 10 words of each other in a document use the search:
#abc def~10