This documentation supports the 21.02 version of BMC Helix Innovation Studio.

To view an earlier version, select the version from the Product version menu.

Facilitating data entry through named lists

In BMC Helix Innovation Studio, a named list is a reusable list of data that you can associate with a record field to make data entry faster and more accurate. Use named lists to assist with data entry on application UI fields in BMC Helix Innovation Studio. After you associate a named list with a record field, you can enter the named list name in a field and a list of values are displayed.

Named lists offer the following advantages:

  • Restricts the input to a specified set of valid options, which eliminates input error for the values entry and ensures consistency.
  • Speeds up the speed of data entry by allowing the selection of options rather than manual value entry.

You first create a named list in BMC Helix Innovation Studio, and then associate that named list with a record definition or a view definition.

Important

Application business analysts can customize the objects developed in their own applications and that are marked customizable by the administrator, but cannot customize the objects developed in com.bmc.arsys in Best Practice Customization mode. For example, objects in core BMC applications like Foundation, Approval, and Assignment cannot be customized in Best Practice Customization mode.


To create a named list

  1. Log in to BMC Helix Innovation Studio and navigate to the Workspace tab. 
  2. Select the application for which you want to add a named list.
  3. On the Named Lists tab, click New.
  4. On the Create Named List window, specify the properties for the named list. 

    The following table provides information about the properties: 

    PropertyDescription
    Name of ListProvide a unique name of the list. The name must start with an alphanumeric character. Only alphanumeric characters, hyphens, dashes and spaces are allowed in the name.
    Record DefinitionIdentify the record definition to associate the named list. Note: The Application/Library scoped definitions are marked with an asterisk ( * ). Ensure that you follow the guidelines listed in Object definition scope before you select these definitions.
    Condition to Filter List ResultsDefine the condition to control which items appear on the named list in the application.
    Label Field to be Displayed to the UserProvide the name of the field that you want displayed to the user.

    Source Field for Value of SelectionDefine the value to associate the named field with the record. This name list is displayed on the view definition.
    If you select different fields for Label Field to be Displayed to the User and Source Field for Value of Selection, see selecting different fields for label and source.
    Scope/Customization OptionsOption to define the scope for a named list definition. This option further contains the following options:
    • Application/Library (default)—To limit the use of the definition within the same Digital Service application or library. 
    • Public—To enable the definition to be used by all the applications or library and allow customizations for this definition.
  5. Save the named list.

 Selecting different fields for label and source

If you select different fields for Label Field to be Displayed to the User and Source Field for Value of Selection, you must add a field to the selected record definition to store the label value and create a rule to populate label value. So that when you use the record definition that has support group field with this named list associated in a record grid, you can add label field for support group and filter the record grid data based on the label value.

If you do not add a field to store the label value and rule to populate label value, you use the record definition in a record grid in a view definition. On the view definition, when you apply filter on the support group field, the search result does not displays (displays zero row) the result for the support group field.

Example:

Consider the following definitions:

  • Record definition Ticket—consists of Customer ID field (in Ticket) is bound to named list Customers
  • Named list definition Customers—consists of different values for Label Field to be Displayed to the User and Source Field for Value of Selection and the definition uses record definition Ticket
  • View definition—consists of a record grid (for Ticket)

Using the view definition if you want filter and sort customers (by Customer name), you must fulfill the following considerations:

  • In the record definition Ticket, you must have two fields:
    • for storing the ID
    • for storing the Label (Customer Name)
  • For creating record instances (for record definition Ticket), record editor you use should only expose the Customer ID field (which is displayed as a dropdown list of Customer Names).
  • A rule to update the Customer Name field when a Ticket is created or updated. Following are the sample images for creating rule:

     Sample image
    Rule

    Action properties

    Trigger properties

    Rule properties

    Following is the sample JSON for creating rule:

    {
      "version": null,
      "lastUpdateTime": "2016-11-03T15:48:16.264+0000",
      "lastChangedBy": "jonnie",
      "owner": "jonnie",
      "name": "com.example.taskmanager:Update Ticket Customer Name",
      "tags": null,
      "description": null,
      "overlayGroupId": "1",
      "guid": "rxGAA5V0GEZNIAO6COPWO5HAFSYUYX",
      "triggerEvent": {
        "resourceType": "com.bmc.arsys.rx.services.rule.domain.RecordTriggerEvent",
        "eventTypes": [
          "ON_UPDATE",
          "ON_CREATE"
        ],
        "executionOrder": 500
      },
      "isEnabled": true,
      "recordDefinitionNames": [
        "com.example.taskmanager:Ticket"
      ],
      "qualification": null,
      "actions": [
        {
          "resourceType": "com.bmc.arsys.rx.services.rule.domain.CustomRuleAction",
          "name": "Get Record",
          "actionTypeName": "getRecord",
          "inputMap": [
            {
              "assignTarget": "recordDefinitionName",
              "expression": "\"com.example.taskmanager:Customer\""
            },
            {
              "assignTarget": "recordID",
              "expression": "${ruleContext.Customer ID}"
            }
          ],
          "outputMap": [
            {
              "assignTarget": "Customer Name",
              "expression": "${actionResult.output.10001995}"
            }
          ],
          "runAsUser": null
        }
      ],
      "overlayDescriptor": null,
      "allowOverlay": false
    }

When add a field to store the label value and create a rule to populate label value, record grid (for Ticket) displays the Customer Name column which allows you to filter and sort customers.

Associating the named list

After you create a named list, you associate the named list with a record definition or a view definition. 

To associate the named list with a record definition

  1. Log in to BMC Helix Innovation Studio and navigate to the Workspace tab.
  2. Select the application for which you want to add a named list.
  3. Click the Records tab.
  4. Select the record definition to which you want to associate the named list.
  5. Select the field name for which you want to define a named list.
  6. Click the Settings icon  in the Properties pane.
  7. From the Named list drop-down list, select the named list.
  8. Click Save.

To associate the named list with a view definition

  1. Log in to BMC Helix Innovation Studio and navigate to the Workspace tab.
  2. Select the application for which you want to add a named list.
  3. On the Views tab, click the name of the view definition to which you want to associate a named list.
  4. From the Palette pane, drag and drop the Text component to the canvas as you want it to appear on the user interface.
  5. Click the Settings icon  in the Properties pane.
  6. From the Field Name drop-down list, select the record field with the named list association.
  7. Click Save.

Related topics

Creating the definitions for a tailorable application

Defining record definitions to store and manage data

Working with view definitions  

Defining the application business logic through processes

Adding rules to validate data or trigger events in a process

Was this page helpful? Yes No Submitting... Thank you

Comments