Searching for a rule
Dev Studio provides full-text search for non-deprecated rules, data objects and the help system. You can search help system topics at any time. Searching for rules or data depends on system-maintained index files.
- Enter one or more terms (keywords) into the search text field and press Enter.
- Leave the search text field empty and press Enter to see a list of rules recently updated by your operator.
- Click the Tick icon next to the search text field to see a list of rules that are checked out by your operator.
-
Use the following drop-down lists to control how results are displayed:
Table 1. Table 1 Menu Option Result Result type Rules Only return instances of classes derived from the Rule– base class. Data Only return instances of classes derived from the Data– base class. Rules and Data Return results for all record types. Help Topics Only return topics available in the Pega Platform Help System. Search Type Name Evaluate the pyRuleName property for Rule– instances, the pxInsName for Data– instances, and Help topic titles when looking for a match. All Content In addition to record names and help topic titles, evaluate record data (XML) and bodies of help topics when looking for match. Match Criteria Contains Return results based on words that match any part of for the entered term(s), including in the middle of words. Starts With Return results based on words that begin with the entered term(s). Exact Match Return results based on words that exactly match the entered term(s). Scope My Current Application Only evaluate records in your current application when looking for a match. All Applications Evaluate records in your entire application stack when looking for a match. Note:By default, matches include both rules and data instances.
Changes to filtering options are remembered only for the duration of the session.
The Search tool does not search work items.
Rule–, Data– and other matches are ranked by Elasticsearch’s default relevancy ranking, based on factors such as the number of times that the search term appears in the object.
-
Perform advanced searches:
The search capability is implemented using robust, fault-tolerant Elasticsearch technology for use in distributed environments. Elasticsearch will detect and remove failed nodes in a cluster, automatically replicating and reorganizing nodes as needed.
Note: To take advantage of Elasticsearch distributed architecture, multiple nodes should be configured to host Elasticsearch index files. See Full text search.The search terms entered are converted into the appropriate Elasticsearch query syntax based on the search method chosen. You can enter more advanced Elasticsearch query syntax to perform complex searches.
The following general rules apply to searches:
-
Elasticsearch uses the (
*) asterisk as a wildcard to match zero or more characters, and the (?) question mark as a wildcard to match any single character. The*character is automatically added before and after search terms when you use the Starts With (term*) or Contains (*term*) search method , and you do not have to manually enter them. -
To search for a rule based on its Applies To class and name, select the
All Contentoption for Search Type (since pyRuleName does not contain the class name), and enter a search such asclass-name*rule-nameorclass-name. For example, to see the version of the pyLabel property within the Work- class, search forWork-*pyLabel. -
If you enter two or more words, they are treated by default as a single phrase during search.
-
Your search string may contain characters - _ % or @. Your search string may contain a ! but escaped with a preceding \ character. Searches with any of these characters are exact match only. Searches involving other special characters such as ( [ { }]} ^ ~ * # : \ | are not supported.
-
When a search string is enclosed in quotes, the selected search method is ignored, and an Exact Match is always performed using the exact text within quotes.
-
Use the special syntax
property-name:valueto search for instances with a specific property value. Set the Search Type option toContentfor this type of search. Enter an exact property name, including capitalization. The searched value cannot contain any special characters. Instances whose value starts with the value entered are matched. For example,pxObjClass:Rule-Obj-Flowreturns a list of all Rule-Obj-Flow and Rule-Obj-FlowAction rules. -
You can enter more advanced Elasticsearch queries. For information about the
Elasticsearch query syntax, go to the Elasticsearch website at elastic.co.
When entering advanced syntax, select Exact Match as the Search Method. For example, you can use the Boolean operators
AND,OR, andNOTto search for combinations of multiple terms and phrases. Capitalize the Boolean operators to distinguish them from the terms or phrases being combined. You can use parentheses to group conditions. See the examples below.
Table 2. Table 2 Entered text Search method Syntax sent to Elasticsearch Match returned if abcExact MatchabcExact word abcexists in searched text.abcStarts Withabc*One or more words beginning with abcexist in searched text.abcContains*abc*One or more words containing abcexist in searched text.abc defExact Matchabc defExact phrase abc defexists in searched text.abc defStarts Withabc def*One or more phrases starting with the exact word abcfollowed by a word starting withdefexists in searched text.abc defContains*abc def*The string abc defexists anywhere in searched text.“abc:01-01-01”Anyabc:01-01-01Exact word abc:01-01-01exists in searched text.abc\:defExact Matchabc\:defExact word abc:01-01-01exists in searched text.abc\:defStarts Withabc\:def*One or more words beginning with abc:defexist in searched text.abc\:defContains*abc\:def*One or more words containing abc:defexists in searched text.abc OR def Exact Matchabc OR defEither the exact word abcor the exact worddefexists in searched text.abc* OR *def*Exact Matchabc* OR *def*Either one or more words beginning with abcor one or more words containingdefexists in searched text.abc AND defExact Matchabc AND defBoth the exact word abcand the exact worddefexists in searched text.abc AND defExact Matchabc* AND def*Both one or more words beginning with abcand one or more words beginning withdefexists in searched text.(+abc* *def*) NOT ghi*Any(+abc* *def*) NOT ghi*One or more words starting with abcexists in searched text, the stringdefmay also exist anywhere within the searched text, and no words starting withghiexist in the searched text. -