This documentation supports the 20.08 version of BMC Helix Platform.  To view an earlier version, select 20.02 from the Product version menu.

Creating record associations


In BMC Helix Innovation Studio, you can create an association between two record definitions to define a relationship between them. You associate two record definitions so that you can use the data from one record for another record.

For example, you associate the Company record with the Location record. This association enables you to define the different locations for the same company.

While creating a record association, you specify the following parameters for the association:

  • Cardinality—Type of relation between the records within the association, such as, one-to-one, one-to-many, and many-to-many.
  • Constraint—Limitation for an association, such as, automatic deletion of the associated records. If record1 is associated to record2, and you delete record 2, then record1 is also deleted automatically.

Notes

  • Application business analysts can customize the objects developed in their own applications and that are marked customizable by the developers, but cannot customize the objects developed in com.bmc.arsys. For example, objects in core BMC applications like Foundation, Approval, and Assignment cannot be customized.
  • Record associations are not supported for external record definitions.

Types of associations

The following table describes the different types of associations:

Type of association

Description

Direct association

Defines a direct relationship between the two records in the association, such as, one-to-one and one-to-many relationships. Multiple fields of one record and multiple fields of other records can be a part of the association.

Entries in two forms contains direct references to each other. For example, see the following image:

Direct association_example.JPG

Indirect association

Defines an indirect relationship between the two records in the association; the records can be related to each other using a third record, such as many-to-many relationship.

Entries in two related forms do not have reference to each other. For example, see the following image:

Indirect association example.JPG

Self association

Defines a relationship in which a self record definition is associated to itself through a direct relationship.

For example, employee Manager association. A manager belongs to the manager role and a manager also belongs to an employee role.

The following image illustrates a self association:

Self association example.JPG

To create a record association

The following video helps you to create a record association. The video shows an older version of BMC Helix Platform. The previous product name was BMC Helix Innovation Suite. Although there might be minor changes in the UI, the overall functionality remains the same:

icon_play.png https://youtu.be/9bOObkK2Kx8

  1. Log in to BMC Helix Innovation Studio and navigate to the Workspace tab.
  2. Select the application or the library for which you want to create an association.
  3. Select Associations > New.The Create Association window is displayed as shown in the following image:

    Direct record association.png

  4. Complete the fields as described in the following table:

    Field

    Action

    Association Name

    Type a unique name that identifies the association.
    The association name must start with an alphanumeric character. Only alphanumeric characters, hyphens, underscore, and spaces are allowed in the association name.

    (Optional) Description

    Provide a short description of the association.

    First Record

    Select the source entity or the starting point of your association. 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.

    (Optional) Role of First Record

    Provide a description for the first record, which explains the record in the context of the association.

    To associate two records from a process, if you use the Associate Records element and select the Use Default Roles toggle key, then, the value you specify in Role of First Record is used. For more information about associating records from a process, see Creating-associations-using-Association-Service-Task.

    Cardinality

    Select any one of the following relationship among the record definitions:

    • If you want to create a direct record association, select the cardinality as Has One or Has Many.
    • If you want to create an indirect record association, select the cardinality as Many To Many.

    Second Record

    Select the target entity or the ending point of your association. 
    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.

    (Optional) Role of Second Record

    Provide a description for the second record, which explains the record in the context of the association.
    To associate two records from a process, if you use the Associate Records element and select the Use Default Roles toggle key, then, the value you specify in Role of First Record is used. For more information about associating records from a process, see Creating-associations-using-Association-Service-Task.

    Add Constraints

    To create a direct association, select any of the following constraints:

    • If record is deleted, automatically delete all associated records: Deletes all the associated records if the first record is deleted. This constraint adds a Cascade Delete flag to the record association.
      See the following image:
      Record association_Cascade delete flag.PNG
    • Require a record to be associated in order to create a new record: Creates the second record only when the first record is created. This constraint is available only when you specify to delete all the associated records if the first record is deleted.

    Note: A direct association is automatically created when you select any of the constraints.

    Scope/Customization Options

    Option to define the scope for association 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.

    Enable Association

    Select this item to validate and implement the association in the two records.

  5. Click Save.

To inherit an existing record association to a new record association

  1. Log in to BMC Helix Innovation Studio and navigate to the Workspace tab. 
  2. Select the application or library to which you want to inherit a record definition.
  3. Select Records > New > Regular Record

    The record with default fields is displayed. 

  4. In the Details section, click  EditIcon.png.
  5. From Record Inheritance section, click Inherit from a Record Definition.
  6. From the Record to Inherit drop-down list, select the record definition from which you want to inherit the preferences.

    The following table provides information about the properties:

    Property

    Description

    Core Fields

    Inherits all the core fields from the super record definition to the subrecord definitions. 
    If you select the Shared data with inheritors check box, the core fields of the super record definition are inherited by default.

    Note: You cannot remove any core fields from being inherited to the new record definition.

    Rules

    Inherits all the rules that are associated with the super record definition.

    Field Permissions

    Inherits all the permissions that are associated with the fields of the super record definition.

    Associations

    Inherits all the associations that are applied to the super record definition.

  7. (Optional) Specify the inheritance properties for the record definition.  

    The following table provides information about the properties:

    Property

    Description

    Shared data with inheritors

    Shares a common database with all the subrecord definitions that are inherited from this record definition. 
    You can search the database of super record definition and retrieve all the instances of super record definition and its subrecord definitions. 
    When you select this check box, by default the core fields of the super record definition are inherited and cannot be modified.

    Make Abstract

    Prohibits the user from adding properties to the super record definition.

    In such case, you must use the default inherited properties of the super record definition.

    Make Final

    Prohibits the user from inheriting this record definition.

  8. Click Save.

Where to go from here

Action

Reference

Create a new record definition or modify an existing record definition by using Record designer.

Create a record instance.

Enable row level security.

 

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