Labo : Modéliser les données dans Power BI Desktop (partie 2)

Effectué

Accéder à votre environnement

Avant de commencer ce labo (sauf si vous continuez à partir d’un labo précédent), sélectionnez Démarrer le labo ci-dessus.

Vous êtes automatiquement connecté à votre environnement de labo en tant que data-ai\student.

Vous pouvez maintenant commencer ce labo.

Conseil

Pour ancrer l’environnement lab afin qu’il remplisse la fenêtre, sélectionnez l’icône en haut de l’écran, puis sélectionnez Ajuster la fenêtre à la machine.

Capture d’écran du laboratoire avec l’icône de PC sélectionnée et l’option Ajuster la fenêtre à la machine en surbrillance.

La durée estimée de ce labo est de 20 minutes.

Dans ce labo, vous allez créer une relation plusieurs-à-plusieurs entre la table Salesperson et la table Sales. Vous appliquerez également la sécurité au niveau des lignes pour vous assurer qu’un vendeur ne peut analyser les données de ventes que pour la ou les régions qui lui sont attribuées.

Dans ce labo, vous allez découvrir comment :

  • Configurer des relations plusieurs-à-plusieurs

  • Appliquer la sécurité au niveau des lignes

Histoire du labo

Ce labo est l’un des nombreux labos d’une série qui a été conçue comme une histoire complète allant de la préparation des données jusqu’à leur publication sous forme de rapports et de tableaux de bord. Vous pouvez effectuer ces labos dans l’ordre de votre choix. Toutefois, si vous comptez faire plusieurs labos, pour les dix premiers d’entre eux, nous vous suggérons de suivre cet ordre :

  1. Préparer des données dans Power BI Desktop

  2. Charger des données dans Power BI Desktop

  3. Modéliser les données dans Power BI Desktop (partie 1)

  4. Modéliser des données dans Power BI Desktop (Partie 2) << Vous êtes ici. Il s’agit du labo pour le module actuel.

  5. Créer des calculs DAX dans Power BI Desktop (partie 1)

  6. Créer des calculs DAX dans Power BI Desktop (partie 2)

  7. Concevoir un rapport dans Power BI Desktop (partie 1)

  8. Concevoir un rapport dans Power BI Desktop (partie 2)

  9. Créer un tableau de bord Power BI

  10. Analyser les données dans Power BI Desktop

  11. Créer un rapport paginé Power BI

Notes

Chaque labo commence par un fichier PBIX avec l’intégralité du travail effectué dans le labo précédent. Si vous perdez votre travail pour une raison quelconque, vous pouvez ouvrir le fichier PBIX qui comprend la progression jusqu’à ce point du dossier indiqué au début du labo suivant.

Exercice 1 : Créer une relation plusieurs-à-plusieurs

Dans cet exercice, vous allez créer une relation plusieurs-à-plusieurs entre la table Salesperson et la table Sales.

Tâche 1 : Démarrer

Dans cette tâche, vous configurez l’environnement pour le labo.

Important

Si vous venez d’effectuer le labo précédent (et que vous l’avez entièrement terminé), ignorez cette tâche et passez directement à la tâche suivante.

  1. Pour ouvrir Power BI Desktop, accédez à la barre des tâches et sélectionnez le raccourci Microsoft Power BI Desktop.

  2. Pour fermer la fenêtre de démarrage, en haut à gauche de cette fenêtre, sélectionnez X.

  3. Pour ouvrir le fichier Power BI Desktop de démarrage, sélectionnez l’onglet de ruban Fichier afin de passer en mode Backstage.

  4. Sélectionnez Ouvrir un rapport.

  5. Sélectionnez Parcourir les rapports.

  6. Dans la fenêtre Ouvrir, accédez au dossier D:\DA100\Labs\04-configure-data-model-in-power-bi-desktop-advanced\Starter.

  7. Sélectionnez le fichier Sales Analysis (Analyse des ventes).

  8. Sélectionnez Ouvrir.

  9. Fermez toutes les fenêtres d’information qui se sont éventuellement ouvertes.

  10. Pour créer une copie du fichier, sélectionnez l’onglet de ruban Fichier afin de passer en mode Backstage.

  11. Sélectionnez Enregistrer sous.

  12. Si vous êtes invité à appliquer les modifications, sélectionnez Appliquer.

  13. Dans la fenêtre Enregistrer sous, accédez au dossier D:\DA100\MySolution.

  14. Sélectionnez Enregistrer.

