NewDataLabS

Tableau - Narzędzia Business Intelligence

PL / EN
  • Wydarzenia
    • Konferencje
      • Data Strategy Day
    • Webinary
      • Salesforce
      • Tableau
      • Power BI
    • Szkolenia Tableau
      • Szkolenia online
      • Szkolenia zamknięte
    • Szkolenia Power BI
      • Kurs Power BI online
  • Baza Wiedzy
    • Baza Wiedzy Tableau
    • Baza Wiedzy Power BI
    • Baza Wiedzy Salesforce
  • Blog
  • Kontakt
  • Rozwiązania
    • Tableau
    • Power BI
    • Salesforce
    • Snowflake
    • AI - Einstein Discovery
    • Amplitude
  • Usługi
    • Warsztaty Proof of Concept
    • Warsztaty CRM
    • ETL - przygotowanie danych
    • Hurtownie danych
    • Wdrożenia BI
    • Wdrożenia CRM
    • Migracje
      • Migracje CRM
      • Migracje systemów BI
    • Asysta eksploatacyjna
    • Embedded Analytics
    • Audyty Tableau
    • Szkolenia otwarte
      • Tableau
      • Power BI
    • Szkolenia zamknięte
      • Tableau
      • Salesforce
  • O firmie
    • O nas
    • Kariera
  • Klienci
    • Wybrani Klienci
    • Case Study

DAX- funkcje logiczne IF i SWITCH

15 grudnia 2021

Wykorzystywanie funkcji logicznych w DAX stanowi niezbędny element w dziedzinie analizy i interpretacji danych. Są bardzo przydatnymi i elastycznymi funkcjami, dzięki którym możemy efektywniej tworzyć skomplikowane raporty. Jednak dzisiaj chciałabym zachęcić do spojrzenia na nie w mniej oczywisty sposób i przedstawić praktyczne ich zastosowanie na przykładzie stworzonego w Power BI kalendarza adwentowego. Dzięki użyciu funkcji IF i SWITCH możliwe jest stworzenie wizualizacji, w której bez ingerencji użytkownika, automatycznie zmieniać się będzie jej wygląd i zawartość.

Czym są funkcje logiczne języka DAX?

Rodzina funkcji logicznych sprawdza jakie wartości lub zestawy wartości występują w wyrażeniu.

Do grupy tej należą m. in. funkcja IF oraz SWITCH. Aby móc się nimi posługiwać, należy przyjrzeć się składni, której zrozumienie jest kluczowe do prawidłowego zastosowania ich w praktyce.

Funkcja IF sprawdza warunek i zwraca jedną wartość, jeśli jest on spełniony, w przeciwnym razie zwraca drugą wartość.

Składnia tej funkcji wygląda następująco:

Natomiast funkcja SWITCH oblicza zawarte w formule wyrażenia i w zależności od wybranej przez użytkownika listy wartości, zwraca jedno z wielu możliwych wyrażeń końcowych.

Składnia tej funkcji wygląda następująco:

Wykorzystanie w praktyce funkcji IF i SWITCH

Wiemy już czym są i jak działają funkcję logiczne IF i SWITCH. Sprawdźmy więc jak z ich pomocą można stworzyć automatycznie zmieniające się elementy dashboardu bez wykonania akcji przez użytkownika.

Ciekawym wykorzystaniem tych funkcji jest stworzenie kalendarza adwentowego, w którym codziennie, aż do Świąt odsłaniać się będzie jedno okienko, pod którym ukryta jest niespodzianka. Jednocześnie przy użyciu odpowiedniego wyrażenia, każdego dnia zmieniać się będzie wyświetlany tekst i z pomocą sympatycznego renifera można będzie się dowiedzieć, jak używając podstawowych funkcji DAX i narzędzia Power BI uzyskać odpowiedź na nietypowe świąteczne pytania.

Tworzymy automatycznie odsłaniające się okienka

Aby stworzyć taki kalendarz w Power BI niezbędne jest przygotowanie odpowiedniego źródła danych. W naszym przypadku jest to tabela zawierająca cztery kolumny: data, numer dnia, treść pytania, treść odpowiedzi. Tak przygotowaną tabelę ładujemy do Power BI.

Odkrywanie obrazka umieszonego pod kartą z numerem

Aby sprawdzić jaki obrazek ukryliśmy pod kartą z numerem dnia, musimy przygotować automatycznie odsłaniające się okienka w zależności od daty. W tym celu należy napisać wyrażenie języka DAX tworzące nową kolumnę:

