W artykule o KPI ze sparklines z użyciem tabeli przestawnej opisałem, jak pokazać 12 ostatnich miesięcy względem wybranej daty. Jak taki scenariusz zrealizować w Power Pivot lub w Power BI? Potrzebujemy trochę DAX.
Krok 1: Zbuduj model danych z tabelą dat
Moja tabela dat nazywa się Kalendarz.
Krok 2: Dodaj do modelu dodatkową tabelę z miesiącami
Ja utworzyłem ją w Power Query jako Odwołanie do tabeli Kalendarz + usunięcie duplikatów. Tabela zawiera ostatnią datę w miesiącu oraz słowny zapis nazwy miesiąca i roku, który pojawi się na fragmentatorze.
Tabelę załaduj do modelu danych, ale nie łącz relacjami.
Krok 3: Zbuduj miarę DAX
W Power Pivot lub Power BI potrzebujemy teraz miary, która:
- Sprawdzi, jaką datę użytkownik wybrał na slicerze (MaxData)
- Znajdzie, jaka data była 12 miesięcy wstecz
- Obliczy Sprzedaż Total (gdzie Sprzedaż Total = SUM(Dane[Sprzedaż])) dla dat pomiędzy.
Sprzedaż Total 12 M := VAR MaxDate = MAX ( 'Miesiące'[Koniec miesiąca] ) VAR MinDate = DATE ( YEAR ( MaxDate ); MONTH ( MaxDate ) - 12; DAY ( MaxDate ) ) RETURN CALCULATE ( [Sprzedaż Total]; FILTER ( Kalendarz; Kalendarz[Data] > MinDate && Kalendarz[Data] <= MaxDate ) )
Krok 4: Wstaw fragmentator po polu Wybierz miesiąc
Zalecam użyć fragmentator jednokrotnego wyboru w Excelu lub w Power BI.
Krok 5: Zbuduj tabelę przestawną (macierz w Power BI) lub wykres
Wyniki zaprezentujemy na wykresie liniowym lub na wykresie typu sparklines z tabelą przestawną.
Wykres typu sparklines znajdziesz np. w wizualizacji typu KPI (kluczowy wskaźnik wydajności) w Power BI.
Pobierz plik Excel lub Power BI z miarą DAX
Tu możesz pobrać plik Excel i Power BI z gotowymi miarami DAX do liczenia ostatnich 12 miesięcy.
Dziękuję za ten wpis. Mam jedno pytanie. Dlaczego już w Power BI widzimy kwotę 377 093? Jest to wynik września 2016. Wybieramy wynik lipiec 2017 a liczba, która się pokazuje jest wynikiem innej daty, a przecież tytuł wykresu brzmi: Total 12M, czy tak powinno być?
Cześć Ania, dzięki za wychwycenie błędu. Wrzuciłem w Power BI pole Miesiąc zamiast Początek miesiąca i wykres był błędnie przesortowany. Dzięki Tobie poprawiłem screen oraz pliki do pobrania. Jeszcze raz dzięki!