Tâche 2 : Créer une relation plusieurs-à-plusieurs

Dans cette tâche, vous créez une relation plusieurs-à-plusieurs entre la table Salesperson et la table Sales.

  1. Dans Power BI Desktop, dans le volet Champs de la vue Rapport, sélectionnez les deux champs suivants pour créer un visuel de table :

    • Salesperson | Salesperson

    • Sales | Sales

    Les labos utilisent une notation abrégée pour référencer un champ. Cela se présente ainsi : Salesperson | Salesperson. Dans cet exemple, Salesperson est le nom de la table et Salesperson correspond au nom du champ.

    Capture d’écran du visuel de table résultant

    La table présente les ventes réalisées par chaque vendeur. Toutefois, il existe une autre relation entre les vendeurs et les ventes. Certains vendeurs appartiennent à une ou deux régions de vente voire plus. Par ailleurs, plusieurs vendeurs peuvent être affectés à une même région de vente.

    Du point de vue de la gestion des performances, les ventes d’un vendeur (sur la base des territoires qui lui sont affectés) doivent être analysées et comparées aux objectifs de vente. Dans cet exercice, vous allez créer les relations nécessaires à cette analyse.

  2. Notez que les ventes de Michael Blythe atteignent presque 9 millions de dollars.

  3. Passez à la vue Modèle.

  4. Faites glisser la table SalespersonRegion pour la placer entre les tables Region et Salesperson.

  5. Créez les deux relations de modèle suivantes par glisser-déposer :

    • Salesperson | EmployeeKey à SalespersonRegion | EmployeeKey

    • Region | SalesTerritoryKey à SalespersonRegion | SalesTerritoryKey

    La table SalespersonRegion peut être considérée comme une table de pontage.

  6. Si vous passez à la vue Rapport, vous voyez que le visuel n’a pas été mis à jour. Le résultat des ventes de Michael Blythe n’a pas changé.

  7. Revenez à la vue Modèle, puis suivez les directions du filtre de relation (pointe de flèche) à partir de la table Salesperson.

    Notez que la table Salesperson filtre la table Sales. Elle filtre également la table SalespersonRegion, mais elle ne propage plus les filtres vers la table Region. (La flèche pointe vers la mauvaise direction.)

    Capture d’écran de la relation entre les tables Region, SalespersonRegion et Salesperson

  8. Pour modifier la relation entre les tables Region et SalespersonRegion, double-cliquez sur la relation.

  9. Dans la liste déroulante Direction du filtre croisé de la fenêtre Modifier la relation, sélectionnez Les deux.

  10. Cochez la case Appliquer le filtre de sécurité dans les deux directions.

    Ce paramètre garantit que le filtrage bidirectionnel est appliqué quand la sécurité au niveau des lignes est activée. Dans l’exercice suivant, vous configurerez un rôle de sécurité.

    Capture d’écran de la liste déroulante Direction du filtre croisé

  11. Sélectionnez OK.

  12. Notez que la relation a une double pointe de flèche.

    Capture d’écran de la flèche de relation avec double pointe de flèche visible

  13. Si vous passez à la vue Rapport, vous pouvez noter que les valeurs des ventes sont toujours les mêmes.

    Le problème vient maintenant du fait qu’il existe deux chemins de propagation de filtre possibles entre les tables Salesperson et Sales. Cette ambiguïté est résolue en interne selon une évaluation de type « plus petit nombre de tables ». Mais soyons clairs : vous ne devez pas concevoir de modèles avec ce type d’ambiguïté. Nous traiterons ce problème en partie plus tard dans ce labo, puis durant le labo Créer des calculs DAX dans Power BI Desktop (partie 1).

  14. Passez à la vue Modèle.

  15. Pour forcer la propagation du filtre par le biais de la table de pontage, double-cliquez sur la relation entre les tables Salesperson et Sales.

  16. Dans la fenêtre Modifier la relation, décochez la case Rendre cette relation active.

  17. Sélectionnez OK.

    La propagation du filtre suit désormais le seul chemin actif.

  18. Dans le diagramme, notez que la relation inactive est représentée par une ligne en pointillés.

    Capture d’écran d’une flèche de relation sur une ligne en pointillés

  19. Si vous passez à la vue Rapport, vous pouvez noter que les ventes de Michael Blythe atteignent presque 22 millions de dollars.

    Capture d’écran du visuel de table mis à jour avec les ventes actuelles de Michael Blythe

  20. Notez également que la somme des ventes de chaque vendeur dépasse le total de la table.

    Cela s’observe souvent en présence d’une relation plusieurs-à-plusieurs qui compte plusieurs fois les résultats des ventes régionales. Prenons Brian Welcker, le deuxième vendeur listé. Le montant de ses ventes est égal au montant total des ventes. Comme il est le directeur des ventes, ce résultat est correct : ses ventes correspondent aux ventes de toutes les régions.

    Bien que la relation plusieurs-à-plusieurs fonctionne, il est pour l’instant impossible d’analyser les ventes réalisées par un vendeur (car la relation est inactive). Dans le labo Créer des calculs DAX dans Power BI Desktop (partie 1), vous pourrez réactiver la relation quand vous introduirez une table calculée permettant d’analyser les performances des vendeurs dans leurs régions.

  21. Passez à la vue Modélisation, puis dans le diagramme, sélectionnez la table Salesperson.

  22. Dans la zone Nom du volet Propriétés, remplacez le texte par Salesperson (Performance).

    La table renommée reflète désormais son objectif, à savoir signaler et analyser les performances des vendeurs en fonction des ventes réalisées dans les régions qui leur sont affectées.

