Each member of a child entity must have a parent. For example, considering the CustomeràCity relationship, each Customer must be related to a City. When there is a missing childàparent relationship, the item in the child entity is called an orphan. Relationships are used when data is aggregated (rolled-up) and orphans can cause data inconsistencies. For example, let’s consider a Sales Amount InfoCube, structured by Customer. If a customer is not related to any city, then when this InfoCube is aggregated by city the data of the orphan customer does not roll-up into any city giving an incomplete answer. It is therefore important to make sure that there are no orphans. Refer to following paragraphs for instructions on how to identify and remove orphans.
Relationships can be assigned either manually, one by one selecting for each child member its parent, or through a DataReader that reads a file containing child code and parent code information. Refer to the DataReader section for more details on loading relationships from an external data source.
To assign a relationship manually, go to the relationships window,
Go to the child entity row, click the name of the desired parent entity. For example, to assign a CustomeràCity relationship, click City on the Customer row.
Clicking the entity opens a window listing all entity members of the less aggregate entity and the related parent.
Select the child member you wish to define a parent for, then choose the parent from the parent entity window
Note:
After manually assigning relationships, click the Scan button to check for the presence of missing relationships. The scan function highlights in red entities which have undefined relationships (orphan items).