COALESCE

Wartości domyślne z funkcją COALESCE

Często zdarza się, że przy tworzeniu miar w języku DAX musimy oznaczyć wartości domyślne. W przypadku wartości niewystępujących w zbiorze (blank) dobrą praktyką jest właśnie wprowadzanie wartości domyślnych. Przykładem tutaj może być prezentowanie wartości sprzedaży w podziale na produkty i lata. W przypadku gdy okaże się, że sprzedaż produktu w jednym roku w ogóle nie wystąpiła, to miara sumy sprzedaży zwróci nam pustą wartość (blank).

Oczywiście rozwiązaniem może być połączenie funkcji IF oraz ISBLANK, jednak wymaga napisania  dłuższego kodu. Z pomocą przychodzi funkcja COALESCE. Funkcja COALESCE dokonuje ewaluacji miary, a następnie w przypadku napotkania wartości wybiera miarę wartości domyślnej. W przypadku zastosowania kombinacji IF/ISBLANK nasza miara będzie wyglądać:

Sprzedaz=
IF(
ISBLANK([Suma sprzedazy]),
[Wartosc domyslna],
[Suma sprzedazy])

Stosując funkcję COALESCE nasza miara wygląda jak poniżej:

Sprzedaz=
COALESCE(
[Suma sprzedazy],
[Wartosc domyslna]
)

Zastosowanie tej funkcji powoduje, że nasz kod jest czytelniejszy, a logika wcześniejszego rozwiązania jest odwzorowana. Porównując prędkość działania obie funkcje działają jednakowo szybko. Jeśli zależy nam jednak na przejrzystości kodu to warto korzystać z tej funkcji jako dobrej praktyki wizualizacji danych. Ponadto funkcja ta może być optymalizowana w przyszłości przy nowych wersjach silnika DAX, tak więc warto już teraz zadbać o dobre nawyki.

Interesujący artykuł? Podaj dalej!