Naprawianie nieprawidłowych sum za pomocą miar języka DAX w usłudze LuckyTemplates

Naprawianie nieprawidłowych sum za pomocą miar języka DAX w usłudze LuckyTemplates

Uzyskanie poprawnych sum w raportach usługi LuckyTemplates może być czasem najbardziej frustrującą rzeczą podczas korzystania z miar języka DAX . Prawdopodobnie możesz znaleźć się w pewnych sytuacjach, w których miary Totals for DAX nie sumują się tak, jak chcesz. Możesz obejrzeć pełny film tego samouczka na dole tego bloga.

Miary języka DAX mogą być oparte na standardowych funkcjach agregacji, takich jak COUNT lub SUM . Te formuły języka DAX umożliwiają modelowanie i analizę danych oraz wykorzystywanie wyników do raportowania i podejmowania decyzji.

W tym blogu omówimy ogólną logikę dotyczącą miar DAX . Ta obawa została podniesiona na . Jeśli chcesz przejrzeć pytanie i przyjrzeć się dokładnemu scenariuszowi z forum, po prostu kliknij poniższy link.

Naprawianie nieprawidłowych sum za pomocą miar języka DAX w usłudze LuckyTemplates

Pokażę ci technikę, która została użyta do rozwiązania scenariusza.

Z pewnością możesz zastosować tę technikę w różnych scenariuszach, zwłaszcza podczas tworzenia dość złożonej logiki języka DAX lub podczas rozgałęziania wielu miar. Pomoże to również rozwiązać Twoje sumy, które mogą być obliczane nieprawidłowo .

Spis treści

Przykładowy scenariusz problemu

Oto ogólny przykład, który jest w jakiś sposób powiązany ze scenariuszem omawianym na forum.

Teraz patrzymy na wynik sprzedaży w tej tabeli. Co więcej, porównuję to z innym wynikiem, jakim jest Sales Last Year .

Naprawianie nieprawidłowych sum za pomocą miar języka DAX w usłudze LuckyTemplates

W tym przykładzie próbujemy znaleźć minimalny wynik dla każdego pojedynczego klienta na podstawie wybranego kontekstu. Może to być dowolna miara, taka jak MIN Total Sales i Total Sales Last Year (w tym przypadku będziemy używać ogólnych).

Najprawdopodobniej myślisz, że formuła z obrazka poniżej da nam odpowiednie wyniki.

Naprawianie nieprawidłowych sum za pomocą miar języka DAX w usłudze LuckyTemplates

Cóż, przeciągnijmy miarę Minimum Testing do tabeli i sprawdźmy wyniki.

Naprawianie nieprawidłowych sum za pomocą miar języka DAX w usłudze LuckyTemplates

Patrząc na wyniki, możemy powiedzieć, że obliczenia dla każdego wiersza były dokładne.

Naprawianie nieprawidłowych sum za pomocą miar języka DAX w usłudze LuckyTemplates

Jednak nieprawidłowo obliczyła sumę .

Naprawianie nieprawidłowych sum za pomocą miar języka DAX w usłudze LuckyTemplates

Obliczono minimalną sumę tylko przy użyciu funkcji MIN dla każdego wiersza w miarach Total Sales i Sales LY , gdy nie ma kontekstu dla każdego obliczenia.

Co więcej, nie zliczał poszczególnych minimów w unikalny sposób i nie uzyskiwał sumy wszystkich tych unikalnych minimów w dowolnym kontekście, w którym się znajdujemy.

Analiza poprawnych wyników dla przykładowego scenariusza

Teraz pokażę odpowiednie wyniki dla poprzedniego scenariusza.

Zobaczysz na obrazku, że pokazuje on zupełnie inny wynik, ponieważ jest ewidentnie znacznie mniejszy niż wszystkie inne sumy.

Naprawianie nieprawidłowych sum za pomocą miar języka DAX w usłudze LuckyTemplates

Ma to o wiele większy sens , ponieważ liczymy głównie minima każdego pojedynczego wiersza w tej tabeli . Oznacza to, że wynik będzie miał znacznie mniejszą wartość .

Naprawianie nieprawidłowych sum za pomocą miar języka DAX w usłudze LuckyTemplates

Podstawową logiką, którą musimy tutaj zrozumieć, jest ocena każdego pojedynczego wyniku przy użyciu wirtualnych tabel .

Iteracja w tabelach wirtualnych pozwala upewnić się, że zaimplementowana logika iteruje przez właściwy kontekst w porównaniu z kontekstem naturalnym, który może wystąpić w wyniku wyborów dokonanych na stronie raportu .

