Udostępnij za pośrednictwem


Tworzenie grup obliczeń

Grupy obliczeń mogą znacznie zmniejszyć liczbę nadmiarowych miar, które należy utworzyć, umożliwiając definiowanie wyrażeń języka DAX jako elementów obliczeń, które mają zastosowanie do istniejących miar w modelu. Więcej informacji o grupach obliczeń jest dostępnych w artykule Grupy obliczeń .

Dodawanie nowej grupy obliczeń

W programie Power BI Desktop po otwarciu modelu lokalnego przejdź do widoku Model i wybierz przycisk Grupa obliczeń na wstążce. Jeśli nie jesteś jeszcze w Eksploratorze modeli, okienko Dane zostanie otwarte w widoku Model.

Screenshot of calculation groups button in the ribbon.

Jeśli właściwość zniechęć do miar niejawnych jest wyłączona, zostanie wyświetlony monit z oknem dialogowym, aby włączyć tę właściwość w celu włączenia tworzenia grupy obliczeń.

Screenshot of dialog window prompting you to enable implicit measures.

Miara niejawna występuje, gdy w widoku Raport użyjesz kolumny danych z okienka Dane bezpośrednio w wizualizacji. Wizualizacja umożliwia agregowanie jej jako agregacji SUM, AVERAGE, MIN, MAX lub innej podstawowej agregacji, która staje się miarą niejawną. Utworzenie grupy obliczeń zniechęca do tworzenia takich niejawnych miar, nie wyświetlając już symbolu sumowania obok kolumn danych w okienku Dane i blokuje dodawanie kolumn danych do wizualizacji bezpośrednio na osi agregacji lub jako wartości. Istniejące miary niejawne utworzone już w wizualizacjach będą nadal działać. Właściwość Zniechęć do miar niejawnych musi być włączona, ponieważ elementy obliczeń nie mają zastosowania do miar niejawnych. Elementy obliczeń mają zastosowanie tylko do miar lub miar jawnych.

Screenshot of Report view and creation of implicit measures.

Miara lub miara jawna występuje podczas tworzenia nowej miary i definiowania wyrażenia języka DAX w celu agregowania kolumny danych. Jawne miary mogą również mieć logikę warunkową i filtry, korzystając w pełni z możliwości języka DAX. Samouczek: możesz dowiedzieć się, jak tworzyć własne miary w programie Power BI Desktop.

Uwaga

Elementy obliczeń można utworzyć w taki sposób, aby ignorowały jawną miarę według nazwy miary dla scenariuszy, gdy masz miarę, której nie chcesz zmieniać elementu obliczania.

Po wybraniu pozycji Tak lub włączeniu właściwości zniechęconych miar niejawnych zostanie dodana grupa obliczeń i możesz rozpocząć definiowanie wyrażenia języka DAX pierwszego elementu obliczeniowego na pasku formuły języka DAX.

SELECTEDMEASURE() to funkcja języka DAX, która pełni rolę symbolu zastępczego miary, do której będzie stosowany element obliczeń. Możesz dowiedzieć się więcej o funkcji SELECTEDMEASURE języka DAX z jego artykułu.

Screenshot of DAX formula bar and calculation group.

Przykład analizy czasowej

Istnieje przykład analizy czasowej grupy obliczeń dostępnej w artykule Grupy obliczeń w modelach tabelarycznych usług Analysis Services, którego możemy użyć do wypełnienia niektórych elementów obliczeniowych. Przykład można dodać do dowolnego modelu z wartościami według daty i tabeli Date, która jest oznaczona jako tabela dat, lub pobrać plik PBIX Adventure Works DW 2020 z przykładowego modelu języka DAX — DAX.

Zmienianie nazwy grupy obliczeń

Aby zmienić nazwę grupy obliczeń, kliknij ją dwukrotnie w okienku Dane lub możesz ją wybrać i użyć okienka Właściwości .

Screenshot of how to rename a calculation group.

Zmienianie nazwy kolumny grupy obliczeń

Aby zmienić nazwę kolumny grupy obliczeń, kliknij ją dwukrotnie w okienku Dane lub możesz wybrać ją i użyć okienka Właściwości . Wybrana kolumna to kolumna używana w wizualizacjach lub fragmentatorach w celu zastosowania określonego elementu obliczania.

Screenshot of how to rename a calculation group column.

Zmienianie nazwy elementu obliczania

Pierwszy element obliczeń został utworzony jako SELECTEDMEASURE(), aby można było zmienić jego nazwę, klikając dwukrotnie lub używając okienka Właściwości .

Screenshot of how to rename a calculation item.

Tworzenie dodatkowych elementów obliczeń

