Skip to main content

Understanding circular references

If there are circular references ("loops") in a data structure, the tables are associated in such a way that there is more than one path of associations between two fields.

This type of data structure should be avoided as much as possible, since it might lead to ambiguities in the interpretation of data.

QlikView solves the problem of circular references by breaking the loop with a loosely coupled table. When QlikView finds circular data structures while executing the load script, a warning dialog will be shown and one or more tables will be set as loosely coupled. QlikView will typically attempt to loosen the longest table in the loop, as this is often a transaction table, which normally should be the one to loosen. In the table viewer, loosely-coupled tables are indicated by the red dotted links to other tables.

Example:  

Data is loaded from three tables that include the following:

  • Names of some national soccer teams
  • Soccer clubs in some cities
  • Cities of some European countries
Three tables: The NationalTeams table, containing Country and Team fields; the Clubs table, containing City and Team fields; and the Cities table, containing the Country and City fields.
View of the source data tables

This data structure is not very good, since the field name Team is used for two different purposes: national teams and local clubs. The data in the tables creates an impossible logical situation.

When loading the tables into QlikView, QlikView determines which of the data connections that is least important, and loosens this table.

Open the table viewer to see how QlikView interprets the relevance of the data connections:

QlikView strongly connects the Team fields and loosely connects the Country and City fields.

The table with cities and the countries they belong to is now loosely coupled to the table with national teams of different countries and to the table with local clubs of different cities.

Did this page help you?

If you find any issues with this page or its content – a typo, a missing step, or a technical error – let us know how we can improve!

Join the Analytics Modernization Program

Remove banner from view

Modernize without compromising your valuable QlikView apps with the Analytics Modernization Program. Click here for more information or reach out: ampquestions@qlik.com