Tabele luźno powiązane
Załadowanie do QlikView danych zawierających odwołania cykliczne powoduje automatyczne utworzenie tabel luźno powiązanych. Zapobiega to zapętleniu wewnętrznej logiki podczas przetwarzania odwołań cyklicznych. Przewidywalne i zrozumiałe wizualizowanie danych wymaga odpowiedniego postępowania z takimi tabelami luźno powiązanymi.
Zamierzone tworzenie tabel luźno powiązanych
W pewnych ściśle określonych sytuacjach może być konieczne odłączenie niektórych danych od zwykłej logiki aplikacji QlikView. Wykorzystując tabele luźno powiązane, można ograniczyć propagację selekcji z jednego pola do innych pól tabeli.
Luźne powiązanie tabeli można ustawić w oknie dialogowym Właściwości dokumentu na karcie Tabele.
W tym rozdziale podano kilka przykładów sposobów, w jakie zastosowanie tabel luźno powiązanych zmienia logikę aplikacji QlikView.
Każde z trzech okien tabeli na poniższym rysunku reprezentuje jedną tabelę wczytywaną do aplikacji QlikView:
Wybranie wartości 2 w polu B ma następujące konsekwencje:
Selekcja jest uwzględniana we wszystkich tabelach, co powoduje wykluczenie wartości niepowiązanych z nią.
Teraz ustawimy tabelę Table2 jako luźno powiązaną, zachowując bieżącą selekcję. Spowoduje to przecięcie powiązań logicznych między polami A i C w tabeli Table2. Wynik będzie wyglądać następująco:
Trzeba pamiętać, że pokazane jest tutaj okno tabeli Table2, a nie sama tabela. Okno tabeli będzie pokazywać wszystkie możliwe kombinacje pól jej kolumn. Ponieważ pola A i C nie są już połączone żadną logiką, wyświetlane są wszystkie możliwe kombinacje ich wartości.
Przykład:
Trzy tabele pokazane poniżej mają dość typową strukturę: jedna tabela transakcyjna i dwie tabele wymiarów skojarzone z nią pojedynczymi polami.
Roczną sprzedaż i grupę produktów można zwizualizować w postaci tabeli przestawnej. Obok tabeli przestawnej znajdują się dwie listy wartości pokazujące pola wymiarów:
Choć jest to poprawna tabela przestawna, działanie logiki aplikacji QlikView może teraz prowadzić do niepożądanych wyników. Wybranie roku 2012 daje następujący wynik:
Grupa produktów Z nie jest już widoczna w tabeli przestawnej. Jest to całkiem naturalne, ponieważ wartość Z w polu ProdGrp została wykluczona wartością 2012 wybraną w polu Year. Podczas analizowania sprzedaży za rok 2012 zazwyczaj byłoby jednak wskazane wyświetlanie grupy Z na wykresie z wartością 0 w kolumnie sum(Amount), aby dla każdego było jasne, że istnieje grupa produktów Z i w 2012 r. nie odnotowano w niej żadnej sprzedaży.
W pewnym sensie można powiedzieć, że pola Year i ProdGrp nie mają ze sobą nic wspólnego, więc nie powinny być od siebie uzależnione tylko dlatego, że akurat są skojarzone za pośrednictwem tabeli Trans. Odpowiedni efekt można osiągnąć, deklarując tabelę Trans jako luźno powiązaną. Spowoduje to zmianę układu tabeli przestawnej:
Selekcja dokonana na liście wartości Year nie powoduje już wyświetlania żadnej wartości na liście wartości ProdGrp.