Foreign Key Logical Joins
If foreign key logical joins are used, the primary key of a logical fact table should then be comprised of the foreign keys. If the physical table does not have a primary key, the logical key for a fact table needs to be made up of the key columns that join to the attribute tables as follows:
- Look at the foreign keys for the fact table and find references for all of the dimension tables that join to this fact table.
- Create the logical key of the fact table as a combination of those foreign keys.
If this guideline is not followed, the following error may occur:
[nQSError: 46036] Internal Assertion
Complex Logical Joins
If complex logical joins are used, then there is more flexibility in defining the primary key. If the physical table has a primary key, then this field can be used as a logical key for the fact table. This is the method used in the Repository.