Dlaczego używanie zmiennych usługi LuckyTemplates jest lepszym sposobem pisania miar języka DAX

Korzystanie ze zmiennych to świetny sposób na upewnienie się, że wyniki sumują się tak, jak powinny na końcu pomiarów. Zmienne są tak istotną częścią pisania i rozwiązywania formuł w usłudze LuckyTemplates, a ja pokażę Ci, dlaczego. Możesz obejrzeć pełny film tego samouczka na dole tego bloga.

Spis treści

Przykładowe dane wizualizowane na wykresie Gantta

Aby pokazać, jak ważne jest używanie zmiennych w miarach języka DAX, użyję tej dość złożonej formuły jako przykładu. Użyłem tego podczas niedawnego wydarzenia tylko dla członków LuckyTemplates na temat zarządzania projektami.

Dlaczego używanie zmiennych usługi LuckyTemplates jest lepszym sposobem pisania miar języka DAX

Aby zwizualizować dane, stworzyłem ten unikalny wykres Gantta. Zobaczysz, że jest w nim osadzona duża logika, która pozwala mi kolorować dane pokazujące informacje, takie jak kiedy projekt się rozpoczął, kiedy się zakończył i tak dalej.

Dlaczego używanie zmiennych usługi LuckyTemplates jest lepszym sposobem pisania miar języka DAX

Zróbmy szybki przegląd danych za tym wykresem.

Dlaczego używanie zmiennych usługi LuckyTemplates jest lepszym sposobem pisania miar języka DAX

Zobaczysz, że mam datę początkową i końcową dla każdego zadania w konkretnym projekcie. To, co zwiększa złożoność formuły, to fakt, że mam również kolumnę dla % ukończenia.

Jak mogę zwizualizować ten wskaźnik ukończenia na moim wykresie? Jest to pokazane, pokazując bieżące zadania na żywo z wyszczególnieniem na podstawie różnych zadań na żywo dla każdej kategorii.

Dlaczego używanie zmiennych usługi LuckyTemplates jest lepszym sposobem pisania miar języka DAX

Musiałem też użyć wielu różnych kolorów na moim wykresie dla różnych kategorii zadań w każdym innym projekcie, więc ostatecznie użyłem formatowania warunkowego w mojej macierzy, aby to wszystko się stało. 

Dlaczego używanie zmiennych usługi LuckyTemplates jest lepszym sposobem pisania miar języka DAX

Teraz, kiedy przeglądam forum wsparcia LuckyTemplates, często widzę, jak użytkownicy stosują bardzo złożone formuły, gdy mają do czynienia z takimi danymi. Prawda jest taka, że ​​wiele z nich należy podzielić na zmienne.

Używanie zmiennych w złożonych formułach

Niezależnie od tego, co próbujesz obliczyć, chcę ci tylko pokazać konfigurację, do której powinieneś dążyć, jeśli nie używasz zbyt często zmiennych. Chcę, abyś zobaczył, dlaczego musisz używać tutaj zmiennych i jak ich użyłem, aby to zadziałało.

W rzeczywistości możesz odwoływać się do zmiennych w ramach zmiennych. Oznacza to, że możesz zbudować wiele swoich obliczeń, zanim wpiszesz cokolwiek w RETURN. 

Dlaczego używanie zmiennych usługi LuckyTemplates jest lepszym sposobem pisania miar języka DAX

Należy pamiętać, że każdy wynik jest obliczany indywidualnie w usłudze LuckyTemplates. Musisz więc wziąć pod uwagę kontekst każdego indywidualnego wyniku.

Zobaczysz więc, że użyłem VAR dla CurrentDay, ProjectDays i DaysFromStartDate. Wziąłem również DaysFromEndDate, odwołując się do DaysFromStartDate i ProjectDays.

Następnie wykonałem dalsze prace logiczne nad ProgressColor i CompletionPercent.

Inną interesującą rzeczą dotyczącą zmiennych jest to, że można również osadzić logikę PRAWDA lub FAŁSZ. Zwykle zobaczysz tutaj długą listę instrukcji JEŻELI w formule głównej. Ale tym razem zdecydowałem się umieścić tę logikę PRAWDA lub FAŁSZ w VAR, używając ToCompletionLogic i MAX dni większych lub równych MAX dni mniejszych lub równych i tak dalej.

Dlaczego używanie zmiennych usługi LuckyTemplates jest lepszym sposobem pisania miar języka DAX

Zobaczysz również, że wprowadziłem tutaj moje instrukcje JEŻELI do mojej formuły SWITCH, co jest bardziej wydajnym podejściem.

Instrukcje IF są teraz łatwiejsze do zrozumienia, ponieważ logika musi być wpisana tylko raz w zmienne, zamiast być referencjami dla każdej instrukcji na tej liście.

Dlaczego używanie zmiennych usługi LuckyTemplates jest lepszym sposobem pisania miar języka DAX

Używanie rozgałęzień zmiennych i miar

Być może zastanawiasz się, dlaczego nie użyłem w tym przypadku rozgałęzień miar, wiedząc, że wspominałem o tym już wiele razy.

To dlatego, że wiele logiki użytej tutaj jest przeznaczone wyłącznie do tego konkretnego obliczenia. Nie nadaje się do ponownego użycia w pozostałej części mojego modelu.

Tak więc w tym konkretnym przypadku lepiej po prostu umieścić ją jako zmienną w jednej formule, w której faktycznie jej używasz, zamiast zajmować dużo miejsca w grupach miar. 

