Chaque itération de votre groupe de commandes produit un nouveau tableau de résultats ou un fichier CSV de données et vous souhaitez les combiner dans un seul fichier.
Approches courantes mais risquées
- Option 1 : Définir une variable de chaîne dynamique
- Évolutivité limitée : Les variables dynamiques ont une limite de taille stricte. Même si vos données conviennent aujourd’hui, elles risquent de se heurter à la limite à l’avenir, au fur et à mesure qu’elles s’accroissent.
- Échecs silencieux : Si la variable atteint la limite de taille, la chaîne n’est pas interrompue ; elle tronque simplement les données, ce qui entraîne des enregistrements manquants.
- Traitement supplémentaire : Vous devez encore reconvertir la chaîne de variables finale dans un fichier pour pouvoir l’utiliser.
- Option 2 : Écrire chaque fichier dans une table Wdata
- Lenteur des performances : Cela nécessite plusieurs appels d’API avec authentification pour chaque itération, ce qui ralentit considérablement l’exécution de la chaîne.
- Extraction complexe : Vous ne pouvez pas utiliser les données immédiatement ; vous devez exécuter une requête pour les regrouper.
- Nettoyage requis : Si vous devez réexécuter la chaîne, vous devez d’abord développer une logique supplémentaire pour supprimer ou remplacer les anciens fichiers du tableau.
- Option 3 : Écrire chaque fichier dans une feuille de calcul Workiva
- Lenteur des performances : Comme pour la méthode Wdata, les appels répétés de l’API à l’intérieur d’une boucle entraînent des temps d’exécution longs.
- Risque d’erreur élevé : Vous devez calculer le numéro de ligne exact pour chaque insertion, sinon vous risquez d’écraser des données ou de laisser des vides.
La meilleure solution : Sortie des fichiers de pile précédents
Si les colonnes sont toujours les mêmes avec les mêmes en-têtes, la meilleure solution consiste à utiliser la commande Tabular Transformations Stack Files ainsi que son option intégrée pour l’empilage à travers les itérations du groupe de commandes.
Note : Pour ce cas d’utilisation, assurez-vous d’utiliser le fichier de pile « Transformations tabulaires », et non celui des Utilitaires de fichiers du même nom. Ceci est important car la commande Utilitaires de fichiers ne reconnaîtra pas et ne supprimera pas les en-têtes de colonne des fichiers après le premier, alors que la commande Transformations tabulaires le fera.
Lorsque cette commande se trouve dans un groupe de commandes et que l’itération est activée, l’option variable « Previous Stack Files Output » apparaît dans sa propre section « Stack Files » dans le panneau des variables.
Utilisez la variable suivie d’une virgule et de la commande contenant les données que vous souhaitez empiler au fil des itérations.
Note : Il est essentiel que votre chaîne passe par la commande stack files à chaque itération et ne la saute pas. Si la chaîne ne le fait pas, toutes les données empilées avant cette itération seront perdues et il manquera des données dans le fichier final.
Toute commande dans votre chaîne après le groupe de commandes peut alors utiliser la variable Stack Files - « Stack Files Output » qui sera le fichier complet avec toutes les itérations.
Autres notes
- La commande file utilities stack file est utile si vous souhaitez joindre des ensembles de données dont l’en-tête de colonne n’est pas nécessaire et elle dispose de la même option « Previous Stack Files Output ».
- Les commandes Handlebars « Render Text Template » et « Render File Template » ont des options nommées « Previous Rendered Text » et « Previous Rendered File » qui fonctionnent de la même manière que l’option « Previous Stack Files Output » vue ici et qui pourrait être utile pour coller des modèles et/ou des fichiers JSON ensemble à travers les itérations.
- Il n’y a pas de problème si le nouveau fichier à empiler dans la commande stack files n’a pas de résultat, tant que les en-têtes de colonnes sont là.