Blog JSystems - uwalniamy wiedzę!
Blog JSystems - uwalniamy wiedzę!
W skrócieTime Intelligence to funkcje DAX, które same przesuwają okno czasu: liczą wartości narastająco od początku roku, rok do roku i jako średnią kroczącą. Na tabeli FaktSprzedaz Nordvelli budujemy miary z TOTALYTD, DATESYTD, SAMEPERIODLASTYEAR i DATEADD, a wyniki sprawdzamy na trendzie 2022-2026 i w macierzy rok do roku.
Lekcja 16 z 28 bezpłatnego kursu Power BI, od pierwszego raportu do Fabric i Copilota, na jednym zestawie danych sieci Nordvella.
<-- Spis wszystkich lekcjiZarząd Nordvelli rzadko pyta o samą sprzedaż. Pyta o rzeczy w czasie: ile utargowaliśmy narastająco od początku roku, czy rośniemy rok do roku, czy grudniowy pik to siła sieci czy zwykła sezonowość. Time Intelligence, czyli funkcje inteligencji czasowej w języku DAX, są dokładnie po to. Zamiast ręcznie budować filtry dat wewnątrz CALCULATE, sięgasz po gotowe funkcje, które same przesuwają okno czasu. W tym rozdziale zbudujemy komplet miar czasowych na tabeli FaktSprzedaz (108 675 transakcji) i sprawdzimy, jak zachowują się na wykresie trendu 2022 do 2026 oraz w macierzy YoY procent per miesiąc.
Z tej lekcji dowiesz się:
Pliki do tej lekcji
Gotowy efekt: plik startowy uzupełniony o kroki tej lekcji: dwie nowe strony (Narastająco i Rok do roku) i czternaście miar czasowych w tabeli FaktSprzedaz, w stanie z ostatniego zrzutu lekcji.
Pobierz nordvella_16_time_intelligence.pbix
Plik startowy: stan z końca poprzedniej lekcji. Otwórz go, jeśli chcesz wykonywać kroki tej lekcji od razu, bez odtwarzania wcześniejszych.
Pobierz nordvella_15_iteratory.pbix
Dane źródłowe:
Nordvella_
Nordvella.bak.gz - te same dane jako baza MS SQL Server (odtwarzasz poleceniem RESTORE DATABASE), do ćwiczeń z połączeniem z bazą SQL.
Co chcemy osiągnąć. Zarząd Nordvelli chce widzieć sprzedaż narastająco od początku roku i porównanie z rokiem poprzednim. Takie miary działają poprawnie tylko na pełnej tabeli kalendarza, więc chcemy najpierw zrozumieć, dlaczego kolumna daty z tabeli transakcji nie wystarczy.
Zacznijmy od najczęstszego błędu początkujących. Kusi, żeby liczyć narastająco po kolumnie daty z samej tabeli faktów, czyli po FaktSprzedaz[DataID]. To nie zadziała poprawnie i warto zrozumieć dlaczego, zanim napiszemy pierwszą miarę.
Funkcje inteligencji czasowej działają w ten sposób, że wewnątrz siebie generują pełny ciąg dat i po nim przesuwają filtr. TOTALYTD musi umieć powiedzieć: weź wszystkie dni od pierwszego stycznia bieżącego roku do dnia widocznego w kontekście, nawet te, w które nie było ani jednej transakcji. Tabela faktów tego nie zapewnia. W FaktSprzedaz daty są nieregularne (nie w każdym dniu była sprzedaż w każdym sklepie) i powtarzalne (jednego dnia setki transakcji). Silnik nie ma z czego zbudować ciągłej osi czasu.
Dlatego w modelu Nordvelli mamy osobną tabelę wymiaru czasu, czyli DimKalendarz z 1 826 wierszami, po jednym na każdy dzień od 1 stycznia 2022 do 31 grudnia 2026, bez ani jednej luki. Ta tabela jest połączona relacją jeden do wielu z FaktSprzedaz po kluczu DataID. Kolumny takie jak Rok, Kwartal, MiesiacNazwa, RokMiesiac oraz flagi CzyWeekend i CzyRoboczy dajemy raz w wymiarze i używamy ich potem wszędzie.
Krok 1. Przejdź do widoku Dane i wybierz w panelu Dane tabelę DimKalendarz. Kliknij strzałkę przy nagłówku kolumny Data i wybierz Sortuj rosnąco: dni ułożą się jeden po drugim. Pasek stanu na dole pokazuje 1 826 wierszy i 1 826 różnych wartości w kolumnie Data, czyli żadnej luki ani powtórzenia.
Jeśli w Twoim modelu nie ma jeszcze tabeli dat, możesz ją wygenerować jedną miarą-tabelą. W Nordvelli DimKalendarz przyszła już z arkusza, ale dobrze wiedzieć, jak zrobić ją w DAX, gdyby zabrakło. Poniższa formuła tworzy nową tabelę obliczeniową (Modelowanie, Nowa tabela) z pełnym zakresem dat i kolumnami pomocniczymi:
Kalendarz =
VAR ZakresDat =
CALENDAR ( DATE ( 2022, 1, 1 ), DATE ( 2026, 12, 31 ) )
RETURN
ADDCOLUMNS (
ZakresDat,
"Rok", YEAR ( [Date] ),
"Kwartal", "K" & QUARTER ( [Date] ),
"Miesiac", MONTH ( [Date] ),
"MiesiacNazwa", FORMAT ( [Date], "mmm" ),
"RokMiesiac", FORMAT ( [Date], "YYYY-MM" ),
"CzyWeekend", WEEKDAY ( [Date], 2 ) > 5
)Jeśli chcesz to wypróbować, na karcie Modelowanie kliknij Nowa tabela, wklej formułę i zatwierdź. W widoku Dane zobaczysz 1 826 wierszy, ale z dwiema różnicami wobec DimKalendarz: kwartały mają tu postać K1, a nie Q1, a kolumna Date ma typ Data/godzina. Po obejrzeniu usuń tę tabelę (prawy przycisk na tabeli w panelu Dane, Usuń z modelu), bo w Nordvelli kalendarzem jest DimKalendarz.
Wskazówka: tabela dat musi pokrywać cały zakres transakcji z FaktSprzedaz, a najlepiej pełne lata na obu końcach. Jeśli sprzedaż sięga grudnia 2026, a kalendarz kończy się we wrześniu, funkcje YTD dla ostatnich miesięcy policzą się na ucięty zbiór dat i wyniki będą cichym fałszem, bez żadnego błędu.
Co chcemy osiągnąć. Chcemy, żeby miary czasowe Nordvelli liczyły się poprawnie także na przełomie roku. Do tego Power BI musi wiedzieć, która tabela jest kalendarzem i która kolumna jest datą.
Sama obecność tabeli kalendarza nie wystarczy. Power BI musi wiedzieć, która kolumna jest kluczem daty i że zbiór jest ciągły. Służy do tego opcja Oznacz jako tabelę dat. Bez niej wiele funkcji zwróci błędy albo, co gorsza, ciche pomyłki na granicach roku.
W Nordvelli zrobiliśmy to już w rozdziale o modelu danych, więc tu tylko sprawdzamy ustawienie. Krok 2. W widoku Dane, z wybraną tabelą DimKalendarz, kliknij na karcie Narzędzia tabel przycisk Oznacz jako tabelę dat. W oknie o tym samym tytule przełącznik Oznacz jako tabelę dat jest Włączony, a w polu Wybierz kolumnę daty jest kolumna Data (typ Data, nie Data i godzina). Zamknij okno przyciskiem Anuluj. W modelu bez oznaczonej tabeli ustawiasz te dwie rzeczy i klikasz Zapisz.
Co zobaczysz, gdy oznaczasz tabelę pierwszy raz. Power BI natychmiast waliduje kolumnę. Jeśli daty są ciągłe i unikalne, pod polem pojawia się zielony komunikat, że walidacja przebiegła pomyślnie. Jeśli w kalendarzu jest luka albo zdublowana data, dostaniesz czerwony komunikat o błędzie i dokładnie wtedy wracasz do poprawy tabeli, a nie po godzinie debugowania miar. Po zatwierdzeniu kolumna Data w panelu Dane dostaje ikonę kalendarza. To znak, że silnik traktuje DimKalendarz jako oficjalną tabelę dat.
| Bez oznaczenia tabeli dat | Po oznaczeniu tabeli dat |
|---|---|
| TOTALYTD potrafi liczyć na ukrytej tabeli dat tworzonej przez opcję Automatyczna data/godzina, która ignoruje relacje | TOTALYTD liczy po Twojej DimKalendarz, spójnie z osiami wykresów |
| Wartość na końcu roku może przeskoczyć, bo silnik gubi granice okresu | Granice roku i kwartału są jednoznaczne, narastanie resetuje się prawidłowo |
| SAMEPERIODLASTYEAR bywa niestabilny przy niestandardowym kalendarzu | Przesunięcia rok do roku są deterministyczne i powtarzalne |
Krok 3. Sprawdź jeszcze jedną opcję: Plik, Opcje i ustawienia, Opcje, w sekcji Bieżący plik wybierz Ładowanie danych. W grupie Analiza czasowa ma być odznaczona opcja Automatyczna data/godzina. Power BI domyślnie dokleja do każdej kolumny daty ukrytą, wewnętrzną tabelę kalendarza. Przy własnej DimKalendarz jest ona zbędna, puchnie model i myli funkcje czasowe. Po wyłączeniu wszystko liczysz świadomie na jednej, kontrolowanej tabeli dat. W pliku Nordvelli opcja jest odznaczona, więc zamknij okno przyciskiem Anuluj.
Zobacz też: Szkolenie Power BI - Desktop, DAX i Online + Copilot
Co chcemy osiągnąć. Zarząd Nordvelli pyta, ile sieć sprzedała od początku roku, kwartału i miesiąca. Chcemy zbudować miary narastające na bazowej mierze Łączna sprzedaż.
Mamy już bazową miarę z wcześniejszych rozdziałów o DAX, czyli Łączna sprzedaż. To ona będzie pod spodem każdej funkcji czasowej. Najprostsza droga do narastania od początku roku to TOTALYTD, która jest skrótem łączącym CALCULATE, sumę i zbiór dat od pierwszego stycznia.
Łączną sprzedaż masz od lekcji 07, a miarę Sprzedaż YTD zbudowaliśmy już w rozdziale o wizualizacjach zaawansowanych. Nie twórz jej drugi raz, tylko zaznacz ją w panelu Dane, żeby zobaczyć formułę:
Sprzedaż YTD =
TOTALYTD ( [Łączna sprzedaż], DimKalendarz[Data] )
Krok 4. Trzy pozostałe miary narastające utwórz sam, każdą osobno (prawy przycisk na FaktSprzedaz, Nowa miara, format #,0 "zł"). Od początku kwartału:
Sprzedaż QTD =
TOTALQTD ( [Łączna sprzedaż], DimKalendarz[Data] )Od początku miesiąca:
Sprzedaż MTD =
TOTALMTD ( [Łączna sprzedaż], DimKalendarz[Data] )Według roku obrotowego kończącego się 31 marca:
Sprzedaż YTD Fiskalny =
TOTALYTD ( [Łączna sprzedaż], DimKalendarz[Data], "03-31" )Krok 5. Dodaj stronę i nazwij ją Narastająco (zielony plus na pasku stron, dwuklik na zakładce). Wstaw Fragmentator z polem DimKalendarz[Rok]. Rok jest liczbą, więc fragmentator startuje jako suwak: w Formatuj element wizualny, Ustawienia fragmentatora, Opcje, Styl wybierz Linia pionowa i zaznacz 2025. Przesuń go w prawy górny róg (karta Ogólne, Właściwości, u nas pozycja 1580 na 20).
Krok 6. Wstaw Macierz: do Wierszy przeciągnij DimKalendarz[MiesiacNazwa], do Wartości Łączną sprzedaż i Sprzedaż YTD. Czcionkę ustaw na 14 (Siatka, Opcje), a rozmiar na 900 na 560.
Co zobaczysz. Kolumna Łączna sprzedaż pokazuje sprzedaż w danym miesiącu, a kolumna Sprzedaż YTD te same liczby dodane od stycznia. W styczniu obie są równe. W lutym YTD to styczeń plus luty. W grudniu YTD osiąga poziom całego roku. Tak właśnie działa narastanie: w każdym wierszu funkcja bierze wszystkie dni od pierwszego stycznia do końca miesiąca z tego wiersza.
TOTALYTD jest wygodny, ale sztywny. W momencie, gdy chcesz narastać tylko dla wybranego wycinka danych, na przykład tylko dla kanału sprzedaży Online albo tylko dla kategorii Telefony, potrzebujesz bardziej rozbieralnej wersji. Tu wchodzi DATESYTD, która sama nie liczy niczego, tylko zwraca zbiór dat od pierwszego stycznia do końca kontekstu. Ten zbiór podajesz do CALCULATE razem z własnymi filtrami.
Sprzedaż YTD ręcznie =
CALCULATE (
[Łączna sprzedaż],
DATESYTD ( DimKalendarz[Data] )
)I wersja tylko dla kanału Online, z dodatkowym warunkiem obok dat:
Sprzedaż YTD Online =
CALCULATE (
[Łączna sprzedaż],
DATESYTD ( DimKalendarz[Data] ),
FaktSprzedaz[KanalSprzedazy] = "Online"
)
Krok 7. Utwórz obie miary (format #,0 "zł") i zaznacz Sprzedaż YTD Online, żeby trafiła do macierzy jako trzecia kolumna.
Jak to zinterpretować. Miara Sprzedaż YTD Online odpowiada na pytanie zarządu, ile utargowały kanały internetowe od początku roku do danego miesiąca. Próbując to zbudować na TOTALYTD, trzeba owinąć całą funkcję w kolejne CALCULATE. DATESYTD trzyma to płasko w jednym CALCULATE i lepiej się czyta. Zapamiętaj zasadę: TOTALYTD do prostego narastania, DATESYTD wewnątrz CALCULATE, gdy dochodzą własne warunki.
Co chcemy osiągnąć. Chcemy porównać sprzedaż Nordvelli z tym samym okresem rok wcześniej, w złotych i w procentach, i umieć przesunąć porównanie o inny okres, na przykład o kwartał.
Narastanie odpowiada na pytanie ile mamy do tej pory. Porównanie rok do roku (year over year, w skrócie YoY) odpowiada na pytanie czy rośniemy. To najczęstsze pytanie na zarządzie Nordvelli. Rdzeniem jest funkcja SAMEPERIODLASTYEAR, która przesuwa aktualny kontekst dat dokładnie o rok wstecz.
Sprzedaż rok temu =
CALCULATE (
[Łączna sprzedaż],
SAMEPERIODLASTYEAR ( DimKalendarz[Data] )
)
Różnica rok do roku w złotówkach:
Zmiana r/r =
[Łączna sprzedaż] - [Sprzedaż rok temu]I zmiana w procentach, bezpiecznie przez DIVIDE:
Zmiana r/r % =
DIVIDE ( [Zmiana r/r], [Sprzedaż rok temu], BLANK () )Krok 8. Utwórz trzy miary (format #,0 "zł", a dla Zmiana r/r % format 0.0%: zaznacz ją w panelu Dane i na karcie Narzędzia miar wpisz w polu Format 0.0%). Dodaj stronę Rok do roku i wstaw na niej macierz. DimKalendarz[Rok] przeciągnij do obszaru Wiersze: zaznaczenie pola wyboru wrzuciłoby rok do Wartości jako sumę, bo to liczba. Do Wartości daj Łączną sprzedaż, Sprzedaż rok temu, Zmianę r/r i Zmianę r/r %.
Co zobaczysz. W wierszu roku 2022 miara Sprzedaż rok temu jest pusta, bo w modelu nie ma roku 2021, a więc nie ma z czym porównywać. Dlatego użyliśmy DIVIDE z BLANK() jako wynikiem awaryjnym, żeby nie wyskoczyło dzielenie przez zero. Od roku 2023 w górę widzisz realne różnice. To jest miejsce, w którym Nordvella odczytuje, czy sieć faktycznie rośnie, czy tylko obraca podobnymi liczbami.
SAMEPERIODLASTYEAR umie tylko jedno: cofnąć o rok. Gdy chcesz cofnąć o miesiąc, o kwartał albo o dowolną liczbę okresów, sięgasz po DATEADD. Przyjmuje ona kolumnę dat, liczbę przesunięcia (ujemna wstecz, dodatnia w przód) oraz jednostkę czasu.
Sprzedaż miesiąc temu =
CALCULATE ( [Łączna sprzedaż], DATEADD ( DimKalendarz[Data], -1, MONTH ) )W poprzednim kwartale:
Sprzedaż poprzedni kwartał =
CALCULATE ( [Łączna sprzedaż], DATEADD ( DimKalendarz[Data], -1, QUARTER ) )Równoważnik SAMEPERIODLASTYEAR, przesunięcie o rok:
Sprzedaż rok temu DateAdd =
CALCULATE ( [Łączna sprzedaż], DATEADD ( DimKalendarz[Data], -1, YEAR ) )I zmiana miesiąc do miesiąca (month over month) w procentach, format 0.0%:
Zmiana m/m % =
DIVIDE (
[Łączna sprzedaż] - [Sprzedaż miesiąc temu],
[Sprzedaż miesiąc temu],
BLANK ()
)
Wskazówka: DATEADD potrzebuje ciągłych dat i właśnie dlatego oznaczyliśmy DimKalendarz jako tabelę dat. Jeśli w zbiorze pojawi się luka, przesunięcie o miesiąc trafi w pustkę i miara zwróci puste zamiast wartości. To najczęstsza przyczyna zjawiska, w którym poprzedni miesiąc znika bez żadnego komunikatu o błędzie.
Co chcemy osiągnąć. Chcemy pokazać trend sprzedaży Nordvelli bez sezonowych skoków między grudniem a lutym, żeby było widać, czy sieć naprawdę rośnie.
W Nordvelli grudzień zawsze wystrzeliwuje, a luty zawsze siada. Na surowym wykresie miesiąc po miesiącu trudno powiedzieć, czy sieć rośnie, bo wzrok gubi się w zębach sezonu. Rozwiązaniem jest średnia krocząca (rolling average), czyli średnia z okna o stałej długości, które przesuwa się po czasie. Średnia z trzech miesięcy łagodzi krótkie skoki, średnia z dwunastu miesięcy niemal całkowicie zdejmuje sezonowość i pokazuje sam trend.
Średnia z trzech miesięcy wygładza krótkie wahania:
Średnia krocząca 3M =
VAR Okno =
DATESINPERIOD (
DimKalendarz[Data],
LASTDATE ( DimKalendarz[Data] ),
-3,
MONTH
)
VAR SumaOkna = CALCULATE ( [Łączna sprzedaż], Okno )
VAR LiczbaMiesiecy =
CALCULATE ( DISTINCTCOUNT ( DimKalendarz[RokMiesiac] ), Okno )
RETURN
DIVIDE ( SumaOkna, LiczbaMiesiecy )Średnia z dwunastu miesięcy eliminuje sezonowość i pokazuje trend. Obie miary mają format #,0 "zł":
Średnia krocząca 12M =
VAR Okno =
DATESINPERIOD (
DimKalendarz[Data],
LASTDATE ( DimKalendarz[Data] ),
-12,
MONTH
)
VAR SumaOkna = CALCULATE ( [Łączna sprzedaż], Okno )
VAR LiczbaMiesiecy =
CALCULATE ( DISTINCTCOUNT ( DimKalendarz[RokMiesiac] ), Okno )
RETURN
DIVIDE ( SumaOkna, LiczbaMiesiecy )
Rozłóżmy to na czynniki. DATESINPERIOD buduje okno dat: bierze punkt końcowy (ostatnią datę bieżącego kontekstu), cofa się o zadaną liczbę jednostek i zwraca ten zakres. CALCULATE liczy w tym oknie łączną sprzedaż, a DISTINCTCOUNT po kolumnie RokMiesiac mówi, z ilu miesięcy to okno naprawdę się składa. Iloraz jednego przez drugie to średnia miesięczna z okna, czyli dokładnie to, co chcemy zobaczyć obok sum miesięcznych. Pierwszy odruch bywa inny: napisać tu AVERAGEX po zbiorze dat. To pułapka, bo AVERAGEX uśrednia wtedy po dniach, nie po miesiącach, i obok słupków liczonych w milionach dostajesz płaską linię przy zerze. Liczenie miesięcy przez DISTINCTCOUNT zamiast sztywnej dwunastki ma jeszcze jedną zaletę: na początku danych, gdzie okno jest krótsze niż pełny rok, średnia nadal wychodzi poprawnie.
Krok 9. Na stronie Rok do roku wstaw Wykres liniowy: Oś X DimKalendarz[RokMiesiac], Oś Y Łączna sprzedaż i Średnia krocząca 12M. Power BI posortuje oś po wartości sprzedaży, więc w Więcej opcji (trzy kropki nad wykresem) wybierz Sortuj: przez, RokMiesiac, a potem Sortuj rosnąco. Wykres poszerz na karcie Ogólne do 1300 (u nas pozycja 600 na 320, wysokość 740): sześćdziesiąt miesięcy w węższym wykresie się nie zmieści i suwak schowa dużą część osi. Przy szerokości 1300 pod osią zostaje wąski pasek przewijania, ale oś jest widoczna od stycznia 2022 do listopada 2026, a z nią cały okres sprzedaży.
Linia łącznej sprzedaży skacze w górę i w dół wraz z sezonem, z wyraźnymi grudniowymi szczytami: 14,0 mln zł w grudniu 2022, 21,2 mln zł w grudniu 2025. Linia średniej kroczącej jest gładka i rośnie z 6 do 11 mln zł. Ta gładka linia to odpowiedź na pytanie, czy Nordvella rośnie strukturalnie. Rośnie, tylko sezon to zasłania. Za majem 2026 czarna linia opada, bo dane sprzedaży kończą się w maju, a średnia dzieli sumę okna przez liczbę miesięcy kalendarza, także tych bez sprzedaży. To ten sam koniec danych, który w macierzy rok do roku da minus 100 procent.
Co chcemy osiągnąć. Na cotygodniowym przeglądzie zarząd Nordvelli chce jednym spojrzeniem zobaczyć, w których miesiącach sieć rośnie, a w których traci wobec roku poprzedniego. Chcemy zbudować pokolorowaną macierz zmian rok do roku.
Na koniec złożymy wszystko w jeden widok, który faktycznie trafia na cotygodniowy przegląd w Nordvelli. Chodzi o macierz, w której wiersze to miesiące, kolumny to lata, a wartości to zmiana procentowa rok do roku, dodatkowo pokolorowana: zieleń tam, gdzie rośniemy, czerwień tam, gdzie spadamy. To pozwala jednym rzutem oka wychwycić słabe miesiące.
Krok 10. Wstaw obok macierz: do Wierszy przeciągnij DimKalendarz[MiesiacNazwa], do Kolumn DimKalendarz[Rok], do Wartości Zmianę r/r %. Następnie rozwiń strzałkę przy tej mierze w obszarze Wartości i wybierz Formatowanie warunkowe, a potem Kolor tła. W oknie Kolor tła - Zmiana r/r % zostaw Styl formatowania Gradient. Domyślnie minimum jest zielone, a maksimum czerwone, więc zmień kolory: Minimum czerwone (z palety Kolory motywu), Maksimum zielone (Więcej kolorów, szesnastkowo #2E9E4F). Zaznacz Dodaj kolor środkowy i ustaw Środek na Niestandardowe z wartością 0 i kolorem białym. Zatwierdź przyciskiem OK.
Miesiące układają się chronologicznie, bo w rozdziale o wizualizacjach podstawowych posortowaliśmy MiesiacNazwa według kolumny Miesiac. Bez tego Kwiecień wylądowałby na górze listy, przed Styczniem.
Krok 11. Wyłącz jeszcze kolumnę Suma po prawej stronie macierzy: Formatuj element wizualny, przełącznik Sumy częściowe kolumn. Suma zmian procentowych z kilku lat nie ma sensu biznesowego. Wiersz Suma na dole zostaje, bo pokazuje wynik każdego roku. Czcionkę ustaw na 14, rozmiar na 560 na 700.
Jak to czytać. W Nordvelli taka macierz od razu pokazuje, że rok 2024 był najmocniejszy (dwadzieścia procent wzrostu wobec 2023), a 2025 wyhamował do dwunastu procent. Czerwień w kolumnie 2026 nie jest zaś sygnałem alarmowym, tylko skutkiem tego, że dane kończą się na maju - i to jest pierwsza rzecz, którą trzeba sprawdzić, zanim ktoś zaniesie taki raport na zarząd. Macierz rok do roku nie mówi, dlaczego tak jest, ale nieomylnie wskazuje, gdzie szukać. To właśnie różnica między raportem, który pokazuje liczby, a raportem, który prowadzi decyzje.
Wskazówka: te same miary czasowe napiszesz raz i działają wszędzie. Wrzucone na wykres słupkowy per sklep pokażą wzrost rok do roku dla każdego z piętnastu sklepów Nordvelli. Wrzucone na kartę z wybranym rokiem pokażą jedną liczbę na slajd zarządu. Siła DAX polega na tym, że poprawna miara nie zna kontekstu i sama dopasowuje się do wizualizacji, w której ją umieścisz.
Komentarze (0)
Brak komentarzy...