Freigeben über


ISCROSSFILTERED-Funktion (DAX)

Gibt TRUE zurück, wenn columnName oder eine andere Spalte in derselben oder in der verknüpften Tabelle gefiltert wird.

Syntax

ISCROSSFILTERED(<columnName>)

Parameter

  • columnName
    Der Name einer vorhandenen Spalte mit Standard-DAX-Syntax. Kann kein Ausdruck sein.

Rückgabewert

TRUE, wenn columnName oder eine andere Spalte in derselben oder in der verknüpften Tabelle gefiltert wird. Andernfalls wird FALSE zurückgegeben.

Hinweise

  • Eine Spalte gilt als kreuzgefiltert, wenn ein auf eine andere Spalte in derselben oder in einer verknüpften Tabelle angewendete Filter sich durch die Filterung auch auf columnName auswirkt. Eine Spalte gilt als direkt gefiltert, wenn der oder die Filter für die Spalte angewendet werden.

  • Die verwandte Funktion ISFILTERED-Funktion (DAX) gibt TRUE zurück, wenn columnName direkt gefiltert wird.

Beispiel

Im folgenden Beispiel werden ein Measure erstellt und verschiedene Szenarien präsentiert, um das Verhalten von ISCROSSFILTERED() zu erläutern. Die Szenarien können durch Herunterladen des Arbeitsblattes DAX_AdventureWorks verfolgt werden.

Erstellen Sie zuerst das folgende Measure [Is ProductName Cross Filtered] in der Tabelle [Product].

=ISCROSSFILTERED(Product[ProductName])

Grundlegendes zu ISCROSSFILTERED():

  1. Nachdem Sie das Measure erstellt haben, sollte die PivotTable anzeigen, dass [Is ProductName Cross Filtered] FALSE ist, da der Ausdruck überhaupt nicht gefiltert wird. Das Ergebnis sollte in etwa so aussehen:

    Is ProductName Cross Filtered

    FALSE

    Wenn in der PivotTable nichts angezeigt wird, ziehen Sie die Spalte [Is ProductName Cross Filtered] in das Feld Werte.

  2. Ziehen Sie DateTime[CalendarYear] in das Feld Spaltenbezeichnungen, und ziehen Sie SalesTerritory[SalesTerritoryGroup] in das Feld Zeilenbezeichnungen; alle Werte sollten als FALSE angezeigt werden. Das Ergebnis sollte in etwa so aussehen:

    Is ProductName Cross Filtered

    Spaltenbezeichnungen

    Zeilenbezeichnungen

    2005

    2006

    2007

    2008

    Gesamtergebnis

    Europe

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    NA

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    North America

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    Pacific

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    Gesamtergebnis

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    Der Wert FALSE wird in allen Zellen angezeigt, da weder DateTime[CalendarYear] noch SalesTerritory[SalesTerritoryGroup] einen Filtereffekt auf Product[ProductName] haben.

  3. Ziehen Sie die Spalte "ProductCategory[ProductCategoryName]" in das Feld Slicer horizontal und "ProductSubCategory[ProductSubCategoryName]" in das Feld Slicer vertikal. Alle Werte sollten immer noch als FALSE angezeigt werden, da Sie beim Hinzufügen einer Spalte zum Slicer-Feld noch kein Set zum Aufteilen in Slices ausgewählt haben. Daher sollte das Ergebnis etwa so aussehen:

    ProductCategoryName

    Accessories

    Bikes

    Clothing

    Components

    ProductSubcategoryName

    Is ProductName Cross Filtered

    Spaltenbezeichnungen

    Bib-Shorts

    Zeilenbezeichnungen

    2005

    2006

    2007

    2008

    Gesamtergebnis

    Bike-Racks

    Europe

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    Bike-Stands

    NA

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    Bottles and Cages

    North America

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    Bottom Brackets

    Pacific

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    Brakes

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    Caps

    Gesamtergebnis

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    FALSE

    Chains

    Cleaners

    Cranksets

    Derailleurs

    Fenders

    Forks

    Gloves

    Handlebars

    Headsets

  4. Wählen Sie ein Element in den Slicern aus, und in der Tabelle werden jetzt alle Zellen auf TRUE gesetzt, da Sie jetzt die Spalte "Product[ProductName]" über die verknüpften Tabellen "ProductCategory" und "ProductSubcategory" filtern. Die Ergebnisse sollten wie folgt aussehen:

    ProductCategoryName

    Accessories

    Bikes

    Clothing

    Components

    ProductSubcategoryName

    Is ProductName Cross Filtered

    Spaltenbezeichnungen

    Bib-Shorts

    Zeilenbezeichnungen

    2005

    2006

    2007

    2008

    Gesamtergebnis

    Bike-Racks

    Europe

    TRUE

    TRUE

    TRUE

    TRUE

    TRUE

    TRUE

    Bike-Stands

    NA

    TRUE

    TRUE

    TRUE

    TRUE

    TRUE

    TRUE

    Bottles and Cages

    North America

    TRUE

    TRUE

    TRUE

    TRUE

    TRUE

    TRUE

    Bottom Brackets

    Pacific

    TRUE

    TRUE

    TRUE

    TRUE

    TRUE

    TRUE

    Brakes

    TRUE

    TRUE

    TRUE

    TRUE

    TRUE

    TRUE

    Caps

    Gesamtergebnis

    TRUE

    TRUE

    TRUE

    TRUE

    TRUE

    TRUE

    Chains

    Cleaners

    Cranksets

    Derailleurs

    Fenders

    Forks

    Gloves

    Handlebars

    Headsets

  5. Sie können jetzt die Slicer durch Product[ProductName] und Product[ModelName] ersetzen. Solange Sie in keinem Slicer ein Element auswählen, gibt das Measure FALSE zurück. Wenn Sie jedoch in einem Slicer ein Element auswählen, gibt das Measure jetzt TRUE, da Sie Product[ProductName] nach sich selbst oder durch Auswählen eines Product[ModelName] filtern.

  6. Sie können also mit ISCROSSFILTERED() bestimmen, ob columnName in dem Kontext gefiltert wird, in dem der DAX-Ausdruck ausgewertet wird.

In diesem Beispiel wird das DAX_AdventureWorks-Beispielarbeitsblattmodell verwendet.

Siehe auch

Verweis

ISFILTERED-Funktion (DAX)

FILTERS-Funktion (DAX)

HASONEFILTER-Funktion (DAX)

HASONEVALUE-Funktion (DAX)