- Print
- DarkLight
This topic describes various common tasks that administrators can perform on Relationships.
In the Relationships home page, you can see all existing Relationships in a tree view. The first Entity at the top of the tree is the least-aggregate (child), while those nested and indented down along the tree are more aggregate (parents).
To manually edit an existing Relationship, drag any Entity (a node of the tree) and drop it anywhere on the desired child Entity, even if it is part of another Relationship.
You can edit one Relationship at a time using this method: if you want to edit multiple Relationships in bulk, you will have to use a Data reader.
To remove a Relationship, click on the three vertical dots and select "Remove from tree".
Moving an Entity will also move all other directly or indirectly related Entities to a more aggregate level.
Changing Relationships directly affects the ability to dynamically aggregate data in Cubes: as Relationships are used to define the structure of Cubes, any modification you make might invalidate their structure. If you change a Relationship, the structure of the affected Cubes will need to be updated manually.
Changing relationships between Entity members
Relationships between members can be changed manually, by selecting a new parent for every child member of 2 directly or indirectly related Entities.
To change relationships, proceed as follows:
Click on the desired child Entity in a Relationship
Select the parent Entity from the dropdown menu in the details panel. Each row in the details panel shows members of the child Entity paired with members of the parent Entity you have just selected
Click on a row to define a new parent member for each child member in a dedicated selection window
You can also change the relationship between members via a Data reader that reads hierarchical information from an external data source and applies it to the existing Entities. See Data reader basic concepts for more details.
Analyze and Normalize
In a parent-child relationship, each member of a child Entity must have a parent contained in one or multiple parent Entities. For example, in the Customer→City relationship, each Customer must be related to a City. When an element in a parent-child relationship is missing, the member in the child Entity with no parent is called an orphan.
Since Relationships are what Board uses to aggregate data along the hierarchical tree, orphans should always be avoided as they can cause data inconsistency.
The ANALYZE and the NORMALIZE actions available in the top left corner of the Relationships page allow you to fix missing Relationships, at the member or Entity level.
Click on the ANALYZE button to have Board scan existing relationships for orphan members. If any are found, they will be listed in the sliding panel on the right with some additional details about the missing relationship.
The "FIX RELATIONSHIPS" Button will automatically fix all relationships at once.
Click on each row to open the details panel: members with a missing relationship will be shown in orange. You can also filter the list to only see members with missing parents. To do so, click on the "Filter by missing parent" button.
Click on the NORMALIZE button to create indirect relationships using direct relationships as a bridge. For example, in the hierarchy Customer→City→State, after having created the direct relationships Customer→City and City→State, you can use the Normalize function to automatically assign the indirect relationship Customer→State based on the two existing direct relationships.
Click on the NORMALIZE button to access the dedicated configuration window: from there, you can choose the Entity used as a bridge and run normalization processes one by one by clicking the run icon that appears to the left of the row when you hover over an Entity. You can also run multiple normalization processes in bulk, by selecting all desired rows and clicking on the "RUN SELECTED" button at the bottom of the panel.
Click on the SAVE button to save the selected normalization options for later or for launching the normalization via a Procedure.