Tâche 3 : Créer une relation à la table Targets

Dans cette tâche, vous allez créer une relation à la table Targets.

  1. Créez une relation à partir de la colonne Salesperson (Performance) | EmployeeID et la colonne Targets | EmployeeID.

  2. Dans la vue Rapport, ajoutez le champ Targets | Target au visuel de table.

  3. Élargissez le visuel de table pour faire apparaître toutes les données.

    Capture d’écran du visuel de table élargi avec les colonnes Salesperson, Sales et Target.

    Vous pouvez maintenant visualiser les ventes et les objectifs. Toutefois, prenez en compte les deux points importants suivants. Premièrement, comme il n’y a pas de filtre sur une période de temps, les objectifs incluent également les valeurs des objectifs futurs. Deuxièmement, les objectifs ne sont pas additifs et le total ne doit donc pas être affiché. Vous pouvez les désactiver à l’aide d’une propriété de mise en forme visuelle ou les supprimer à l’aide d’une logique de calcul. Vous suivrez la deuxième approche dans le labo Créer des calculs DAX dans Power BI Desktop (partie 2), où vous créerez une mesure d’objectif qui retourne une valeur vide (BLANK) quand plusieurs vendeurs sont filtrés.

Exercice 2 : Appliquer la sécurité au niveau des lignes

Dans cet exercice, vous allez appliquer la sécurité au niveau des lignes pour vous assurer qu’un vendeur ne peut voir que les ventes réalisées dans la ou les régions qui lui sont affectées.

Tâche 1 : Appliquer la sécurité au niveau des lignes

