TREATAS
S’applique à :Colonne calculéeTable calculéeMesureCalcul visuel
Applique le résultat d’une expression de table comme filtres aux colonnes d’une table non associée.
Syntaxe
TREATAS(table_expression, <column>[, <column>[, <column>[,…]]]} )
Paramètres
Terme | Définition |
---|---|
table_expression | Expression produisant une table. |
colonne | Une ou plusieurs colonnes existantes. Il ne peut pas s’agir d’une expression. |
Valeur de retour
Table contenant toutes les lignes de la ou des colonnes qui se trouvent également dans table_expression.
Remarques
Le nombre de colonnes spécifié doit correspondre au nombre de colonnes dans l’expression de table. Les colonnes doivent aussi ê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 "Red" et "Green".
Cette fonction est idéale quand il n’existe pas de relation entre les tables. Si vous avez plusieurs relations entre les tables impliquées, utilisez USERELATIONSHIP à la place.
Cette fonction n’est pas prise en charge pour une utilisation en mode DirectQuery quand elle est utilisée dans des colonnes calculées ou des 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 Bikes, Seats et Tires, le même filtre (Bikes, Seats et Tires) est appliqué à DimProduct2[ProductCategory].
CALCULATE(
SUM(Sales[Amount]),
TREATAS(VALUES(DimProduct1[ProductCategory]), DimProduct2[ProductCategory])
)