Otwieranie_okienka = IF(Kalendarz[Data].[Date]<=TODAY(),1,0)

Następnie, aby nasze okienko zmieniało się z koloru np. niebieskiego na transparenty należy napisać kolejne wyrażenie tworzące kolumnę:

Kolor_okienka = SWITCH(Kalendarz[Otwieranie okienka],1,”#FFFFFF00″,”Blue”)

Teraz wystarczy z dostępnych wizualizacji wybrać kartę i umieścić w niej numer dnia. Dodatkowo, w filtrze tej wizualizacji, należy dodać datę i zaznaczyć jaki dzień reprezentuje dane okienko.

Kolejno w zakładce format wybieramy tło i formatujemy kolor tła za pomocą przygotowanej wcześniej formuły. W zakładce styl formatowania wybieramy wartość pola, na którym będzie opierać się formatowanie.

Tak przygotowaną kartę nakładamy na dowolny obraz.

W ten sposób należy utworzyć 24 okienka. Każde okienko w filtrze wizualizacji musi mieć zaznaczony dzień.

Dodatkowo, aby po zmianie koloru okienka nie pozostawała etykietka z numerem dnia, należy napisać kolejne wyrażenie:

Kolor_czcionki = SWITCH(Kalendarz[Otwieranie_okienka],0,”White”,”#FFFFFF00″)

W zakładce format wybieramy etykietę danych i zamiast wybierać kolor z palety, należy kliknąć opcję (fx). Kliknąć styl formatowania i wybrać wartość pola. Następnie wybrać przygotowaną formułę zmieniającą kolor czcionki.

Tak przygotowane pola, po nałożeniu na tekst czy obiekt, w odpowiednim dniu odsłonią zawartość kryjącą się pod obiektem.

Codzienne wyświetlanie innego tekstu w tej samej karcie

Kolejnym zastosowaniem funkcji logicznych jest stworzenia karty, w której bez ingerencji użytkownika, codziennie wyświetlałby się inny tekst. Takie założenie wymaga napisania wyrażenia, które stworzy nową kolumnę:

Zmiana­_tekstu = IF(Kalendarz[Data] = TODAY(),1,0)

Wybieramy wizualizację karta i umieszczamy w niej dane z kolumny [treść pytania] lub [treść odpowiedzi]. Następnie do filtra tej wizualizacji przeciągamy utworzone wyrażenie. Dodatkowo należy określić warunek dla tego filtra, ograniczający listę pytań do tych, które spełniają warunek Zmiana tekstu.

W tak przygotowanej karcie codziennie pokaże się nowy tekst odpowiadający w tabeli źródłowej danej dacie.

DAX- funkcje

Jak można zauważyć funkcje logiczne języka DAX przy odrobinie kreatywności pozwalają na nieszablonowe użycie narzędzia Power BI. IF i SWITCH to naprawdę wszechstronne i elastyczne funkcje, które w połączeniu z innymi funkcjami języka DAX, mogą tworzyć bardziej skomplikowane formuły, w efekcie czego zwiększa się możliwość ich wykorzystania.

Marika Madera,
Tableau Consultant

webinarium tableau Pobierz trial Tableau Desktop >
Pobierz trial Tableau Prep >
Wydarzenia
> Konferencja Tableau MBA
> Konferencja użytkowników Power BI
Webinary
> Webinary Salesforce
> Webinary Amplitude
> Webinary Tableau
> Webinary Power BI

Szkolenia Tableau
Szkolenia Power BI
ETL
> Tableau Prep
> Airflow
> Power Query
> Microsoft Integration Services
Hurtownie danych
> Snowflake
> Google BigQuery
> Microsoft SQL Server
> PostgreSQL
Business intelligence
> Tableau
> Salesforce
> Power BI
Analityka internetowa
> Amplitude
Salesforce
> Zarządzanie relacjami z Klientami
> Sprzedaż
> Zarządzanie szansami sprzedaży
> Analiza Business Intelligence
> Salesforce Manufacturing Cloud
> Salesforce Service Cloud
> Salesforce Marketing Cloud
Kontakt

kontakt@newdatalabs.com
kontakt@newdatalabs.com


601797783
781 648 194


Adres
Adres do korespondencji:
al. T. Boy’a – Żeleńskiego 26,
51-160 Wrocław

Copyright © 2025