Free Trial

Forum

Trouvez des réponses, posez des questions, et partagez votre expertise d’Alteryx.
TIPS de la semaine

Chaque semaine, découvrez de nouvelles astuces et bonnes pratiques pour devenir un expert !

Voir l'index
RÉSOLU

Tester à la réception un fichier provenant du web

psyrio
Comète

Bonjour, 

 

Pour certains besoins je vais récupérer des fichiers (txt, csv,xls,xlsx) présents sur certains site WEB (INSEE, Gouv.fr,...) à travers le Download Tool et les enregistre pour un traitement ultérieur.

 

Cependant, il arrive que les fichiers téléchargés soient incorrects (Format téléchargé incorrect, vide...) dû à des mises à jour par ces sites par exemple.

N'ayant aucun moyen de savoir quand les fichiers sont disponibles ou non, j'ai essayé de trouver un moyen dans ALTERYX pour tester les fichiers téléchargées et si possible ne pas les enregistrer (et donc ne pas écraser les fichiers de la veille) s'il y a un soucis.

 

Malheureusement je ne trouve aucune option ou aucune astuce à ce jour sur ce forum et donc je voulais savoir si d'autres personnes ont ce genre de problématique et qu'elles solutions elles ont mise en place.

 

Merci d'avance de votre aide.

 

Cordialement,

Psyrio 

23 RÉPONSES 23
carlosteixeira
15 - Aurora
15 - Aurora

Bonjour mon ami @psyrio 
Une suggestion que j'essaierais de mettre en œuvre serait de créer des structures (TEXT INPUT) et de les comparer avec les fichiers que vous allez apporter.

 