Dans cet tâche, vous appliquez la sécurité au niveau des lignes pour vous assurer qu’un vendeur ne peut voir que les ventes réalisées dans la ou les régions qui lui sont affectées.

  1. Basculez vers l’affichage Données.

  2. Dans le volet Champs, sélectionnez la table Salesperson (Performance).

  3. Examinez les données. Notez que Michael Blythe (EmployeeKey 281) a cette valeur UPN : michael-blythe@adventureworks.com

    Rappelez-vous : Michael Blythe est affecté à trois régions de vente : USA Nord-Est, USA Centre et USA Sud-Est.

  4. Passez à la vue Rapport.

  5. Sous l’onglet de ruban Modélisation, dans le groupe Sécurité, sélectionnez Gérer les rôles.

    Capture d’écran de l’onglet de ruban Modélisation avec Gérer les rôles sélectionné.

  6. Dans la fenêtre Gérer les rôles, sélectionnez Créer.

  7. Dans la zone Rôles, remplacez le texte sélectionné par le nom de rôle Salespeople, puis appuyez sur Entrée.

    Capture d’écran de la fenêtre Gérer les rôles avec l’option Rôles sélectionnée.

  8. Pour appliquer un filtre à la table Salesperson (Performance), sélectionnez l’icône de points de suspension (...), puis sélectionnez Ajouter un filtre | [UPN].

    Capture d’écran du volet Tables avec le bouton de points de suspension sélectionné pour Salesperson (Performance), puis Ajouter un filtre avec l’option UPN sélectionnée.

  9. Dans la zone Expression DAX de filtre de table, modifiez l’expression en remplaçant Value par USERPRINCIPALNAME().

    Capture d’écran de la zone Expression DAX de filtre de table.

    USERPRINCIPALNAME() est une fonction DAX (Data Analysis Expressions) qui retourne le nom de l’utilisateur authentifié. Cela signifie que la table Salesperson (Performance) filtrera par le nom d’utilisateur principal (UPN) de l’utilisateur qui interroge le modèle.

  10. Sélectionnez Enregistrer.

  11. Pour tester le rôle de sécurité, sous l’onglet de ruban Modélisation, dans le groupe Sécurité, sélectionnez Afficher comme.

  12. Dans la fenêtre Afficher comme rôles, sélectionnez l’élément Autre utilisateur, puis dans la zone correspondante, entrez michael-blythe@adventureworks.com

  13. Sélectionnez le rôle Salespeople (Vendeur).

    Capture d’écran de la fenêtre Afficher comme rôles, avec l’option Autre utilisateur et le rôle Salespeople sélectionnés.

    Cette configuration se traduit par l’utilisation du rôle Salespeople et l’emprunt de l’identité de l’utilisateur avec le nom de Michael Blythe.

  14. Sélectionnez OK.

  15. Notez la bannière jaune au-dessus de la page du rapport, qui indique le contexte de sécurité du test.

    Capture d’écran de la bannière jaune avec le message Affichage actuel du rapport comme vendeur, michael-blythe@adventureworks.com.

  16. Notez, dans le visuel de table, que seul le vendeur Michael Blythe est listé.

    Capture d’écran du visuel de table où seul Michael Blythe est listé.

  17. Pour arrêter le test, sur le côté droit de la bannière jaune, sélectionnez Arrêter l’affichage.

    Une fois que le fichier Power BI Desktop aura été publié sur le service Power BI, vous devrez effectuer une tâche de post-publication pour mapper les principaux de sécurité au rôle Salespeople. Vous n’effectuerez pas cette tâche durant ce labo.

  18. Pour supprimer le rôle, sous l’onglet de ruban Modélisation, dans le groupe Sécurité, sélectionnez Gérer les rôles.

    La sécurité au niveau des lignes ne sera plus abordée dans les labos suivants.

  19. Dans la fenêtre Gérer les rôles, sélectionnez Supprimer.

    Capture d’écran de la fenêtre Gérer les rôles avec l’option Supprimer sélectionnée.

  20. Lorsque vous êtes invité à confirmer la suppression, sélectionnez Oui, supprimer.

  21. Sélectionnez Enregistrer.

Tâche 2 : Terminer

Dans cette tâche, vous terminez le labo.

  1. Enregistrez le fichier Power BI Desktop.

  2. Si vous êtes invité à appliquer des requêtes, sélectionnez Appliquer plus tard.

  3. Si vous avez l’intention de démarrer le labo suivant, vous pouvez laisser Power BI Desktop ouvert.

    Avertissement

    Si vous laissez le labo ouvert, il expire après un délai compris entre une et quatre heures. Votre travail dans le labo du module actuel sera perdu, mais chaque labo après le premier inclut un fichier PBIX contenant le travail effectué dans tous les labos précédents, afin que vous n’ayez pas besoin de recommencer.

Vous améliorerez le modèle de données avec des calculs en utilisant DAX dans le labo Créer des calculs DAX dans Power BI Desktop (partie 2).

Pour mettre fin à votre labo

Pour mettre fin à ce labo, sélectionnez le bouton Terminé dans le coin inférieur droit de la fenêtre d’instructions.