Connecter avec des données à l’aide de requêtes Power BI et OData

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Pour extraire des données dans Power BI, nous vous recommandons d’utiliser des requêtes OData (Open Data Protocol). OData est une norme OASIS approuvée par ISO/IEC qui définit les meilleures pratiques pour la création et la consommation d’API REST. Pour plus d’informations, consultez la documentation OData.

Pour commencer rapidement, case activée la vue d’ensemble des exemples de rapports qui utilisent des requêtes OData. Pour plus d’informations sur d’autres approches, consultez la vue d’ensemble de l’intégration de Power BI.

Power BI peut exécuter des requêtes OData, qui peuvent retourner un jeu de données filtré ou agrégé à Power BI. Les requêtes OData présentent deux avantages :

  • Tout le filtrage est effectué côté serveur. Seules les données dont vous avez besoin sont retournées, ce qui entraîne des temps d’actualisation plus courts.
  • Vous pouvez préaggréguer le serveur de données côté serveur. Une requête OData peut effectuer des agrégations telles que le cumul d’éléments de travail et les taux d’échec de build. Les agrégations sont effectuées côté serveur, et seules les valeurs d’agrégation sont retournées à Power BI. Avec la préagrégation, vous pouvez effectuer des agrégations sur des jeux de données volumineux, sans avoir à extraire toutes les données détaillées dans Power BI.

Dans cet article, vous apprendrez comment :

  • Écrire et tester des requêtes OData.
  • Exécutez une requête OData à partir de Power BI.

Prérequis

  • Pour afficher les données Analytics et interroger le service, vous devez être membre d’un projet avec un accès de base ou supérieur. Par défaut, tous les membres du projet sont autorisés à interroger Analytics et à définir des vues Analytics.
  • Pour en savoir plus sur les autres prérequis concernant l’activation des services et des fonctionnalités et les activités générales de suivi des données, consultez Autorisations et prérequis pour accéder à Analytics.

Utiliser Visual Studio Code pour écrire et tester des requêtes OData

Le moyen le plus simple d’écrire et de tester OData consiste à utiliser Visual Studio Code avec l’extension OData. Visual Studio Code est un éditeur de code gratuit disponible sur Windows, Mac et Linux. L’extension OData fournit une mise en surbrillance de syntaxe et d’autres fonctions utiles pour l’écriture et le test de requêtes.

Installer Visual Studio Code et l’extension OData

  1. Installez Visual Studio Code.

  2. Ouvrez Visual Studio Code, sélectionnez Extensions, puis recherchez odata. Dans la liste des résultats, sélectionnez vscode-odata, puis installez-le.

  3. Créez et enregistrez un fichier OData dans Visual Studio Code, par exemple filename.odata. Nommez-la comme vous le souhaitez, mais elle doit avoir une .odata extension pour activer la fonctionnalité d’extension OData.

Écrire la requête OData

  1. Écrivez la requête OData. Pour obtenir des exemples de requêtes, consultez la vue d’ensemble des exemples de rapports qui utilisent des requêtes OData.

    La requête suivante retourne les 10 premiers éléments de travail sous un chemin d’accès de zone spécifique.

  2. Remplacez {organization}, {project} et {area path} par vos valeurs.

    https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/WorkItems?
        $select=WorkItemId,Title,WorkItemType,State,CreatedDate
        &$filter=startswith(Area/AreaPath,'{area path}')
        &$orderby=CreatedDate desc
        &$top=10
    

    Pour interroger des projets, omettez /{project} entièrement.

Pour plus d’informations, consultez la référence rapide des requêtes OData.

Après avoir écrit la requête dans Visual Studio Code, vous devriez voir la mise en surbrillance de la syntaxe.

Capture d’écran montrant l’extension OData Visual Studio Code avec mise en surbrillance de la syntaxe.

Tester la requête OData

  1. Pour tester la requête OData, placez votre curseur n’importe où dans le texte de la requête et sélectionnez Afficher>la palette de commandes.

  2. Dans la zone de recherche, entrez odata pour afficher toutes les commandes OData.

    Capture d’écran montrant la palette de commandes de l’extension OData Visual Studio Code.

  3. Sélectionnez OData : Ouvrir. Cette action combine la requête multiligne dans une URL à une seule ligne et l’ouvre dans votre navigateur par défaut.

    • Le jeu de résultats de requête OData est au format JSON. Pour afficher les résultats, installez l’extension JSON Formatter pour votre navigateur. Plusieurs options sont disponibles pour Chrome et Microsoft Edge.

      Capture d’écran montrant la sortie JSON de l’extension OData Visual Studio Code.

    • Si la requête a une erreur, le service Analytics retourne une erreur au format JSON. Par exemple, cette erreur indique que la requête a sélectionné un champ qui n’existe pas.

      Capture d’écran montrant l’erreur JSON de l’extension OData Visual Studio Code.

