Charakterystyka odwołań cyklicznych
Gdy struktura danych zawiera odwołania cykliczne (pętle), tabele są skojarzone w taki sposób, że istnieje więcej niż jedna ścieżka powiązania dwóch pól.
Takich struktur danych należy unikać, ponieważ mogą powodować niejednoznaczne interpretowanie danych.
W QlikView problem odwołań cyklicznych można rozwiązać, przerywając pętlę za pomocą tabeli luźno powiązanej. W razie znalezienia cyklicznych struktur danych podczas wykonywania skryptu ładowania QlikView wyświetli okno dialogowe z ostrzeżeniem, po czym co najmniej jedna tabela zostanie ustawiona jako luźno powiązana. QlikView podejmie zazwyczaj próbę poluzowania najdłuższej z tabel należących do pętli, ponieważ często będzie to tabela transakcyjna, która zazwyczaj powinna być w pierwszej kolejności ustawiana jako luźno powiązane. W przeglądarce tabel tabela luźno powiązana jest wskazywana czerwoną linią przerywaną biegnącą do innych tabel.
Przykład:
Dane są ładowane z trzech tabel, które obejmują:
- Nazwy piłkarskich reprezentacji narodowych
- Kluby piłkarskie w niektórych miastach
- Miasta w niektórych europejskich krajach
Ta struktura danych nie jest naprawdę prawidłowa, ponieważ nazwa pola Team jest używana dla dwóch różnych celów: dla drużyn narodowych i klubów lokalnych. Dane w tabelach tworzą niemożliwą sytuację logiczną.
W przypadku ładowania tabel do QlikView QlikView ustala, które połączenie do danych jest najmniej istotne i poluzowuje tę tabelę.
Aby sprawdzić, w jaki sposób QlikView interpretuje istotność połączeń do danych, należy otworzyć przeglądarkę tabel:
Tabela z miastami i krajami, do których należą, jest teraz luźno powiązana z tabelą zawierającą drużyny narodowe różnych krajów, a także z tabelą zawierającą kluczy lokalne z różnych miast.