[Unable to combine data] sur requête API rest
-
[Unable to combine data] sur requête API rest
[Unable to combine data] sur requête API restJump to Best AnswerFollow
Denis Humeau
Denis HumeauAug 31, 2022 07:45 AM
Bonjour à la communauté, je vous expose un problème qui m’a pas mal occupé ces derniers temps et pour …
1. [Unable to combine data] sur requête API restDenis Humeau
Posted Aug 31, 2022 07:45 AM
Bonjour à la communauté,je vous expose un problème qui m’a pas mal occupé ces derniers temps et pour lequel je n’ai pas trouvé de solution.
Dans PowerBI Desktop je récupère des données projet qui sont des bugs ou des taches de développement issus de Bugzilla.
Pour des raisons purement IT et sécurité, je n’ai pas le droit de faire des requêtes SQL sur la base. Je dois donc procéder autrement, c’est à dire par API rest.J’utilise pour cela une connexion anonyme, dans ma requête j’inclus une api_key de Bugzilla qui permet de ne pas m’authentifier via PowerBi
J’ai une première requête dans laquelle je récupère une liste de tickets et des infos associées. Pas de problème.
J’ai besoin de récupérer pour un sous-ensemble de tickets leur historique (date de création, transition entre les états) afin de créer un burndown chart projet. Ce qui fonctionne également.
Dans l’implémentation cela signifie que je référence ma table initiale de tickets, je filtre les tickets pour lesquels je veux récupérer l’historique, et je crée une colonne personnalisée dans laquelle j’appelle une seconde requête API rest sous la forme suivante:Json.Document(Web.Contents(<myBugzillaURL>,[RelativePath=”rest/bug/”&Text.From([id])&”/history?&api_key=<myBugzillaAPIKey>”]))
Pour chaque id, je récupère l’historique sous forme d’un record.Là encore ça fonctionne, même si évidemment d’un point de vue performance cette solution n’est pas optimale. Mais je n’ai pas le choix, encore une fois les infos sont dans 2 tables différentes dans la base de données, que je n’ai pas le droit d’interroger en direct.
J’arrive néanmoins à mes fins, je produis un rapport qui répond à mon besoin et qui s’actualise bien dans Desktop.L’étape naturelle suivante est de mettre en place des mises à jour programmées dans mon espace powerbi.com. Et là, problème, je rencontre des erreurs du type
[Unable to combine data] Section1/Vx_y_z_ WP CR history/Requête ajoutée references other queries or steps, so it may not directly access a data source. Please rebuild this data combination.Je me suis renseigné sur cette erreur, mais je pense que le problème réside dans le fait que j’appelle une fonction web ligne par ligne. En tout cas pas de problème de privacy ou ce type là. Pour la forme j’ai supprimé l’appel à ma fonction personnalisée pour valider que le problème était bien induit par elle, c’est bien le cas.
J’en viens donc à ma question pour vous: avez-vous une expérience analogue et une idée de ce qui ne va pas dans ma méthode?
D’avance merci!
——————————
Denis Humeau
——————————2. RE: [Unable to combine data] sur requête API rest
Top Contributor
Jonathan CHANAL
Posted Aug 31, 2022 01:57 PM
Bonjour,Avez-vous essayé d’ignorer les niveaux de confidentialité pour ce fichier ?
Fichier,
Options & Paramètres,
Options,
Puis dans Fichier Actif,
Confidentialité,
Cocher “Ignorer les niveaux de confidentialité et potentiellement améliorer les performances”,
Cela peut régler le problème je pense.——————————
Jonathan CHANAL
Power BI Consultant/Formateur
MCSA Power BI & Excel
——————————3. RE: [Unable to combine data] sur requête API rest
Denis Humeau
Posted Sep 01, 2022 02:48 AM
Bonjour,dans PBI Desktop, l’option de confidentialité dans Global est à “Toujours ignorer les paramètres de niveau de confidentialité”.
Je suppose que si problème de ce type il y a ce serait plutôt dans la Personal Gateway (qui est sur un autre PC que celui sur lequel est installé PBI desktop)
——————————
Denis Humeau
——————————4. RE: [Unable to combine data] sur requête API rest Best Answer
Denis Humeau
Posted Sep 01, 2022 08:51 AM
La magie des forums: j’ai trouvé une solution.Ou plutôt deux:
– Les niveaux de confidentialité des sources n’étaient pas les mêmes entre le fichier source et la configuration dans power bi services (organizational vs. private)
– j’ai modifié la configuration de ma gateway en suivant les recommandations de https://docs.microsoft.com/fr-fr/power-bi/connect-data/service-gateway-personal-mode
La fonctionnalité Combinaison rapide sur une passerelle personnelle vous permet d’ignorer les niveaux de confidentialité spécifiés lors de l’exécution des requêtes. Pour que Combinaison rapide fonctionne avec la passerelle de données locale (mode personnel) :À l’aide de l’Explorateur de fichiers, ouvrez le fichier suivant :
%localappdata%\Microsoft\On-premises data gateway (personal mode)\Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config
En bas du fichier, avant </Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.GatewayCoreSettings>, ajoutez le texte suivant :
XMLCopier
<setting name=”EnableFastCombine” serializeAs=”String”>
<value>true</value>
</setting>
Une fois l’opération terminée, le paramètre prend effet environ une minute plus tard. Pour vérifier s’il fonctionne correctement, essayez une actualisation à la demande dans le service Power BI pour vérifier que le Regroupement rapide fonctionne.——————————
Denis Humeau
——————————
Sorry, there were no replies found.
The discussion ‘[Unable to combine data] sur requête API rest’ is closed to new replies.