top of page

Créer et appliquer une fonction

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


saisir url


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"



tableaux web


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.



vérifier la structure


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"



créer un paramètre


Une fois le paramètre créé vous obtenez le résultat suivant


paramètre country france



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 :


lier un paramètre



4. Créer une fonction


Se positionner sur la requête "Géographie" clic droit et choisir "Créer une fonction"


créer une fonction













Une fenêtre s'ouvre demandant de nommer la fonction


créer une fonction






Nous allons nommer la fonction "GetWiki". Une fois la fonction créée nous obtenons le résultat suivant



utiliser une fonction

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.



activer le chargement
Activer le chargement




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"


tableau de pays

Une fois la table créée nous allons ouvrir "Appeler une fonction personnalisée" depuis l'onglet "Ajouter une colonne"


Appeler une fonction personnalisée


Une fenêtre s'ouvre, il faut choisir la fonction "GetWiki" et la colonne contenant le nom des pays (ici Colonne 1).


Utiliser la fonction GetWiki


Power Query vient de récupérer les données depuis 6 url différentes à travers une seule requête.

récupération des données


Pour afficher les données de chaque pays il faut développer la colonne "GetWiki"

Développer les données












Les données de chaque url









Télécharger le fichier PBIX



4 vues0 commentaire

Posts récents

Voir tout

Fonction Table.FromColumns

Utilité :   Cette fonction crée une table à partir de colonnes données sous forme de listes. Syntaxe : Table.FromColumns(columnLists...

Fonction Number.Mod

Utilité :   Cette fonction retourne le reste de la division d'un nombre par un autre. Syntaxe : Number.Mod(number as nullable number,...

Fonction Number.Power

Utilité :   Cette fonction élève un nombre à une puissance spécifiée. Syntaxe : Number.Power(base as nullable number, exponent as...

Comments

Rated 0 out of 5 stars.
No ratings yet

Add a rating
bottom of page