Creating search filters for BMC applications


BMC Helix Knowledge Management by ComAround supports creating filters to narrow down search results in BMC applications based on predefined conditions. These filters use article tags as filtering criteria. A single filter can combine multiple article tags by using the AND or OR operators. When users search for knowledge articles in a BMC application that uses a specific filter, the search results return only the articles that include a tag or a combination of tags defined in the filter. 

You can create and use search filters for the following BMC applications:

  • BMC Helix Virtual Agent
  • BMC Helix Digital Workplace Advanced
  • BMC HelixGPT

Important

This functionality is currently not supported for other BMC applications that use BMC Helix Knowledge Management by ComAround as a search provider. 

As an administrator of BMC Helix Innovation Studio, you can create search filters for supported BMC applications. After you create a search filter in BMC Helix Innovation Studio, you must enable it in the BMC application. For more information about enabling search filters for the required chatbot instance in BMC Helix Virtual Agent, see Defining a knowledge search provider for chatbot. Learn how to enable search filters for BMC Helix Digital Workplace Advanced in Configuring search.

The following image shows the benefits of using search filters:

search_filters_benefits.png

Static and dynamic tags

When you create search filters in BMC Helix Innovation Studio, you can use the following types of tags:

Tag type

Definition

Example

Static

Static tags are predefined and fixed descriptive labels or keywords assigned to articles in BMC Helix Knowledge Management by ComAround.

For example, Line of business=HR is a static tag. 

If the search filter uses this tag as filtering criteria, the search results return only the knowledge articles that include the Line of business=HR tag. 

Dynamic

Dynamic tags are constructed on-the-fly based on custom processes that query CTM forms. These processes obtain information specific to a current user from a CTM form and use this information to construct the tag. Dynamic tags are generated for each user, and they have different output for each user. However, the structure of dynamic tags is fixed. Dynamic tags consist of an attribute of the tag and the tag value. For example, Line of business (attribute)=Finance (value).

During the search, the generated dynamic tag is compared with static tags assigned to articles inBMC Helix Knowledge Management by ComAround. Only the articles that contain a static tag identical to the generated dynamic tag are returned in the search. Therefore, static tags must follow the same syntax as dynamic tags for successful tag mapping during the search.  

Note: You can distinguish dynamic tags by the presence of the cogwheel icon next to the tag name get_region_tag.png

A predefined set of dynamic tags is available by default.  However, as an administrator of BMC Helix Innovation Studio, you can create custom dynamic tags. For more information, see (Optional) To create a process that constructs a dynamic tag

For example, Get Region is a dynamic tag. Region is an attribute of the tag, and the tag value is determined dynamically. 

This tag is based on the custom process definition that queries the CTM:People form and determines a region to which a specific user belongs. For example, if a user belongs to the Europe region, the Region=Europe tag is generated in real time. If another user belongs to the US region, the Region=US tag is generated. 

If the search filter uses this tag as filtering criteria, it maps this dynamic tag to static tags added to the knowledge articles and returns only the articles that include the identical static tag.

If you add Region=Europe static tag to articles about vacation policies in Europe and the Region=US tag to articles about vacation policies in the US, the search filter maps the generated dynamic tags to these static tags and returns articles with the Region=Europe tag for the user from Europe and articles with the Region=US tag for the user from the US.

The following table provides information about dynamic tags available by default, and their structure. You can also find information about the formatting patterns that static tags in the knowledge articles must follow for proper mapping with each dynamic tag. 

Dynamic tag

Description

Dynamic tag structure

Required syntax of static tags

Get Company

Obtains information about the company of a current user by using the CTM:People form from BMC Helix ITSM

Company=Company of a current user

Company=Company name

For example, Company=Apex Global

Get Department

Obtains information about the department of a current user by using the CTM:People form from BMC Helix ITSM

Department=Department of a current user

Department=Department name

For example, Department=Payroll

Get Knowledge Set

Obtains information about the knowledge set of a current user by using the following forms:

  • CTM:People IS Personas Detail form from BMC Helix ITSM
  • com.bmc.dsm.shared-services-lib:Line of Business form from BMC Helix Business Workflows Shared Services Library.
  • com.bmc.dsm.knowledge:Knowledge Set form fromBMC Helix Business Workflows Knowledge Management 

Knowledge Set=Knowledge set of a current user

Knowledge Set=Knowledge Set name

For example, Knowledge Set=Policy

Get Line of Business

Obtains information about the line of business of a current user by using the following forms: 

  • CTM:People IS Personas Detail form from BMC Helix ITSM
  • com.bmc.dsm.shared-services-lib:Line of Business form from BMC Helix Business Workflows Shared Services Library.

Line of business=Line of business of a current user

Line of business=Line of business name

For example, Line of Business=Human Resource

Get Region

Obtains information about the region of a current user by using the CTM:People form from BMC Helix ITSM