Ponieważ dotyczy to tylko tego obliczenia, zdecydowałem się umieścić wszystkie te rzeczy w zmiennych i stworzyć pojedynczą formułę, która to wszystko rozwiązuje. 

Dlaczego używanie zmiennych usługi LuckyTemplates jest lepszym sposobem pisania miar języka DAX

Należy zauważyć, że nie zbudowałem tej formuły od zera. Pierwotnie miałem to wszystko rozdzielone w różnych środkach. Ma to na celu upewnienie się, że obliczam prawidłowe wyniki w każdym innym kontekście. Stamtąd uporządkowałem wszystko, budując ten jeden konkretny środek.

Jeśli chodzi o składnię, masz swoje zmienne na górze, a następnie funkcję RETURN, aby wprowadzić logikę tutaj. 

Dlaczego używanie zmiennych usługi LuckyTemplates jest lepszym sposobem pisania miar języka DAX


Używanie zmiennych w usłudze LuckyTemplates — szczegółowy przykład
Techniki analizy scenariuszy Korzystanie z wielu parametrów „co, jeśli”
Pierwsze kroki z parametrem „co, jeśli” w usłudze LuckyTemplates

Wniosek

Teraz, gdy widzisz aplikację, której użyłem, mam nadzieję, że rozumiesz, dlaczego wolę używać zmiennych w przypadkach takich jak ten.

Jedną rzeczą, którą chciałbym tutaj podkreślić, jest znaczenie zrozumienia każdej indywidualnej zmiennej przed utworzeniem złożonej formuły, takiej jak ta, którą stworzyłem.

Widzę to również często na naszym forum wsparcia. Przechodzą od razu do długiej miary i zastanawiają się, dlaczego wyniki nie są wyświetlane poprawnie. Naprawdę musisz zrozumieć, w jaki sposób obliczany jest każdy indywidualny wynik. Po umieszczeniu ich wszystkich w jednym pomiarze końcowym nie ma możliwości sprawdzenia poszczególnych wyników.

Gdy już dobrze zrozumiesz, jak to działa, możesz w końcu tworzyć bardziej zaawansowane formuły przy użyciu zmiennych bez większych problemów.

Wszystkiego najlepszego

Leave a Comment

Dodawaj, usuwaj i zmieniaj nazwy kolumn w R za pomocą Dplyr

Dodawaj, usuwaj i zmieniaj nazwy kolumn w R za pomocą Dplyr

W tym samouczku omówimy pakiet dplyr, który umożliwia sortowanie, filtrowanie, dodawanie i zmianę nazw kolumn w języku R.

Funkcje zbierania w Microsoft Power Automate

Funkcje zbierania w Microsoft Power Automate

Odkryj różnorodne funkcje zbierania, które można wykorzystać w Power Automate. Zdobądź praktyczne informacje o funkcjach tablicowych i ich zastosowaniu.

Oceń wydajność kodu DAX w DAX Studio

Oceń wydajność kodu DAX w DAX Studio

Z tego samouczka dowiesz się, jak ocenić wydajność kodów DAX przy użyciu opcji Uruchom test porównawczy w DAX Studio.

Czym jest self w Pythonie: przykłady z życia wzięte

Czym jest self w Pythonie: przykłady z życia wzięte

Czym jest self w Pythonie: przykłady z życia wzięte

Jak zapisać i załadować plik RDS w R

Jak zapisać i załadować plik RDS w R

Dowiesz się, jak zapisywać i ładować obiekty z pliku .rds w R. Ten blog będzie również omawiał sposób importowania obiektów z R do LuckyTemplates.

Powrót do pierwszych N dni roboczych — rozwiązanie języka kodowania DAX

Powrót do pierwszych N dni roboczych — rozwiązanie języka kodowania DAX

Z tego samouczka języka kodowania DAX dowiesz się, jak używać funkcji GENERUJ i jak dynamicznie zmieniać tytuł miary.

Zaprezentuj spostrzeżenia przy użyciu wielowątkowej techniki dynamicznych wizualizacji w usłudze LuckyTemplates

Zaprezentuj spostrzeżenia przy użyciu wielowątkowej techniki dynamicznych wizualizacji w usłudze LuckyTemplates

W tym samouczku omówiono sposób korzystania z techniki wielowątkowych wizualizacji dynamicznych w celu tworzenia szczegółowych informacji na podstawie dynamicznych wizualizacji danych w raportach.

Wprowadzenie do filtrowania kontekstu w usłudze LuckyTemplates

Wprowadzenie do filtrowania kontekstu w usłudze LuckyTemplates

W tym artykule omówię kontekst filtra. Kontekst filtrowania to jeden z głównych tematów, z którym każdy użytkownik usługi LuckyTemplates powinien zapoznać się na początku.

Najlepsze wskazówki dotyczące korzystania z aplikacji w usłudze online LuckyTemplates

Najlepsze wskazówki dotyczące korzystania z aplikacji w usłudze online LuckyTemplates

Chcę pokazać, jak usługa online LuckyTemplates Apps może pomóc w zarządzaniu różnymi raportami i spostrzeżeniami generowanymi z różnych źródeł.

Analizuj zmiany marży zysku w godzinach nadliczbowych — Analizuj za pomocą LuckyTemplates i DAX

Analizuj zmiany marży zysku w godzinach nadliczbowych — Analizuj za pomocą LuckyTemplates i DAX

Dowiedz się, jak obliczyć zmiany marży zysku przy użyciu technik, takich jak rozgałęzianie miar i łączenie formuł języka DAX w usłudze LuckyTemplates.