Microsoft Excel
Dans Microsoft Excel, il est possible d'importer directement des données de notre cloud. Cela permet par exemple de regrouper des données provenant de différents comptes dans une base de données, de les lire et de les traiter. Dans Excel, on utilise pour cela l'éditeur Power Query. Celui-ci permet d'effectuer des requêtes HTTP au moyen de notre API. Vous trouverez les commandes API disponibles et l'environnement de test ici.
Télécharger le fichier d'exemple
Le fichier à droite contient une requête variable des relevés d'un compteur. Ce fichier peut être complété avec d'autres compteurs.
Toutes les fonctions nécessaires sont disponibles dans Excel 0365 ou à partir d'Excel 2016.
Pour pouvoir utiliser le fichier d'exemple, téléchargez-le et ..
-
Téléchargez le fichier
-
Mettez à jour les données de connexion de la requête selon les informations figurant dans la feuille « Dashboard ».
API_Test_ValuesInPast_Example.xlsx
Créer la connexion
Créer une requête de données à partir du web
Lancez Excel et, sous l'onglet Données, cliquez sur Obtenir des données, À partir d'autres sources, À partir du web.

Saisir la commande API
Insérez le lien de la commande API que vous souhaitez interroger. Dans l'exemple, il s'agit de la commande https://www.smart-me.com/api/Devices/{id} . Nous souhaitons donc lire toutes les données actuelles de l'appareil portant l'ID correspondant.
Vous trouverez plus d'informations sur la commande elle-même dans l'outil de test, via le lien ci-dessus. Vous pouvez également y déterminer l'ID de l'appareil souhaité.

Authentification du lien (mot de passe et nom d'utilisateur)
Vous êtes maintenant invité à indiquer l'authentification pour le lien concerné. Le nom d'utilisateur et le mot de passe du compte correspondant sont requis.
-
Sélectionnez le lien correspondant
-
Cliquez sur Modifier les autorisations
-
Sous Informations d'identification, cliquez sur Modifier
-
Saisissez le nom d'utilisateur et le mot de passe du compte dans l'onglet « De base »



Convertir les données en tableau dans l'éditeur Power Query
À la suite de l'importation, une liste des données importées est créée dans l'éditeur Power Query. Ces données doivent maintenant être converties en tableau.

Fermer et charger
Après Fermer et charger, une nouvelle feuille de calcul contenant les informations de la source de données est créée.

Paramètres de la requête de connexion (intervalle et actualisation)
Une fenêtre s'ouvre sur la droite ; un clic droit sur la connexion existante permet d'accéder à d'autres paramètres. On peut notamment y définir les intervalles d'actualisation de la connexion concernée. Dans l'onglet Données, les actualisations peuvent également être déclenchées sur commande de l'utilisateur.



Requête de données avec variables (interroger les relevés du compteur avec une date variable)
La requête de données historiques suit le même principe que la construction du lien pour les données actuelles. La principale différence est que les données doivent être interrogées avec une information modifiable (variable). Pour que cela soit possible, deux requêtes doivent être effectuées :
-
Requête au sein du tableau Excel sur la variable « Date ».
-
Requête à partir du web avec une commande API appropriée. La commande appropriée ici est https://smart-me.com/api/ValuesInPast/{id} (données journalières du compteur dans le passé)
Créer la variable de date
Dans Excel, choisissez un emplacement où la date doit être saisie. Créez pour cela un tableau via Insertion --> Tableau. (Important)

Sélectionnez une plage de 4 cellules afin qu'un nom de colonne ainsi que le texte, valeur comprise, y trouvent chacun leur place.
Définir le nom du tableau pour la programmation ultérieure
Pour que Power Query sache plus tard dans quel tableau se trouve la variable, celui-ci est appelé par son nom. Pour que ce soit univoque, nous attribuons un nom fixe (ici Datumsauswahl).

Formater le champ de la variable (champ texte)
Pour que la date puisse être utilisée par la suite, le contenu doit être formaté en tant que texte. Pour cela, sélectionnez le tableau et choisissez le format Texte en haut.

Interroger la variable dans Power Query
Nous pouvons maintenant ajouter la requête pour notre variable dans Power Query :
- Ouvrez Power Query

2. Créez une nouvelle requête dans Power Query (clic droit sous Requêtes) 3. Créez une requête vide nommée « Datumsauswahl »

4. Copiez le texte suivant dans le bloc de fonction de la requête : = Excel.CurrentWorkbook(){[Name="Datumsauswahl"]}[Content] « Datumsauswahl » est ici le nom du tableau dans lequel se trouve la valeur de la variable.

Lier la variable et la valeur Excel
Effectuez une extraction (Drilldown) pour sélectionner le champ qui contient le paramètre modifiable : Sélectionner le champ contenant la valeur de date --> clic droit --> Drilldown.
Ensuite, le contenu de la cellule apparaît seul et porte désormais le nom « Datumsauswahl ».


Créer la requête pour les données historiques
Créez une nouvelle requête par un clic droit dans la zone Requêtes à gauche. Choisissez ensuite une requête à partir du web.

La nouvelle requête contient maintenant la commande pour les données passées et se présente comme suit :
https://smart-me.com:443/api/ValuesInPast/32b30ab1-3ac5-4fd5-b24f-96d02d3b2bed?date=01.01.2021
Elle contient le chemin de la requête HTTP et, à la fin, une date cible. Nous transmettrons plus tard cette date cible de manière variable.
Lors de la création, un élément codé en dur peut être transmis. Veillez à ce que des données existent déjà dans le cloud pour cette date.
La date a le format suivant : mois.jour.année, soit mm.dd.yyyy

Intégrer la variable dans la requête
Pour que la date fixe soit maintenant remplacée par notre variable, la commande de fonction doit être légèrement adaptée.
Elle passe de
= Json.Document(Web.Contents("https://smart-me.com:443/api/ValuesInPast/32b30ab1-3ac5-4fd5-b24f-96d02d3b2bed?date=01.01.2021))
à
= Json.Document(Web.Contents("https://smart-me.com:443/api/ValuesInPast/32b30ab1-3ac5-4fd5-b24f-96d02d3b2bed?date="&Datumsauswahl))

Adapter le contenu du tableau à vos besoins
Le contenu affiché au sein du jeu de données peut maintenant être restructuré et adapté aux besoins de chacun.
Dans notre exemple, nous souhaitons que toutes les données soient accompagnées du DeviceId, de la date, du code Obis et de la valeur.
- Convertir le contenu en tableau

- Transposer les lignes et les colonnes


3. Utiliser la première ligne pour les en-têtes

4. Modifier la colonne Values et la développer en nouvelles lignes


5. Sélectionner les contenus de lignes supplémentaires --> OK.


6. Cliquer sur Fermer et charger

Interpréter et attribuer les codes Obis
Les codes Obis sont standardisés. Pour pouvoir les attribuer, la liste Excel des codes Obis peut être comparée à l'aide de RECHERCHEV. Vous obtenez ainsi le nom du code Obis et l'unité des valeurs.