Informazioni sui riferimenti circolari
Se in una struttura di dati sono presenti riferimenti circolari ("loop" o ciclo), le tabelle vengono associate in modo che esistano più percorsi di associazioni tra due campi.
È consigliabile evitare per quanto possibile questo tipo di struttura di dati, perché potrebbe comportare ambiguità di interpretazione degli stessi.
QlikView risolve il problema dei riferimenti circolari interrompendo il loop con una tabella logicamente disconnessa. Se QlikView rileva strutture di dati circolari durante l'esecuzione dello script di caricamento, viene visualizzata una finestra di dialogo di avviso e una o più tabelle vengono impostate come logicamente disconnesse. In genere QlikView esegue un tentativo di disconnessione della tabella più lunga all'interno del loop, perché si tratta spesso di una tabella di transazioni che normalmente corrisponde alla tabella da disconnettere. Nel visualizzatore tabelle le tabelle logicamente disconnesse sono indicate da collegamenti rossi punteggiati verso altre tabelle.
Esempio:
I dati vengono caricati da tre tabelle che includono le informazioni seguenti:
- Nomi di alcune squadre di calcio nazionali
- Club di calcio in alcune città
- Città di alcuni paesi europei
Questa struttura di dati presenta dei problemi, in quanto il nome di campo Team viene utilizzato per due scopi differenti, per indicare sia le squadre nazionali sia i club locali. I dati presenti nelle tabelle creano una situazione considerata logicamente impossibile.
Quando si caricano le tabelle in QlikView, QlikView determina qual è la connessione dati meno importante e disconnette la tabella.
Selezionare il visualizzatore tabelle per verificare in che modo QlikView interpreta l'importanza delle connessioni dati:
La tabella con le città e i paesi di appartenenza delle squadre è ora logicamente disconnessa dalla tabella delle squadre nazionali di paesi diversi e dalla tabella con i club locali di città differenti.