DAX to język formuł używany w Power BI do tworzenia obliczeń na danych. Najczęściej korzysta się z niego przy budowaniu miar, czyli obliczeń, które reagują na filtry w raporcie.
W praktyce DAX przydaje się wtedy, gdy standardowe opcje Power BI nie wystarczają. Na przykład gdy chcesz policzyć sprzedaż tylko dla wybranego kanału, liczbę unikalnych klientów, średnią wartość zamówienia, marżę procentową albo udział jednej kategorii w całej sprzedaży.
Warto pamiętać, że DAX najlepiej działa na dobrze przygotowanym modelu danych. Jeśli dane są nieuporządkowane, często lepiej najpierw poprawić je w Power Query lub w źródle danych, a dopiero później tworzyć miary.
5 podstawowych funkcji DAX, które warto znać
Na początku nie trzeba znać wielu funkcji. W codziennej pracy z Power BI dużo ważniejsze jest dobre zrozumienie kilku podstawowych miar i tego, do jakich pytań biznesowych można je wykorzystać.
1. SUM – suma wartości
Sprzedaż = SUM(Sprzedaz[WartoscSprzedazy])
SUM sumuje wartości z wybranej kolumny. To jedna z najprostszych i najczęściej używanych funkcji DAX.
Przydaje się do liczenia łącznej sprzedaży, kosztów, budżetu, liczby sztuk albo wartości zamówień. Taka miara automatycznie reaguje na filtry w raporcie, więc może pokazać wynik dla całej firmy, wybranego roku, regionu lub produktu.
2. COUNTROWS – liczba wierszy
Liczba zamówień = COUNTROWS(Zamowienia)
COUNTROWS liczy liczbę wierszy w tabeli. Jeśli jeden wiersz oznacza jedno zamówienie, funkcja pokaże liczbę zamówień.
To dobry wybór przy prostych licznikach, takich jak liczba transakcji, faktur, zgłoszeń, wizyt albo rekordów spełniających określone warunki.
3. DISTINCTCOUNT – liczba unikalnych wartości
Liczba klientów = DISTINCTCOUNT(Sprzedaz[IDKlienta])
DISTINCTCOUNT liczy unikalne wartości w kolumnie. W tym przykładzie chodzi o liczbę klientów, a nie liczbę wszystkich transakcji.
To ważne, bo jeden klient może złożyć kilka zamówień. Zwykłe liczenie wierszy nie odpowie więc na pytanie, ilu klientów faktycznie kupowało. Ta funkcja przydaje się także do liczenia unikalnych produktów, faktur, kontrahentów lub użytkowników.
4. DIVIDE – bezpieczne dzielenie
Średnia wartość zamówienia =
DIVIDE([Sprzedaż], [Liczba zamówień])
DIVIDE służy do dzielenia jednej wartości przez drugą. W tym przykładzie pozwala policzyć średnią wartość zamówienia.
W raportach Power BI warto używać tej funkcji zamiast zwykłego znaku dzielenia, ponieważ lepiej radzi sobie z sytuacją, w której mianownik jest pusty albo równy zero. Przydaje się przy takich wskaźnikach jak marża procentowa, udział w sprzedaży, konwersja czy średnia wartość koszyka.
5. CALCULATE – zmiana warunków obliczenia
Sprzedaż online =
CALCULATE(
[Sprzedaż],
Sprzedaz[Kanal] = "Online"
)
CALCULATE pozwala policzyć miarę w określonych warunkach. W tym przykładzie sprzedaż zostanie obliczona tylko dla kanału „Online”.
To jedna z najważniejszych funkcji DAX, bo pozwala tworzyć miary odpowiadające na bardziej konkretne pytania, na przykład sprzedaż w wybranej kategorii, wynik tylko dla aktywnych klientów albo sprzedaż dla określonego kanału.
Na początku CALCULATE może wydawać się trudne, ponieważ zmienia kontekst obliczenia. Najprościej mówiąc, kontekst to zestaw filtrów, które wpływają na wynik miary: rok, region, produkt, klient albo warunek zapisany bezpośrednio w formule.
A co z FILTER?
FILTER warto poznać po opanowaniu podstaw CALCULATE. Przydaje się wtedy, gdy warunek jest bardziej złożony niż proste wskazanie jednej wartości w kolumnie.
Sprzedaż powyżej 1000 =
CALCULATE(
[Sprzedaż],
FILTER(Sprzedaz, Sprzedaz[WartoscSprzedazy] > 1000)
)
Ta miara liczy sprzedaż tylko dla transakcji o wartości większej niż 1000. Można ją wykorzystać na przykład do analizy większych zamówień lub klientów generujących wyższą wartość sprzedaży.
Najczęstsze błędy początkujących
Początkujący często tworzą zbyt wiele kolumn obliczeniowych zamiast miar. W raportach biznesowych miary są zwykle bardziej elastyczne, ponieważ przeliczają wynik dynamicznie po użyciu filtrów.
Drugim częstym problemem jest pisanie formuł bez zrozumienia modelu danych. Jeśli relacje między tabelami są źle ustawione, poprawna składnia DAX nie wystarczy – wynik nadal może być błędny.
Warto też od początku dbać o nazwy miar. Measure 1 szybko przestaje być czytelne. Nazwy takie jak Sprzedaż, Liczba klientów czy Średnia wartość zamówienia są prostsze i znacznie łatwiejsze w utrzymaniu.
Nie każdą logikę warto rozwiązywać w DAX. Jeżeli dane wymagają czyszczenia, łączenia albo zmiany struktury, często lepiej przygotować je wcześniej w Power Query lub w źródle danych.
Podsumowanie
DAX w Power BI pozwala tworzyć miary, które odpowiadają na realne pytania biznesowe. Dzięki nim raport nie tylko pokazuje dane, ale pomaga je interpretować: ile sprzedaliśmy, ilu klientów kupowało, jaka była średnia wartość zamówienia albo jak wygląda sprzedaż po zastosowaniu konkretnych filtrów.
Na start warto dobrze opanować SUM, COUNTROWS, DISTINCTCOUNT, DIVIDE i CALCULATE. To podstawowy zestaw, który daje solidne fundamenty do dalszej pracy z Power BI.
Polecane źródła