Bonjour,
je souhaite récupérer les données d'une API (Sirène) Open Data à l'aide de retool et de requête javascript.
La connexion à l'API se passe bien, on peut récupérer les données facilement. Lorsque je souhaite afficher les données sous forme de tableau ça bloque. On obtient des données sous cette forme :
Documentation de l'API
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
{
 "header": {
 "statut": 200,
 "message": "ok"
 },
 "etablissement": {
 "siren": "398607333",
 "nic": "00059",
 "siret": "39860733300059",
 "statutDiffusionEtablissement": "O",
 "dateCreationEtablissement": "2015-01-09",
 "trancheEffectifsEtablissement": "00",
 "anneeEffectifsEtablissement": "2016",
 "activitePrincipaleRegistreMetiersEtablissement": "5610CR",
 "dateDernierTraitementEtablissement": "2018-09-29T12:24:50",
 "etablissementSiege": false,
 "nombrePeriodesEtablissement": 4,
 "uniteLegale": {
 "etatAdministratifUniteLegale": "C",
 "statutDiffusionUniteLegale": "O",
 "dateCreationUniteLegale": "1994-10-10",
 "categorieJuridiqueUniteLegale": "1000",
 "denominationUniteLegale": null,
 "sigleUniteLegale": null,
 "denominationUsuelle1UniteLegale": null,
 "denominationUsuelle2UniteLegale": null,
 "denominationUsuelle3UniteLegale": null,
 "sexeUniteLegale": "M",
Le truc c'est que j'aimerai bien disposer de mes données différemment afin de tout afficher dans un seul tableau pour l'exporter plus tard dans une base de données. Ici on voit qu'il y a plusieurs dimensions au tableau : -> etablissement -> uniteLegale ect ... Pour afficher le tableau correctement j'ai fait en sorte de passer par deux requêtes différentes à l'API (une pour avoir les établissements uniquement et l 'autre les uniteLegale).

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
var dataEtablissement = {{nomEntreprise.data.etablissements}} // Code sur retool permettant de récupérer le tableau établissement
var dataUniteLegale= {{query7.data.etablissements}};  // Récupère les données dans UniteLegale
var dataPush = [];
for (let i = 0; i < {{query7.data.etablissements.length}}; i++) {
     dataPush.push(dataUniteLegale[i].uniteLegale, dataEtablissement[i]);
}
return dataPush;
Nom : Capture.PNG
Affichages : 375
Taille : 5,1 KoNom : Capture.PNG
Affichages : 380
Taille : 19,0 Ko

Le résultat est le suivant :
Nom : Capture.PNG
Affichages : 360
Taille : 12,2 Ko
Les valeurs ne s'ajoutent pas comme je l'espérait elle prennent une ligne chacune alors que souhaiterai quelles fusionnent pour être dans le même tableau.
Merci d'avance pour votre aide, si vous avez des questions je reste disponible.