Lors de la phase de transformation de données Power BI permet la création de fonctions pour simplifier la transformation des sources.
Voyons comment nous pouvons nous connecter à plusieurs sources Web depuis une seule requête.
1. Créer un requête simple
Connectons nous à la page Wikipédia suivante : France
Une fois l'url validée, il faut choisir le tableau a extraire de la page.
Dans notre exemple nous allons nous connecter à la table "Géographie"
Ensuite choisir "Transformer les données" depuis Power BI ou "OK" depuis Power Query
2. Créer un paramètre
La prochaine étape consiste à créer un variable permettant de changer dynamiquement l'url. Il est important de noter que la structure doit être identique d'une page à une autre pour que cela fonctionne correctement.
Nous allons donc changer manuellement la source pour tester les pays suivants : France, Chine, Allemagne.
L'objectif est de s'assurer que le tableau "Géographie" et la structure sont identiques sur toutes les pages.
Une fois la structure validée, nous allons pouvoir créer le paramètre depuis Power Query. Pour cela, se positionner dans l'onglet "Accueil" > "Gérer les paramètres" > "Nouveau paramètre".
La fenêtre ci-dessous s'ouvre, nous allons créer un paramètre "Country" avec le type "Texte" et comme valeur "France"
Une fois le paramètre créé vous obtenez le résultat suivant
3. Lier la requête avec le paramètre
Nous allons maintenant lier la requête et le paramètre pour rendre dynamique le changement d'url.
Se positionner sur la requête "Géographie" et se positionner sur l'étape "Source".
Activer l'option avancé, ajouter le paramètre "Country" et ne pas oublié de supprimer le nom du pays dans l'url.
Nous devons obtenir le résultat suivant :
4. Créer une fonction
Se positionner sur la requête "Géographie" clic droit et choisir "Créer une fonction"
Une fenêtre s'ouvre demandant de nommer la fonction
Nous allons nommer la fonction "GetWiki". Une fois la fonction créée nous obtenons le résultat suivant
La fonction GetWiki est utilisable en l'état en saisissant une valeur statique ou bien en l'utilisant via une colonne personnalisée.
Dans le cas de la saisie d'une valeur statique alors une nouvelle requête va se créer en récupérant les données de la page concernée
Une fois la fonction terminé nous allons désactiver le chargement de la requête "Géographie" qui n'est plus nécessaire d'afficher. En effet, cette requête servira uniquement de référence pour construire la requête globale.
5. Utiliser la fonction via une colonne personnalisée
Nous allons maintenant utiliser cette fonction via une colonne personnalisée. Nous devons disposer d'une liste de pays à exploiter. Pour cela nous pouvons nous appuyer sur un fichier Excel, CSV, SQL, etc. Dans notre cas nous allons générer une requête interne à Power Query avec les valeurs France, Allemagne, Chine, Espagne, Italie, Etats-Unis.
Nous nommerons la table "Countries"
Une fois la table créée nous allons ouvrir "Appeler une fonction personnalisée" depuis l'onglet "Ajouter une colonne"
Une fenêtre s'ouvre, il faut choisir la fonction "GetWiki" et la colonne contenant le nom des pays (ici Colonne 1).
Power Query vient de récupérer les données depuis 6 url différentes à travers une seule requête.
Pour afficher les données de chaque pays il faut développer la colonne "GetWiki"
Comments