Jeśli zaczniesz rozumieć, jak włączyć wirtualne tabele do swoich funkcji języka DAX , szybko dostrzeżesz możliwości dalszego rozszerzenia analizy.

Tworzenie wirtualnych tabel w ramach miar języka DAX

Teraz, aby rozwiązać obecny scenariusz, pierwszą rzeczą, którą musimy zrobić, jest utworzenie wirtualnej tabeli każdego klienta za pomocą funkcji SUMMARIZE .

Funkcja SUMMARIZE zwraca tabelę podsumowującą żądane sumy dla zbioru grup.

Naprawianie nieprawidłowych sum za pomocą miar języka DAX w usłudze LuckyTemplates

Następnie w ramach tej konkretnej wirtualnej tabeli , którą będziemy przeglądać, podświetlone kolumny z poniższego obrazka zostaną wygenerowane wirtualnie.

Naprawianie nieprawidłowych sum za pomocą miar języka DAX w usłudze LuckyTemplates

Podsumowanie MIN każdego wiersza w wirtualnej tabeli

Gdy przejdziemy do fazy oceny, będziemy używać funkcji iteracyjnej o nazwie SUMX . Ta funkcja zwraca sumę wyrażenia, które jest obliczane dla każdego wiersza w tabeli.

W naszym przypadku funkcja SUMX zsumuje wynik MIN każdego pojedynczego wiersza utworzonej przez nas wirtualnej tabeli.

Naprawianie nieprawidłowych sum za pomocą miar języka DAX w usłudze LuckyTemplates

I w ten sposób otrzymaliśmy prawidłowe wyniki.

Naprawianie nieprawidłowych sum za pomocą miar języka DAX w usłudze LuckyTemplates

Kolejną fajną rzeczą jest to, że wirtualna tabela działa również dla każdego wiersza . Oznacza to, że ta tabela będzie miała tylko jeden wiersz.

Dzieje się tak dlatego, że ten filtr zostanie zastosowany tylko wirtualnie w formule , a identyfikator klienta w funkcji SUMMARIZE będzie dotyczył tylko kontekstu klienta, w którym się znajdujemy.

Naprawianie nieprawidłowych sum za pomocą miar języka DAX w usłudze LuckyTemplates

I tak po prostu możesz rozwiązać ten konkretny scenariusz.

Wniosek

Podsumowując, kluczem do zrozumienia, w jaki sposób obliczane są sumy, jest dogłębne poznanie sposobu działania kontekstu w usłudze LuckyTemplates.

Ta technika jest zdecydowanie użyteczna, ponieważ istnieje wiele sytuacji, w których sumy po prostu nie sumują się z tym, co myślisz lub jakie powinny być. Na przykład możesz faktycznie uzyskać sumę, ale nie masz pojęcia, że ​​​​w rzeczywistości jest ona obliczana nieprawidłowo.

Najważniejszą rzeczą, której potrzebujesz, aby ta technika działała poprawnie, jest zrozumienie metodologii wirtualnego stołu . Musisz skutecznie zintegrować te wirtualne tabele z miarami języka DAX , aby mieć pewność, że uzyskują one pożądane wyniki.

Pomoże Ci to rozwiązać nie tylko ten, nad którym obecnie pracujesz, ale także inne przyszłe problemy, które możesz napotkać podczas wykonywania obliczeń w modelach usługi LuckyTemplates.

Dzięki temu jest całkiem sporo do zastosowania i wdrożenia we własnym środowisku. To jest powód, dla którego osadzenie tych koncepcji w twoim umyśle jest kluczowe.

Aby uzyskać informacje na temat bardziej zaawansowanych technik języka DAX, których można używać w usłudze LuckyTemplates, zapoznaj się z tym modułem w witrynie LuckyTemplates Online .


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.

Pomysły na materializację pamięci podręcznych danych w DAX Studio

Pomysły na materializację pamięci podręcznych danych w DAX Studio

W tym samouczku omówiono idee materializacji pamięci podręcznych danych oraz ich wpływ na wydajność języka DAX w dostarczaniu wyników.

Raportowanie biznesowe przy użyciu usługi LuckyTemplates

Raportowanie biznesowe przy użyciu usługi LuckyTemplates

Jeśli do tej pory nadal korzystasz z programu Excel, jest to najlepszy moment, aby zacząć korzystać z usługi LuckyTemplates na potrzeby raportowania biznesowego.

Co to jest brama LuckyTemplates? Wszystko co musisz wiedzieć

Co to jest brama LuckyTemplates? Wszystko co musisz wiedzieć

Co to jest brama LuckyTemplates? Wszystko co musisz wiedzieć