Aby utworzyć dodatkowe elementy obliczeniowe, możesz użyć menu kontekstowego kliknij prawym przyciskiem myszy sekcji Elementy obliczeń lub samej grupy obliczeń, a następnie wybierz pozycję Nowy element obliczeń lub użyj okienkaWłaściwości sekcji Elementy obliczeń.

Screenshot of how to create a new calculation item.

Po dodaniu wszystkich elementów obliczeń analizy czasowej moja grupa obliczeń wygląda jak na poniższej ilustracji.

Screenshot of calculation groups once all time intelligence items have been added.

Zwróć uwagę na ikony czerwonego trójkąta wskazujące błędy. Występują błędy, ponieważ przykładowe wyrażenia języka DAX używają tabeli Date o nazwie DimDate, więc muszę zaktualizować wyrażenia języka DAX, aby zamiast tego użyć nazwy Date . Na poniższej ilustracji przedstawiono wyrażenie języka DAX przed korektą.

Screenshot of incorrect DAX expression.

Po wprowadzeniu poprawki do wyrażenia języka DAX błąd zniknie.

Screenshot of corrected DAX expression.

Po wprowadzeniu poprawek dla każdego błędu w elementach obliczeń ikony ostrzeżenia czerwonego trójkąta nie są już wyświetlane.

Screenshot of corrected DAX expressions in the calculation items area.

Zmienianie kolejności elementów obliczeń

Aby zmienić kolejność elementów obliczeń w dowolny preferowany sposób logiczny, możesz wybrać sekcję Elementy obliczeń w okienku Właściwości lub kliknąć prawym przyciskiem myszy menu kontekstowe elementu obliczeń, aby przenieść go w górę lub w dół na liście.

Screenshot of reordering calculation items.

Dodawanie ciągu formatu dynamicznego do elementu obliczania

Elementy obliczeń domyślnie używają formatowania bazowej miary. Zamiast tego możemy chcieć wyświetlić %YOY% jako wartość procentową. W tym celu wybierz element obliczania YOY% , a następnie włącz ciąg formatu dynamicznego w okienku właściwości, co umożliwia określenie wyrażenia języka DAX w celu utworzenia ciągu formatu. W tym przykładzie nie wymaga żadnych elementów warunkowych, więc po prostu #,#0,00% zmieni format na wartość procentową po zastosowaniu tego elementu obliczeń, jak pokazano na poniższej ilustracji.

Screenshot of changing format of underlying data items.

Używanie grupy obliczeń w raportach

Aby użyć nowej grupy obliczeń w raporcie, przejdź do widoku Raport , utwórz wizualizację Macierz i dodaj następujące elementy:

  1. Kolumna Month (Miesiąc) z tabeli Date (Data) do wierszy
  2. Obliczanie czasu z grupy obliczeń analizy czasowej do kolumn
  3. Orders measure to the Values (Zamówienia) do wartości

Uwaga

Jeśli miary Orders nie są tworzone w trybie, możesz użyć innej miary lub przejść do wstążki i wybrać pozycję Nowa miara z tym wyrażeniem języka DAX.

Orders = DISTINCTCOUNT('Sales Order'[Sales Order])

Na poniższej ilustracji przedstawiono tworzenie wizualizacji.

Screenshot of using calculation groups in reports.

Elementy obliczeń w wizualizacji Kolumny w wizualizacji Macierz pokazują miary Orders pogrupowane według poszczególnych elementów obliczeń. Można również zastosować pojedynczy element obliczeń do wielu miar, dodając kolumnęgrupy obliczeń do wizualizacji Fragmentator .

Screenshot of applying individual calculation items to multiple measures.

Używanie elementu obliczania w miarach

Możesz utworzyć nową miarę z wyrażeniem języka DAX, które będzie używać elementu obliczania dla określonej miary.

Aby utworzyć miarę [Orders YOY%], możesz użyć elementu obliczania z funkcją CALCULATE.

Orders YOY% = 
    CALCULATE(
        [Orders],
        'Time Intelligence'[Time Calculation] = "YOY%"
    )

Ustawianie pierwszeństwa grupy obliczeń

Na koniec, jeśli dodasz do modelu dodatkowe grupy obliczeń i chcesz określić kolejność, w jakiej mają zastosowanie do miar, możesz dostosować pierwszeństwo grupy obliczeń w okienku właściwości sekcji Grupy obliczeń, jak pokazano na poniższej ilustracji.

Screenshot of setting calculation group precedence.

Więcej informacji na temat pierwszeństwa grup obliczeń można dowiedzieć się w artykule Grupy obliczeń w modelach tabelarycznych usług Analysis Services.

W poniższych artykułach opisano więcej na temat modeli danych, a także szczegółowo opisano tryb DirectQuery.

Artykuły trybu DirectQuery: