ALLEXCEPT
Dotyczy:kolumna obliczeniowatabela obliczeniowaMiarawizualizacji
Usuwa wszystkie filtry kontekstowe w tabeli z wyjątkiem filtrów, które zostały zastosowane do określonych kolumn.
Składnia
ALLEXCEPT(<table>,<column>[,<column>[,…]])
Parametry
Termin | Definicja |
---|---|
table |
Tabela, w której są usuwane wszystkie filtry kontekstowe, z wyjątkiem filtrów dla tych kolumn, które są określone w kolejnych argumentach. |
column |
Kolumna, dla której należy zachować filtry kontekstowe. |
Pierwszym argumentem funkcji ALLEXCEPT musi być odwołanie do tabeli podstawowej. Wszystkie kolejne argumenty muszą być odwołaniami do kolumn podstawowych. Nie można używać wyrażeń tabeli ani wyrażeń kolumn z funkcją ALLEXCEPT.
Wartość zwracana
Tabela ze wszystkimi filtrami usuniętymi z wyjątkiem filtrów w określonych kolumnach.
Uwagi
Ta funkcja nie jest używana przez siebie, ale służy jako funkcja pośrednia, która może służyć do zmiany zestawu wyników, nad którymi wykonywane jest inne obliczenia.
ALL i ALLEXCEPT mogą być używane w różnych scenariuszach:
Funkcja i użycie Opis ALL(tabela) Usuwa wszystkie filtry z określonej tabeli. W efekcie ALL(Tabela) zwraca wszystkie wartości w tabeli, usuwając wszystkie filtry z kontekstu, które w przeciwnym razie mogły zostać zastosowane. Ta funkcja jest przydatna podczas pracy z wieloma poziomami grupowania i chce utworzyć obliczenie, które tworzy stosunek wartości zagregowanej do wartości całkowitej. ALL (kolumna[, kolumna[, ...]]) Usuwa wszystkie filtry z określonych kolumn w tabeli; wszystkie inne filtry w innych kolumnach w tabeli nadal mają zastosowanie. Wszystkie argumenty kolumn muszą pochodzić z tej samej tabeli. Wariant ALL(kolumna) jest przydatny, gdy chcesz usunąć filtry kontekstowe dla co najmniej jednej konkretnej kolumny i zachować wszystkie inne filtry kontekstowe. ALLEXCEPT(Tabela, Kolumna1 [,Kolumna2]...) Usuwa wszystkie filtry kontekstowe w tabeli z wyjątkiem filtrów, które są stosowane do określonych kolumn. Jest to wygodny skrót w sytuacjach, w których chcesz usunąć filtry dla wielu, ale nie wszystkich kolumn w tabeli. Ta funkcja nie jest obsługiwana w trybie DirectQuery w przypadku użycia w kolumnach obliczeniowych lub regułach zabezpieczeń na poziomie wiersza.
Przykład
Poniższa formuła miary sumuje SalesAmount_USD i używa funkcji ALLEXCEPT do usuwania filtrów kontekstowych w tabeli DateTime, z wyjątkiem sytuacji, gdy filtr został zastosowany do kolumny CalendarYear.
= CALCULATE(SUM(ResellerSales_USD[SalesAmount_USD]), ALLEXCEPT(DateTime, DateTime[CalendarYear]))
Ponieważ formuła używa ALLEXCEPT, za każdym razem, gdy dowolna kolumna, ale kolumna CalendarYear z tabeli DateTime jest używana do wycinka wizualizacji, formuła usunie wszystkie filtry fragmentatora, zapewniając wartość równą sumie SalesAmount_USD. Jeśli jednak kolumna CalendarYear jest używana do fragmentowania wizualizacji, wyniki są inne. Ponieważ kolumna CalendarYear jest określana jako argument ALLEXCEPT, gdy dane są fragmentowane w roku, filtr zostanie zastosowany na latach na poziomie wiersza
Powiązana zawartość
funkcje FilterALLFILTER funkcji