Customizing the Omni Search for Advancement
  • 22 Nov 2023
  • 9 minute read
  • Dark
    Light
  • PDF

Customizing the Omni Search for Advancement

  • Dark
    Light
  • PDF

Article Summary

The Omni Search provides a partial word search across multiple database sections, including records, datasets, queries, forms, and imports. Customizing the searchable items appearing in your database's Omni Search tool can provide improved efficiency.

By default, the data points searched in person records are the record name, email address, phone number, social security number, and the Slate Reference ID. The default data points that appear in the search results with the record name are the Slate Reference ID and Date of Birth. 

For dataset records, the default data points searched are name and key. There are no default data points for displaying dataset records other than the name.

Setting How Omni Search Locates Person Records

Creating Rules

Rules are used to customize the search criteria for a person record.

Note

New search criteria are added to the default ones.

Your title goes here

Your content goes here

  1. Click Database on the Slate navigation menu. The Database page appears.

  2. In the Automations section, click Rules. The Rules page appears.

  3. Click New Rule. An Edit Details popup appears.

  4. Provide the following configuration values:

    • Name: Provide an appropriate and recognizable name for the rule.

    • Base: Select Configurable Joins - Person. A Type field appears.

    • Type: Select Person Index.

    • Folder: Select an existing folder, or select Other and enter a new folder name. (This step is optional but recommended.)

    • Non-deterministic: Leave the value at Rule is deterministic and has an exclusive priority.

    • Priority: Enter a numeric value. For example, enter "1" if this is your only Person Index rule.

    • Status: Set to Preview.

  5. Click Save. The Edit Rule page appears.

  6. In the Filters section of the Edit Rule page, use filters to limit the searchable records for the new criteria. If the rule will apply to all person records, leave the filter section blank.

Adding Search Criteria

In the Action section for the rule, add any new searchable criteria. For the Action value, select Replace Values from Formula. Two additional sections appear - Exports and Formula.

Adding a single search criterion

When only one searchable criterion will be added, add the export for that criterion as follows:

  1. In the Exports section, click Export. An Insert Query Part popup appears.

  2. Select the desired export. For this example, select Email.

  3. Click Continue. The Person Email export appears in the Exports section.

  4. In the Formula section, enter the export, prepended with an @ symbol. As you enter the @ symbol, a list of available exports appears. Click the export that was just created in the previous steps.

  5. Click Save.

Adding multiple search criteria

Using a subquery export can combine multiple search values and simply formula creation. Typically, when combining multiple values in a concatenate SQL statement, if any of the values is null (blank), the result of the concatenation will also be null. A subquery export will account for this, so you do not have to code this into your formula.  

  1. From the Action section of the Edit Rule page, click the subquery export button. An Edit Part popup appears.

  2. Provide the following configuration:

    • Name: Give the subquery export an appropriate and meaningful name, but make sure the name is SQL-friendly (lowercase, with no spaces or special characters other than underscores).

    • Output: Set to Concatenate.

    • Exports:

    • Click Export and select the desired exports for the searchable data criteria. Since these exports are contained in the subquery export, their export names can have blank spaces. 

      • Click the Literal icon to add a semicolon literal value between each export. The semicolon tells Slate to treat the searchable values separately. If you omit the semicolons, Slate treats the entire term as one value, and the individual exports are not searched independently.

 

3. After all desired subquery exports have been defined, click Save to return to the Edit Rule page.

4. In the Formula section, enter the export you created, starting with an @ symbol. As you enter the @ symbol, a list of available exports appears. Click the export that was just created in the previous steps. 

Applying the search criteria to person records

Rules only process updated person records, so for the new search criteria to apply, you must use a query and a Retroactive Refresh to update the records and direct the rule to run for them. Note that rules are queued, and completing them might be delayed. The more records that are updated simultaneously, the longer it will take for the rules to process.

A query can be run directly from the person index rule you have created, or a query can be created in the query tool. 

  • To run the query from the rule, click New Query on the right side of the rule summary page. The Quick Query summary page appears.

  • To run the query from the query tool, click Queries / Reports on the main Slate navigation bar, and on the Queries page, click Quick Query. A Quick Query popup appears. For Base, select Person and click Build Query. The Quick Query summary page appears.

To build the query and update the records:

  1. Click Export and select at least one export. (The exports you choose here are unimportant; at least one export is required to run any query.)

  2. If you want to limit which records are selected with the query, add a filter in the Filters section. Otherwise, do not add filters to select all matching records.

  3. Click Run Query. The query results appear.

  4. From the Output list, under Batch Management, select Retroactive Refresh.

  5. Click Export. A Retroactive Refresh popup appears, indicating the number of records that will be affected.

  6. Click Submit. Click OK on the confirmation popup that appears.

Setting How Omni Search Displays Person Record Matches

Person header rules in Slate are used to customize the default information displayed with the name in the search results for person records. When thinking through the information to display, remember that space is limited. It is best to display only the information necessary to differentiate records that might have the same name.

Note

When a new custom rule is created, and a record meets the rule criteria, the default information of Slate Reference ID and Date of Birth will not appear, and the new custom rule criteria will replace it. If a person's record does not meet the criteria, then the default information of Slate Reference ID and Date of Birth will appear.

  1. Click Database on the Slate navigation bar, and in the Automations area, select Rules.

  2. Click New Rule.

  3. Enter a value for Name.

  4. For Base, select Configurable Joins - Person.

  5. For Type, select Person Header.

  6. Select an existing Folder, if desired, or select Other and enter a new folder name.

  7. Provide a Priority value such as "1" if this is your only Person Index rule.

  8. Set Status to Preview.

  9. Click Save
    display the information necessary to differentiate records

In the Filter section of the rule, filters can be applied to tell the rule which person records can display the new custom information. If the rule will apply to all person records, leave the filter section blank.

The Action section is where any new display information will be added. With the Action of Replace Values from Formula selected, two additional sections appear: Exports and Formula.

Note

When combining string values in a formula, remember that if any of the values is null (blank), the result of the concatenation will also be null. Using subquery exports will account for null values; otherwise, the SQL isnull function must be used in the formula.

The following examples include techniques for using subquery exports or using the isnull operator in a formula to display a customer Constituent ID field and a Class Year field. 

Subquery Exports

Using a subquery export, additional exports can be added with filters applied to display the different aspects of the information when that information exists on the record.

additional exports can be added with filters

 

For the Constituent ID, a subquery export, one layer deep, is used to build all the components around what should appear in the Omni Search for a record with a Constituent ID. In the subquery export for Constituent ID, a literal of "ID:" is added for formatting, and the export for the Constituent ID field is added.

a subquery export a layer deep is used

 

A filter is added that uses the Aggregate value of Exists, followed by the export for the Constituent ID. With this configuration, the Constituent ID values will not appear if the record does not have a Constituent ID.

A filter is added that us using the Aggregate of Exists

 

The same is repeated for the class year and the pipe delimiter ( | ). For the pipe delimiter, the filter existence is for both a Constituent ID and class year because the pipe would not matter if only one of those values existed on the record.

the pipe delimiter

 

With the exports created this way, if a record would include both a Constituent ID and class year, the displayed information would be "ID: 123456789 | Class Year: 1997."

Formula SQL

Similar to the subquery option, the exports for Constituent ID and class year are added, making sure to edit the export names to be SQL friendly (blank space removed and replaced with an underscore). The isnull SQL function will ensure the ID: will not display if there is no value in the Constituent_ID export.  

isnull('ID: ' + @Constituent_ID , '') + isnull('Class Year: ' + @Class_Year , '')

the exports for Constituent ID and class year are added

Customizing How Omni Search Locates and Displays Dataset Records

Rules can customize the search criteria for a dataset record.

Note

Any new search criteria will be in addition to the default search criteria of name and key.

Unlike for person records, the dataset index and header rules are each a single rule. This means any value set up as a header would also be searchable and vice versa.

A database can have multiple datasets, each with its own Index and Header rule. When the base is selected for the rule, the base will determine which dataset the Index and Header rule will be first.

Your title goes here

Your content goes here

  1. Click Database on the Slate navigation bar, and in the Automations area, select Rules.

  2. Click New Rule.

  3. Provide a value for Name.

  4. Select the "Configurable Joins - . . ." option for the Base setting that corresponds to the dataset you are building the rule for.

  5. For Type, select Person Index.

  6. Select an existing Folder, if desired, or select Other and enter a new folder name.

  7. Enter a value for Priority, such as 1 if this is your only Person Index rule.

  8. Set Status to Preview.

  9. Click Save.
    the base will determine which dataset the Index/Header rule will before

In the Filter section of the rule, filters can be applied to tell the rule which dataset records can be searched on and display the new custom information. If the rule will apply to all dataset records, leave the filter section blank.

The Action section is where any new display information will be added. With the Action of Replace Values from Formula selected, two sections appear: Exports and Formula.

Note: When combining string values in a formula, it is important to know that if any one of the values is null (blank), the result of the concatenation will also be null. The use of subquery exports will take the null values into account. Otherwise, the SQL isnull function must be used in the formula.

In the following two examples, one uses subquery exports, and the other uses isnull, in a formula to display a general ledger number of the fund and the fund restriction status. 

Subquery Exports

Using a subquery export, additional exports can be added with filters applied to display the different aspects of the information when that information exists on the record.

Create a subquery export Name that is SQL-friendly. Add the exports that you want to be both searchable and displayed. Note: Any formatting applied will be searchable. In the example below, the literal GL Number is searchable.

Add the export values to be displayed and searchable. In the following example, a literal GL Number: is added for formatting, and the export for the Fund GL Number field is added. A literal of a pipe character is used as a delimiter, followed by the export for the Fund Restriction field.  

Add the export values

Formula SQL

Similar to the subquery option, the exports for fund GL number and restriction status are added, making sure to edit the export names to be SQL friendly (blank space removed and replaced with an underscore). The isnull SQL function will ensure the GL Number: will not appear if there is no value in the Fund_GL_Number export.

isnull('GL Number: ' + @Fund_GL_Number , '') + isnull(@Fund_Restriction , '')

exports for fund GL number and restriction status are added

 


Was this article helpful?