Page tree

Relationship Diagram Fields

A relationship diagram field is a special data type that allows users to visualize the relationships between linked records in a tree diagram. The possible uses of the Relationship Diagram field are numerous,  as it can model a large range of scenarios where there are dependencies and linked relationships between organizational assets, tasks, contracts, and other items. For instance, a business might support various clients with individual configurations of hardware and software, and the relationship diagrams could enable them to keep track of these setups and the dependencies that they require. As another example, software release versioning could include various functionalities and features, breaking changes, and interdependent components - all of these could be represented in relationship diagrams for a release version number and maintained in future releases.

The example below illustrates a simple relationship diagram:

Relationship diagram showing related assets

In this case, the company's Slack/Email/Calendaring system Uses a Slack Company Account, and Requires an Exchange Server to run. This Exchange Server uses another set of components. The diagram is restricted to depicting a unidirectional relationship from the selected parent record to the last child. However, viewing the diagram from another item in the tree would show a different set of relations from the perspective of the selected record; for instance, the Slack Company Account would show Is Used By Email/Calendaring/Slack. 

Some additional examples of possible scenarios where a relationship diagram could be useful include:

  • An organizational chart using the Role field in the Employees table. 
  • Record versioning with links to prior records.
  • Linked tasks, showing dependent and precedent tasks. 

Configuring Relationship Diagram Fields

Before you start, make sure the following items are configured in the table where you want to build the relationship diagram:

  • A linked field set or related table that identifies parent / upstream relationships.
  • A linked field set or related table that identifies children / downstream relationships.
  • A field or planned hard-coded text to use to label the arrows in the diagram. 
  • A field used to identify each item in the diagram item, typically a summary field. For example, you might use Contract Title for contracts or the Model Name/Number field for assets to label the item boxes.
  • Optionally, an image field used to show icons next to each item name in the diagram. If you use this option, you can also choose the maximum icon size.

To begin, navigate to the Setup Table wizard for the table where you want to add a relationship diagram.

  1. On the Fields tab of the table wizard, select New > Relationship Diagram Field.
  2. On the General tab, name the action and enter admin notes.
  3. On the Options tab:
    1. Select the linked relationship that identifies the parent records.
    2. Choose the relationship that identifies the child records.
    3. Once you choose the linked set or related table for each, you can optionally add a saved search to further limit the items included in the diagram from the related table. 
    4. You must also choose a field in the table that holds the Relationship Name, or enter a hard-coded label for the arrows.
    5. Configure the remaining field settings, including its conditional editing and visibility.
  4. On the Permissions tab, set view and edit permissions to the field.
  5. On the Display tab:
    1. Select the number of levels to show above and below the selected record.
    2. Choose a layout for the diagram.
    3. Select the Look and Feel style for the item boxes.
    4. For the selected item, its parent records, and its child records, select a representative field that identifies the item. The field you select is the label applied to the item boxes. In most cases, you should use a summary field, such as Title or Full Name.
    5. Choose any additional display options, such as the arrow type, layout direction, and icon field.
  6. Click Finish.

Next, add the relationship diagram to the table layout. Place it near relevant or related information, such as the fields that link to the record's parent or child records.

Example Management Diagram button

You can also add the diagram field to the table view. This can allow you to gain a quick overview of table relationships without going into the record.

Defining Field Relationships

Because of the flexibility of relationship diagrams, there isn't a single default way to add field relationships. A KB could include several related tables which separately hold relationship information, enabling a very robust diagram setup that provides reporting on corporate assets. For instance, in our ITIL knowledgebase, we've set up special tables and fields to define these relationships for Configuration Items.

On the other hand, a single table may be designed to hold all of the necessary fields, and a very simple relationship diagram may be set up with a small number of fields designed for a specific purpose. The examples below illustrate how to create a relationship diagram for Contracts, depicting parent and child contracts, all within the same table.

 At a minimum, field relationships should include the following:

  • The items to be modeled must exist in a relationship that would be useful for diagramming. For instance, whenever a related contract is added in the Contracts table, it creates a relationship to its parent contract. 
  • The relationship must be modeled using a linked field or related table. For instance, the Contracts table contains a related table to the Contracts table that depicts the relationship between the current contract and its parent contract.  
  • There must be a field holding relationships for the arrow labels, if you are not simply using text labels. Relationship fields must be available for both parent and child fields or tables. This should be a choice field, and can be a part of the normal table setup. For example, a related Contract could use the Record Type field to label the arrows, which would produce results like Master Agreement for upstream relationships and Subcontract or Amendment for downstream contracts.