Region=Region of a current user

Region=Region name

For example, Region=Europe

Get Site

Obtains information about the site of a current user by using the CTM:People form from BMC Helix ITSM

Site=Site of a current user

Site=Site name 

For example, Site=Tel Hai

Get Support groups

Obtains information about the support group of a current user by using the CTM:Support Group Functional Role People Assoc Join form from BMC Helix ITSM. It is a join form between CTM:SupportGroupFuncRoleLookUp and CTM:People.

Support Group=Support group of a current user

Support Group=Group name

For example, Support Group=BMCOpsMonitoring Support Group1

Important

You can edit the predefined dynamic tags so that their formatting patterns follow the structure of your existing static tags. For more information, see (Optional) To edit the process of a predefined dynamic tag

Scenarios for creating search filters 

The following scenario describes how a company creates and uses a search filter that includes static tags for BMC Helix Digital Workplace Advanced. However, the process of creating and utilizing search filters with static tags is identical for BMC Helix Virtual Agent.

Scenario for creating a search filter with static tags

In BMC Helix Digital Workplace Advanced, Apex Global has created multiple specialized workplace pages for different lines of business. The company wants each workplace page to return only the knowledge articles that relate to a specific line of business. Apex Global uses BMC Helix Knowledge Management by ComAround as a search provider for BMC Helix Digital Workplace Advanced. Therefore, the company can create filters to limit search results in workplaces.

As an administrator at Apex Global, Jordan must create a search filter for the HR workplace page. The HR workplace page must return only HR-related articles from BMC Helix Knowledge Management by ComAround. Jordan creates a search filter in BMC Helix Innovation Studio. He selects the Line of business=HR and the Operational Tier 1=People static tags as fileting criteria. In BMC Helix Digital Workplace Advanced, Jordan enables the created filter for the HR workplace. As a result, when users search for articles in the HR workplace, the system returns only those articles that include both Line of business=HR and Operational Tier 1=People tags. The image shows how Jordan creates and enables this filter for BMC Helix Digital Workplace Advanced.

Scenario_static_tags.png

The following scenario describes how a company creates and uses a search filter that includes a dynamic tag for BMC Helix Virtual Agent. However, the process of creating and utilizing search filters with dynamic tags is identical for BMC Helix Digital Workplace Advanced.

Scenario for creating a search filter with a dynamic tag

In BMC Helix Virtual Agent, Apex Global has created a single chatbot to address queries of employees from different organizations. The company wants this chatbot to return only the knowledge articles that relate to a user's organization. Apex Global uses BMC Helix Knowledge Management by ComAround as a search provider for BMC Helix Virtual Agent. Therefore, the company can create filters to limit search results in this chatbot.

As an administrator at Apex Global, Jordan must create a search filter for the Organization chatbot. Jordan creates a custom process to construct the Get Organization dynamic tag. This custom process determines the organization to which a specific user belongs, and constructs the tag in real time. Then, Jordan creates a search filter in BMC Helix Innovation Studio. He selects the Get Organization dynamic tag as a filtering criterion. In BMC Helix Virtual Agent, Jordan enables the created filter for the Organization chatbot. As a result, when users from the Support organization search for articles in the Organization chatbot, it returns only those articles that include the Organization=Support tag. Similarly, when users from the IT organization search for articles in this chatbot, the system returns only those articles that include the Organization=IT tag.

The image shows how Jordan creates and enables this filter for BMC Helix Virtual Agent.

Scenario_dynamic_tags.png

(Optional) To create a process that constructs a dynamic tag

As an administrator of BMC Helix Innovation Studio, you can create a process to construct a dynamic tag. 

