Using Relationships
A business object relationship lets two business objects collaborate. More specifically, it lets the records included in the objects work together. In a relationship, business objects can belong to other business objects or simply be associated with other objects.
Each relationship contains these objects:
- Parent object: This object is the center of a relationship with one or more child objects. Only a master object can function as a parent object.
- Child object" This object is the supplier of additional data to a parent object.
An incident object can have a relationship with a notes object so you can track notes pertaining to a specific incident. Because incident is a master object, it becomes the parent to notes, the child object.
Business Object Relationships
The Link Field
Records in a relationship link through a constraint that specifies how records find each other. In most cases, a relationship uses the standard constraint, a parent link field, which is included in the child and stores the RecID of the parent. Sometimes a special constraint is required or an additional constraint is needed in the parent. In these cases, a relationship relies on a Link field.
A Link field is a special system field that stores the RecID of a record. It also stores a category for identifying and linking records in a business object relationship. When you create a master-child or standard-child object, the system creates the parent link field for you.
Relationship Types
- Contains: The child object belongs to, and is dependent on, the parent object. The child record is loaded, saved, and deleted with its parent. These relationships are listed under the Relationships and Relationships v2 tabs.
- Associates. The child object is relevant to the parent object, but does not belong to the parent. The child object is independent. These relationships are only listed under the Relationships v2 tab.
Embedded Relationships
You can extend contains and associates relationships to embedded relationships. An embedded relationship is a special relationship where the child object is embedded into the parent to display one special child record.
You always embed a single object into a parent. The single object can be a member of a business object group.
Embed the Address.Phone object into the employee object so that a home phone (one special record) displays on a contact record. You can also embed the entire address group into the employee object to display phone numbers, mailing addresses, and email addresses.
Groups in Relationships
Groups can be part of a relationship, and can function as a parent or as a child. How they function depends on whether the group is a master or standard group.
1. | Within the Configuration Console, open the business object that you want to be the parent. For example, open the incident object. |
2. | Select the Relationships tab. The relationships list appears. |
3. | Click Add New. A list of objects appears. |
4. | Select the object that you want to relate (the child object). For example, select the task object. The Relationship Details page appears. |
5. | Enter information into the fields. |
Field | Description |
---|---|
Display Name |
The relationship name to be viewed in the HEAT interface |
Internal Reference Name |
The internal reference name for this relationship. The system stores this name in the database. |
Relation To |
The relation to the child object. This value is automatically generated. |
Relationship Is Audited |
Automatically creates an entry in the audit history log when this object is modified. See Accessing the Audit History. |
Full Text Search Enabled | Enables the relationship to be included in full-text searches. For a queries to return related objects, at least one field in the business object and related objects must be enabled for full-text search. |
Prevent Delete when Relationship exists | Prevents deleting this object if an relationship exists. |
This Business Object |
Defines how many child records are permitted relative to the parent business object (cardinality):
|
Associates with Contains |
Defines the binding type:
|
Profile |
Defines the cardinality of the target business object:
Examples:
|
Primary Key |
Select the field to share data for this business object from the drop-down list. |
Equals To Use Link Table |
Defines how the data is passed between records:
|
IsAsymmetric |
Check if the relationship is asymmetrical. |
Commonly Used | Check if this relationship is commonly used. |
Condition |
Adds a condition as an additional restriction, combining fields from the current business object and functions from the functions folder. The business objects are considered related only if the condition is evaluated as true.
For an example, see Hiding Related Items in Closed Status. |
Group object type selector |
Use this to set the child type from the parent. In a one-to-one relationship, you can specify a field on the parent object that dictates the child object type. For example, you can use a field on the incident parent object to specify the type of form shown. Select a parent object field type drop-down list.
|
Update This Object's Fields |
Defines how to push the data from the target object to this business object. To do so, add fields to be updated for this business object, if needed, upon meeting the condition. These fields are updated when a relationship is established, such as when creating a child record or when linking two objects.
|
Update <Target Object> Fields |
Add fields to be updated for the target business object, if needed, upon meeting the condition.
|
6. | Click Save from the toolbar. |
Some business object relationships are locked to prevent the modification or removal of items that the system requires. Your customization level determines which relationships you can delete.
To implement definition changes in your live system, create and commit a definition set containing the modifications. Ensure you have rights to create and commit definition sets.
Relationships have dependencies that, upon deletion, can be broken. For example, a task can no longer be assigned from an incident if the relationship between incident and task is deleted. Ensure that you are comfortable with deleting the relationship and have properly prepared for its deletion.
- Within the business object under the Relationships tab, click Delete at the end of the row of the relationship you want to remove.
The relationship no longer appears on the page.