Partage via


TREATAS

s’applique à :colonne calculéetable calculéemesurecalcul visuel

Applique le résultat d’une expression de table en tant que filtres aux colonnes d’une table non liée.

Syntaxe

TREATAS(table_expression, <column>[, <column>[, <column>[,…]]]} )

Paramètres

Terme Définition
table_expression Expression produisant une table.
column Une ou plusieurs colonnes existantes. Il ne peut pas s’agir d’une expression.

Valeur de retour

Table qui contient toutes les lignes des colonnes qui se trouvent également dans table_expression.

Remarques

  • Le nombre de colonnes spécifiées doit correspondre au nombre de colonnes dans l’expression de table et être dans le même ordre.

  • Si une valeur retournée dans l’expression de table n’existe pas dans la colonne, elle est ignorée. Par exemple, TREATAS({"Red », « Green », « Yellow"}, DimProduct[Color]) définit un filtre sur la colonne DimProduct[Color] avec trois valeurs « Red », « Green » et « Yellow ». Si « Yellow » n’existe pas dans DimProduct[Color], les valeurs de filtre effectives sont « Rouge » et « Vert ».

  • Il est préférable d’utiliser lorsqu’une relation n’existe pas entre les tables. Si vous avez plusieurs relations entre les tables impliquées, envisagez d’utiliser USERELATIONSHIP à la place.

  • Cette fonction n’est pas prise en charge pour une utilisation en mode DirectQuery lorsqu’elle est utilisée dans les colonnes calculées ou les règles de sécurité au niveau des lignes (RLS).

Exemple

Dans l’exemple suivant, le modèle contient deux tables de produits non liées. Si un utilisateur applique un filtre à DimProduct1[ProductCategory] en sélectionnant Vélos, Sièges, Pneus, le même filtre, Vélos, Sièges, Pneus, Tires est appliqué à DimProduct2[ProductCategory].

CALCULATE(
    SUM(Sales[Amount]),
    TREATAS(
        VALUES(DimProduct1[ProductCategory]),
        DimProduct2[ProductCategory]
    )
)

INTERSECT FILTER USERELATIONSHIP