Après avoir vérifié que la requête fonctionne correctement, vous pouvez l’exécuter à partir de Power BI.

Exécuter la requête OData à partir de Power BI

Pour exécuter la requête OData à partir de Power BI, suivez les étapes de la section suivante.

Combiner la requête OData multiligne en une seule ligne

Avant d’utiliser la requête dans Power BI, vous devez convertir la requête OData multiligne en une seule ligne. La façon la plus simple consiste à utiliser Visual Studio Code avec l’extension OData et à utiliser la commande OData : Combiner.

Remarque

Dans votre fichier filename.odata , vous pouvez d’abord créer une copie du texte de requête multiligne, puis exécuter OData : Combiner sur la copie. Effectuez d’abord cette étape, car il n’existe aucun moyen de convertir la requête en ligne unique en requête multiligne lisible.

  1. Dans Visual Studio Code, placez votre requête n’importe où dans le texte de la requête, puis sélectionnez Afficher>la palette de commandes. Dans la zone de recherche, entrez odata. Ensuite, dans la liste des résultats, sélectionnez OData : Combiner.

    La requête multiligne est convertie en une seule ligne.

    Capture d’écran montrant l’extension OData de Visual Studio Code combinée à une requête à une seule ligne.

  2. Copiez la ligne entière à utiliser dans la section suivante.

Exécuter la requête à partir de Power BI

  1. Sélectionnez Obtenir le flux OData de données>. Pour plus d’informations, consultez Créer un rapport Power BI avec une requête OData.

    Capture d’écran montrant la commande de flux OData Power BI.

  2. Dans la fenêtre de flux OData, dans la zone URL , collez la requête OData que vous avez copiée dans la section précédente, puis sélectionnez OK.

    .

    Power BI affiche une page d’aperçu.

    Capture d’écran montrant la page d’aperçu du flux OData Power BI.

Spécifier les options de requête

  1. Sélectionnez Modifier dans la page d’aperçu pour ouvrir Éditeur Power Query.

    Capture d’écran montrant Éditeur Power Query ouvert pour le flux OData Power BI.

  2. Sélectionnez Éditeur avancé dans le ruban.

    Capture d’écran montrant Éditeur avancé sélectionné pour le flux OData Power BI.

  3. Faites défiler horizontalement pour afficher le [Implementation="2.0"] paramètre dans le volet Requête .

    Capture d’écran montrant le flux OData Power BI avec le Éditeur avancé fait défiler vers la droite.

  4. Remplacez par [Implementation="2.0"] la chaîne suivante :

    [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]

    Capture d’écran montrant la chaîne de remplacement.

    Remarque

    Pour éviter les erreurs de limitation, effectuez les actions suivantes :

    • Demandez à Power BI de référencer OData v4.
    • Demandez au service Analytics d’omettre toutes les valeurs null, ce qui améliore les performances des requêtes. Power Query tente de résoudre les valeurs Null en tant qu’erreurs en générant une autre requête pour chaque valeur Null qu’elle rencontre. Cette action peut entraîner des milliers de requêtes, qui dépassent rapidement votre seuil d’utilisation, au-delà duquel votre compte d’utilisateur est limité.

    L’action suivante est requise pour que Power BI exécute correctement une requête OData sur azure DevOps Analytics Service.

  5. Sélectionnez OK pour fermer le Éditeur avancé et revenir à Power BI Éditeur Power Query. Vous pouvez utiliser Éditeur Power Query pour effectuer les actions facultatives suivantes :

    • Renommez la Query1 requête comme quelque chose de plus spécifique.
    • Transformez des colonnes en un type spécifique. Power BI détecte automatiquement le type, mais vous souhaiterez peut-être convertir des colonnes en un type de données spécifique.
    • Ajoutez des colonnes calculées.
    • Supprimer des colonnes.
    • Développez des colonnes dans des champs spécifiques.

Créer un rapport à l’aide des données

Sélectionnez Fermer & Appliquer pour enregistrer vos paramètres et extraire les données dans Power BI. Une fois les données actualisées, vous pouvez créer un rapport comme vous le feriez normalement dans Power BI.

Capture d’écran montrant le bouton Fermer et Appliquer Power BI.