Opcja Zastosuj wszystkie fragmentatory w Power BI
Spis treści:
Podczas tworzenia raportów w Power BI bardzo często korzystamy z fragmentatorów (slicerów), które pełnią rolę interaktywnych filtrów. Dzięki nim raport staje się prostszy w obsłudze, a my zwiększamy wydajność naszej pracy, ponieważ dzięki kilku kliknięciom możemy przefiltrować dane do interesujących nas wartości.
Jednakże, problem pojawia się w sytuacji, gdy na jednym raporcie mamy wiele fragmentatorów, np. jeden określający okres, drugi nazwę produktu itd. W takich sytuacjach, stosowanie filtrów z każdego fragmentatora osobno znacznie zmniejsza wydajność naszego raportu – każde użycie fragmentatora wymaga odświeżenia danych i zastosowania na nich filtru, co przy większych projektach może znacznie wydłużyć czas analizy. Spadek wydajności jest odczuwalny szczególnie, gdy raport korzysta z trybu DirectQuery, ponieważ każde użycie fragmentatora będzie wysyłać zapytanie do źródła danych, a następnie czekać będziemy na pobranie otrzymanych wyników, co przy mocno obciążonych bazach danych, z których pobieramy duże zbiory danych, znacznie spowolni działanie raportu. Problem będziemy również odczuwać, gdy raport będzie uruchamiany na urządzeniu mobilnym – ograniczone zasoby sprzętowe mogą powodować opóźnienia, co utrudni nam pracę z raportem.
W Power BI jest jednak rozwiązanie tego problemu, a jest nim opcja Zastosuj wszystkie fragmentatory. W tym artykule przedstawimy, jak działa ta opcja i jak skutecznie korzystać z niej, tworząc raporty.
Jak działa opcja Zastosuj wszystkie fragmentatory?
Opcja Zastosuj wszystkie fragmentatory pozwala nam jednym kliknięciem aktywować wszystkie filtry z fragmentatorów w raporcie, zamiast aktywować każdy po kolei. Skorzystanie z tej opcji zdecydowanie zwiększy wydajność naszego raportu – pozwoli nam to uniknąć niepotrzebnego odświeżania danych.
Aby aktywować tę opcję, należy przejść do zakładki Wstaw:
Wybierz Przyciski, a następnie Zastosuj wszystkie fragmentatory:
W raporcie pojawiło się pole opcji (przycisk) Zastosuj wszystkie fragmentatory. Aby je aktywować i zastosować wszystkie filtry wybrane we fragmentatorach, najedź na pole kursorem i kliknij CTRL + lewy przycisk myszy.
Przykład z danymi
Mamy przykładowe dane załadowane do modelu Power BI:
Stworzymy raport, w którym umieścimy dwie wizualizacje: macierz, która przedstawi sumaryczną wartość poszczególnych zleceń dla każdego klienta oraz wykres kolumnowy, który przedstawi, ile zleceń zostało wykonanych w każdym województwie.
Tworzymy macierz:
Następnie tworzymy skumulowany wykres kolumnowy:
Do raportu dodamy również trzy fragmentatory: województwo, miesiąc i nazwę klienta:
Zauważ, że przy każdym dokonanym wyborze we fragmentatorach, np. wybór miesiąca, czy województwa, „wyklikanie” wielu klientów, nasze wizualizacje odświeżają się za każdą zaznaczoną pozycją:
Ciągłe odświeżanie raportu, przy wielu wizualizacjach, przy dużych zbiorach danych źródłowych, w których są wykonywane złożone obliczenia – może znacznie spowolnić działanie raportu. Spowolnione działanie jest szczególnie dokuczliwe w raportach mobilnych (np. smartfon). W takich sytuacjach idealnie sprawdzi się opcja Zastosuj wszystkie fragmentatory, która aktywuje wszystkie zaznaczone przez nas filtry na raz, bez konieczności odświeżania „po kolei” – to przyśpieszy działanie naszego raportu.
Włączamy opcje Zastosuj wszystkie fragmentatory:
Jeśli na stronie raportu żaden wybór nie jest dokonany, fragmentatory są wyczyszczone, to zaznaczając interesujące nas pozycje, zauważymy, że nasze filtry nie wpływają na zawartość wizualizacji:
Dzieje się tak dlatego, że opcja Zastosuj wszystkie fragmentatory, której użyliśmy, zablokowała działanie filtrów po wybraniu ich we fragmentatorach. Aby je wszystkie aktywować, najeżdżamy na pole naszej opcji i klikamy CTRL + Lewy przycisk myszy (gdy raport będzie udostępniony, CTRL jest niepotrzebny, wystarczy kliknięcie):
Jak widać, wybrane przez nas filtry zadziałały i przyniosły taki sam efekt jak poprzednio, lecz uruchomienie ich jednocześnie za pomocą opcji Zastosuj wszystkie fragmentatory znacząco poprawia wydajność naszego raportu – nie wykonują się niepotrzebne odświeżenia wizualizacji na stronie.
A co z odfiltrowaniem danych?
Możemy zrobić to klasyczną metodą – ręcznie wyczyścić wybrane przez nas wartości. Aby to zrobić najeżdżamy na fragmentator i wybieramy ikonę gumki:
Rozwiązanie to zadziała, lecz ma tę samą wadę, co wcześniejsze filtrowanie. Krok po kroku – każdy osobno wyczyszczony fragmentator odświeża wizualizacje, co również przyczynia się do zmniejszenia wydajności naszego raportu.
Na szczęście w Power BI jest dostępne narzędzie, które pozwala nam poradzić sobie z tym problemem. Opcja Wyczyść wszystkie fragmentatory działa na tej samej zasadzie co Zastosuj wszystkie fragmentatory – jednym kliknięciem (CTRL + lewy przycisk myszy) wyłączamy jednocześnie wszystkie wcześniej nałożone filtry. Dzięki tej opcji zaoszczędzimy czas, zwiększymy płynność i szybkość działania naszego raportu.
Alternatywą dla opcji Zastosuj wszystkie fragmentatory / Wyczyść wszystkie fragmentatory jest mechanizm Zakładek, które są bardzo użyteczne i mogą spełniać tę samą rolę. Zakładki zostały omówione w innym artykule na blogu.
Aby aktywować opcję Wyczyść wszystkie fragmentatory, wybieramy Wstaw – Przyciski – Wyczyść wszystkie fragmentatory:
Gotowe! Teraz za pomocą jednego kliknięcia możemy wyczyścić wszystkie wybrane przez nas filtry.
Na stronach raportu Power BI nie wszystkie fragmentatory powinny wpływać na każdą wizualizację.
Na przykład, gdy rozliczamy liczbę zleceń w każdym województwie, wybór województwa we fragmentatorze (np. łódzkie) spowoduje, że wykres przedstawi tylko jeden punkt danych – co może być niepożądanym efektem, bo nie pokażemy pełnego porównania wartości.
Dlatego warto samodzielnie ustawić, które fragmentatory mają wpływ na poszczególne wizualizacje, aby raport czytelnie przedstawiał dane bez ich zniekształceń.
Do przedstawienia tej funkcji użyjemy danych z poprzedniego przykładu.
Przechodzimy do zakładki Format, a następnie klikamy Edytuj interakcje:
Zauważ, że klikając na jeden z fragmentatorów, przy innych wizualizacjach pojawiły się nowe ikony:
To dzięki nim możemy zdecydować, w jaki sposób dany fragmentator ma wpływać na nasze wizualizacje – filtrować je, czy pozostawić bez zmian.
Chcemy, aby fragmentator z województwami nie wpływał na wykres, ponieważ zależy nam na wyświetlaniu danych dla wszystkich województw – filtr z tego fragmentatora na wykres powoduje, że wyświetla się tylko jeden słupek:
Aby to zmienić, zaznaczamy fragmentator Województwo i klikamy drugą ikonę (przekreślone kółko) przy wizualizacji wykresu. Wtedy fragmentator przestanie wpływać na wizualizację, filtr zostanie „odpięty”, a wykres będzie widoczny dla wszystkich województw, niezależnie od wyboru dokonanego we fragmentatorze:
Gotowe. Jak widać, wybór województwa wpływa teraz jedynie na wizualizację, na którą nasz fragmentator ma wpływ:
Podsumowanie
Korzystanie z opcji Zastosuj wszystkie fragmentatory (jak i również z opcji Wyczyść wszystkie fragmentatory) jest zdecydowanie kluczowe dla poprawienia wydajności naszych raportów w Power BI.
Jeśli mamy uruchomić kilka filtrów, to aby uniknąć odświeżania całych stron z wizualizacjami przy każdym pojedynczym kliknięciu (filtrowaniu) we fragmentatorze, zadbajmy o to, aby wszystkie filtry włączać/wyłączać jednym kliknięciem.
Jest to szczególnie istotne przy dużych zbiorach danych, przy korzystaniu z trybu DirectQuery oraz przy prezentowaniu naszego raportu na urządzeniach mobilnych.
Omawiana opcja zdecydowanie pozwala zachować szybkość, płynność i czytelność raportów, jak i również wpłynąć na komfort i efektywność naszej pracy.