Best practice
The search filter compares a dynamic tag with static tags that have been added to the knowledge articles. Therefore, the dynamic tag must adhere to the same format as the static tag to which it is mapped during the search. Before you create a process to construct a new dynamic tag, we recommend that you check the format of the static tags that are added to knowledge articles and define a process that will output the dynamic tag in the same format. For example, if knowledge articles include tags for different organizations that have the Organization=IT, you must create a process that returns the dynamic tag with the same structure. 

  1. Log in to BMC Helix Innovation Studio and navigate to the Workspace tab.
  2. Click the application for which you want to create a dynamic tag:
    1. To create a dynamic tag for BMC Helix Virtual Agent, click BMC Chatbot.
    2. To create a dynamic tag for BMC Helix Digital Workplace Advanced, click Digital Workplace
  3. Click the Processes tab and click New
  4. On the Process Properties pane, specify the following fields:
    1. Name—enter a name for the process.

      Important

      The name must start with CONTENT TAG to filter out processes that create dynamic tags. For example, CONTENT TAG Get Organization. Otherwise, the created dynamic tag won't be displayed in the list of tags available for selection. 

    2. Run as—Select Administrator
  5. On the Process Properties pane, add the Output process variable required for the workflow.
    1. In the VARIABLES section, click Add/ Remove Variables
    2. Click Add Variable.
    3. In the Name field, enter tag.
    4. In Variable type field, select Output.
    5. From the Data Type list, select Text.
    6. Click Save.
      variable.png
  1. In Workflow designer, drag and drop the Get Records by Query element on to the canvas and map the required process input variables: 
    1. On the Settings icon.PNG GENERAL tab, in the INPUT MAP section, from the Record Definition Name list, select the CTM form you want to query. For example, select People.
    2. In the INPUT MAP section, click Click to build an expression and build the following expression that queries the selected CTM form: 
      expression.png
      This expression queries the selected CTM form for the current user. 
    3.  In the OUTPUT MAP section, to add the process output parameter, click Add and specify the following output parameters:
      1. From the Name field, select tag.
      2. Click Click to build an expression for the Source parameter. 
      3. In the expression builder, construct an expression that will be returned as a tag. Enter the attribute of the tag as text and select the tag value from the list of available form values. See the following image for the example structure of the dynamic tag: 
        org_new_tag.png

        Important

        • You must create a single output parameter. If multiple parameters are added, the system returns only the tag parameter.
        • You must construct the entire string that will be returned as a tag. 
      4. Click Ok.
  2. Click Save

The new dynamic tag is created. You can select it from the list of tags while creating a search filter. 

(Optional) To edit the process of a predefined dynamic tag

As an administrator of BMC Helix Innovation Studio, you can edit processes that define dynamic tags provided by default.

Best practice
You can edit the predefined dynamic tags so that their formatting patterns follow the structure of your existing static tags. For example, if you have static tags that follow the Reg:Region name structure, you can edit the Get Region dynamic tag so that its structure is Reg:Region of a current user instead of Region=Region of a current user

However, we recommend that you don't edit the predefined dynamic tags and create new dynamic tags instead. 

  1. Log in to BMC Helix Innovation Studio and navigate to the Workspace tab.
  2. Click the BMC Chatbot application to edit the following predefined dynamic tags:
    • Get Company
    • Get Department
    • Get Region
    • Get Site
    • Get Support groups
  1. Click the Shared Services application to edit Get Knowledge Set and Get Line of Business dynamic tags. 
  2. Click the Processes tab and select the process of the predefined dynamic tag that you want to edit. For example, select CONTENT TAG Get Region.

    Note

    For dynamic tags, the process names start with CONTENT TAG

  3. On the canvas, click the Get Records by Query element.
  4. On the Settings icon.PNG GENERAL tab, in the OUTPUT MAP section, to add the process output parameter, click Click to build an expression for the Source parameter.
  5. In the expression builder, edit the defined expression that is returned as a tag. See the following image for the example edited structure of the dynamic tag:  
    reg_edited.png
  1. Click Save

To create a search filter

  1. Log in to BMC Helix Innovation Studio and click Administration
  2. Select Knowledge management > Search filters
  3. On the Search filters page, click New search filter and specify the following fields:

    Field

    Action

    Name

    Enter the name for a search filter.

    Relationship

    Select one of the following logical operators to define the relationship between filtering criteria: 

    • AND—Returns articles that meet all filtering criteria. For example, Line of Business=HR and Operational Tier 1=People.
    • OR—Returns articles that meet any filtering criterion. For example, Line of Business=Office Facilities or Knowledge Set=Office.

    Important: You cannot combine AND and OR logical operators in a single filter. You can use only one operator to define the relationship between all selected filtering criteria. For example, you cannot define the following filtering expression: Company=Apex Global and Line of Business=Office Facilities or Knowledge Set=Office.

    Tags

    Select one or multiple article tags to be used as filtering criteria. You can combine static and dynamic tags in a search filter. 

    Important: Only existing static and dynamic tags are displayed in the list. However, you can add new static tags to the articles or create custom dynamic tags. For instructions on how to create a dynamic tag, see (Optional) To create a dynamic tag

    Tip: To see the list of predefined tags, click on a text input area of the Tags field. Alternatively, you can enter the tag name. When you begin entering the tag name, a list of suggested selections appears.  You can distinguish dynamic tags by the presence of the cogwheel icon next to the tag name get_region_tag.png.

    To remove a selected tag, hover over the tag and click the Remove remove_icon.png icon. 

    The following image shows a sample search filter. In the example scenario described in this topic, Jordan creates the same filter for the HR chatbot. 
    search_filters_new.png

  4. Click Save

You have created the search filter. This filter is displayed on the Search filters page. To modify this or other created filters, open the filter by clicking its name. 

Important

When you edit existing filters, the Save button becomes available only after you make any changes to the filter. 

Where to go from here

After you create a search filter, you must enable it for your BMC application.

Action

Reference

To enable the search filter for BMC Helix Virtual Agent

To enable the search filter for BMC Helix Digital Workplace Advanced

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*