Si quelque chose est différent de la structure que vous avez créée (je pense que c'est la structure dont vous avez besoin), vous supprimerez ce fichier de votre processus.

 

Ou, vous pouvez implémenter cette structure et créer les validations de nom et diriger ces champs vers votre structure correcte.

 

Je ne sais pas si ces idées vous aident d'une manière ou d'une autre, je l'espère.

salutations

Carlos Teixeira

Carlos A Teixeira
psyrio
Comète

Bonjour @carlosteixeira ,

 

Merci pour ce retour rapide.

 

Malheureusement ici il ne s'agit pas ici d'un problème de structure mais plutôt en fait que les fichiers peuvent ne pas être disponibles sur le web mais le download tool va quand même créer des fichiers et donc écraser les fichiers de la veille (qui eux sont bons).

 

Les fichiers créés ne sont pas ouvrables ni par excel ou autre outils et font planter ensuite mes workflow qui utilisent ces fichiers.

 

Ce qu'il faudrait donc est plutôt un test d'existence des fichiers avant le download tool par exemple ou un test avant d'enregistrer les fichiers afin de ne pas écraser les fichiers s'ils sont inutilisables.

 

Cordialement,

Psyrio

carlosteixeira
15 - Aurora
15 - Aurora

Comprendre.

Et si vous créez un répertoire spécifique pour télécharger / ne pas télécharger les fichiers dont vous avez besoin, et utilisez un flux pour déplacer / copier des fichiers vers différents répertoires.

 

Par exemple, créer un dossier ETAPÉ et TRAITÉ

Les nouveaux fichiers entreraient dans le dossier de l'étape, le cas échéant, et, en supposant qu'ils ont été téléchargés et traités, après la fin du flux de travail, vous déplacez les fichiers vers le dossier traité.

 

Si le fichier n'existe pas, le flux de travail ne s'exécutera pas et s'il s'exécute et donne une erreur, il ne met pas fin au flux de travail.

 

Si par hasard vous pensez que cette idée peut vous aider, j'ai un workflow qui effectue cette opération de transfert ou de copie de fichiers. Je peux partager avec vous.

 

J'essaie simplement de vous donner des idées pour résoudre votre problème.

Je suis désolé si ce n'est pas ce dont vous avez besoin.

salutations

Carlos A Teixeira
psyrio
Comète

C'est en effet une bonne piste je vous remercie.

 

Ça permettra de sauvegarder les bons fichiers s'il y a un soucis sur le téléchargement en attendant d'avoir une solution par rapport au download tool pour la verification des URLs avant l'enregistrement.

 

Je suis preneur de votre workflow s'il vous plaît ?

 

Cordialement,

Psyrio

carlosteixeira
15 - Aurora
15 - Aurora

@psyrio 

Heureux d'avoir aidé de quelque manière que ce soit.


Bien sûr, suivez le workflow et un lien avec un pas à pas (c'est en portugais mais je crois que si vous utilisez google translate vous pouvez comprendre ok?)

 

https://community.alteryx.com/t5/Blog-Portugues/Mover-Copiar-Deletar-ou-Renomear-arquivos-entre-dire...

 

Pour toute question, envoyez simplement un message ici.

salutations

Carlos A Teixeira
psyrio
Comète

@carlosteixeira 

Muito obrigado por a ajuda.

 

Je vais essayer cela dès lundi.

 

Je vous remercie et vous tiens au courant.

Bon weekend.

 

Cordialement,

Psyrio

StephaneP
Alteryx
Alteryx

Hello @psyrio ,

 

Quelques pistes je ne sais pas si tous pourra s'adapter

 

1. Tester la présence d'un fichier dans un répertoire (mais pas sur le web) : Fonction FileExists de l'outil Formula

Exemple ici: https://community.alteryx.com/t5/Forum-Francais/Tips-de-la-semaine-61-Comment-tester-la-presence-d-u...

 

2. Comme le préconise @carlosteixeira , passer par une étape intermédiaire qui enregistre les fichiers téléchargés dans un format Alteryx .yxdb ou .xlsx et rendre cette étape dépendante de la qualité du fichier téléchargé. Si il est vide je ne recopie pas, si il est ok, je recopie. Ainsi le workflow suivant partira toujours sur un fichier propre (la copie en .yxdb ou .xlsx) mais jamais sur le corrompu.

Pour faire ce test de fichier ok ou non je proposerai de tester la taille du fichier que l'on obtient via l'outil DIRECTORY, champs Size.

StephaneP_2-1603801140711.png

 

L'outil directory donne plein d'informations sur tous les fichiers d'un répertoire. J'imagine que si le fichier est vide il est nettement plus petit que d'habitude et donc on peut ainsi détecter l'anomalie.

StephaneP_1-1603801094225.png

 

J'espère que cela pourra t'aider.

 

Bye

 

 

Stéphane Portier
Sales Engineer
Alteryx
StephV
Alteryx Alumni (Retired)

Bonjour @psyrio,

 

 Merci beaucoup pour ta participation au forum et ta question ! As-tu pu essayer la solution de @carlosteixeira  ou les pistes de @StephaneP ?

 

Si ces réponses t'ont aidé, pourrais-tu les "Accepter comme solution", tu aideras ainsi d'autres utilisateurs Alteryx.

 

Merci beaucoup à toi et une très bonne soirée !​​​​​​​

En parlant de soirée, tu viens à la soirée User Group le 5 novembre 😎

Steph Vitale-Havreng
psyrio
Comète

Bonjour à tous,

 

@StephaneP : Merci pour cette solution. En effet le test des fichiers après téléchargement est une possibilité et Dir est une bonne solution pour cela. Cela se combine bien au contournement proposé par @carlosteixeira  avec cette étape intermédiaire.

 

J'ai mis en place ces contrôles mais cela me rajoute des workflows car on ne peut pas faire l'ensemble de ces éléments dans le même workflow à cause des différents INPUT mais ça répond à mon problème actuel.

 

Dommage par contre qu'il n'existe pas de solutions à partir de l'outil Download afin de tester la présence ou pas de fichiers à partir de l'URL car cela éviterai ces workflows supplémentaires.

 

Merci à vous deux pour votre aide.

 

Bonne journée.

 

Cordialement,

Psyrio

 

Étiquettes