Choisir une technique pour ajouter une colonne

Effectué

Il existe trois techniques que vous pouvez utiliser pour ajouter des colonnes à un modèle de table :

  • Ajouter des colonnes à une vue ou une table (sous forme de colonne persistante), puis définir leur source dans Power Query. Cette option est utile uniquement lorsque votre source de données est une base de données relationnelle et que vous disposez des compétences et des autorisations nécessaires. Toutefois, il s’agit d’une option intéressante car elle facilite la maintenance et permet de réutiliser la logique de colonne dans d’autres modèles ou rapports.
  • Ajouter des colonnes personnalisées (à l’aide de M) à des requêtes Power Query.
  • Ajouter des colonnes calculées (à l’aide de DAX) à des modèles de tables.

Quelle que soit la technique utilisée, le résultat est le même. Les utilisateurs de rapports ne peuvent pas déterminer l’origine d’une colonne. En règle générale, ils ne se soucient pas de la façon dont la colonne a été créée mais plutôt du fait qu'elle fournit les bonnes données.

Lorsque plusieurs méthodes sont disponibles pour ajouter une colonne, vous pouvez utiliser l’approche qui correspond le mieux à vos compétences et qui est prise en charge par le langage (M ou DAX). Toutefois, il est préférable d’ajouter des colonnes personnalisées dans Power Query chaque fois que cela est possible car elles sont chargées dans le modèle de manière plus compacte et optimale.

Lorsque vous devez ajouter une colonne à une table calculée, veillez à créer une colonne calculée. Sinon, nous vous recommandons d’utiliser une colonne calculée uniquement lorsque la formule de colonne calculée :

  • Dépend d’un modèle de données synthétisées.
  • Doit utiliser des fonctions de modélisation spécialisées uniquement disponibles dans DAX, par exemple les fonctions RELATED et RELATEDTABLE. Les fonctions spécialisées peuvent également inclure les hiérarchies DAX de type parent/enfant, conçues pour la création d’une relation récursive en colonnes, par exemple dans une table Employee (Employé) où chaque ligne stocke une référence à la ligne du responsable (qui est également un employé).