Récupérer le contenu d’un fichier texte avec Power Apps

  • Récupérer le contenu d’un fichier texte avec Power Apps

    Posté par Guillaume sur 5 août 2024 à 12h13

    Bonjour à tous,

    Après plusieurs recherches je sèche un peu et j’aimerais solliciter votre aide. Mon besoin est le suivant : j’aimerais faire un app et un flux Power Auto pour aboutir au fonctionnement suivant :

    • L’utilisateur ouvre Power Apps. Dans cette app, il a la possibilité de charger un fichier (texte dans mon cas) depuis son ordinateur
    • Ensuite il valide (je sais pas comment, avec un bouton ou autre)
    • Le flux Power Automate se déclenche avec la validation de l’utilisateur dans Power Apps
    • La première chose que fait le flux c’est de stocker le contenu du fichier texte dans une variable ou autre
    • Et ensuite un script vient traiter le contenu et le mettre dans un excel

    J’ai déjà fait des tests sur la partie “avoir une variable, la traiter en script et alimenter en excel” et ça je pense que je vais m’en sortir

    Par contre je ne vois pas du tout comment démarrer mon app et mon flux poer automate pour arriver à choisir un fichier texte dans l’app pour ensuite récupérer son contenu dans Power Auto

    Auriez-vous des idées pour m’aider ?

    Merci par avance et bonne journée

    Guillaume

    Guillaume a répondu Il y a 1 mois, 2 semaines 3 Membres · 9 Réponses
  • 9 Réponses
  • Matth

    Membre
    5 août 2024 à 13h17

    Bonjour Guillaume,

    As tu regarder le composant “Importer” ? Il pourras t’aider à mettre en place dans l’application le fait de sélectionner un fichier ?
    Les données pourrais être en variable d’entrée du flux appelé manuellement via un bouton de validation dans l’app.

    Bonne journée,
    Matthieu

  • Brice

    Membre
    5 août 2024 à 13h34

    Bonjour Guillaume,

    Ton problème a plusieurs solutions.

    La plus “simple” serait de faire en sorte que ton fichier excel contienne un tableau. Ce tableau te servirait de base de données dans PowerApps que tu pourrait alimenter en créant un formulaire.

    De cette façon tu peux incrémenter directement ton tableau, sans avoir à passer par une liste et un flux Power Automate.

    A+

  • Guillaume

    Membre
    5 août 2024 à 14h27

    Bonjour Matth,

    Merci pour ton retour, en effet le contrôle “Importer” permet de naviguer dans les dossiers de l’ordinateur c’est déjà super.

    Après je n’arrive pas à voir comment faire les deux choses suivantes :

    • Lancer mon flux
    • Envoyer les données de mon fichier importé à mon flux

    En cherchant, j’ai cru comprendre que dans la prorpiété OnSelect du bouton de lancement on pourrait écrire le code “monFlux.Run()” pour lancer le flux mais ça ne fonctionne pas du tout car “monFlux” n’est jamais reconnu :

    Du coup je bloque un peu

    Merci d’avance pour ton aide

  • Guillaume

    Membre
    5 août 2024 à 14h27

    Bonjour Matth,

    Merci pour ton retour, en effet le contrôle “Importer” permet de naviguer dans les dossiers de l’ordinateur c’est déjà super.

    Après je n’arrive pas à voir comment faire les deux choses suivantes :

    • Lancer mon flux
    • Envoyer les données de mon fichier importé à mon flux

    En cherchant, j’ai cru comprendre que dans la prorpiété OnSelect du bouton de lancement on pourrait écrire le code “monFlux.Run()” pour lancer le flux mais ça ne fonctionne pas du tout car “monFlux” n’est jamais reconnu :

    Du coup je bloque un peu

    Merci d’avance pour ton aide

  • Guillaume

    Membre
    5 août 2024 à 14h34

    Bonjour Brice,

    Merci également pour ton retour. En fait mon but derrière c’est de vraiment manipuler le fichier texte et produire un résultat dans un onglet. Du coup avant d’alimenter l’onglet final j’aimerais éviter de passer par l’excel et le tableau que tu proposes

    Aurais-tu d’autres solutions en tête pour :

    • Sélectionner le fichier dans Power Apps
    • Déclencher mon flux depuis Power Apps tout en passant (d’un manière que j’ignore) le contenu de mon fichier à mon flux

    Merci par avance pour ton temps

    Guillaume

  • Matth

    Membre
    5 août 2024 à 14h55

    Il est nécesssaire d’ajouter dans ton application le flux que tu souhaites lancé, tu peux l’ajouter en cliquant sur l’icone power automate dans le bandeau de gauche, puis Ajouter un flux

    Il sera alors connu dans ton application et effectivement tu pourra l’appelé en faisant ‘NOM’.Run( avec passage de paramètre)

    Ton flux toi est un flux instantanée avec un déclencheur Power Apps v2, tu peux utiliser également une action Répondre à une instance Power Apps en fin de flux pour renvoyer des variables et information comme les messages d’erreur ou autre.

    Bonne journée,
    Matthieu

  • Guillaume

    Membre
    5 août 2024 à 18h33

    Re bonjour Matth,

    Merci beaucoup pour ta réponse, en effet j’ai réussi à ajouter le flux dans mon appli grâce à ta méthode et donc j’arrive à l’utiliser dans la formule de mon OnSelect.

    Je me heurte désormais à la syntaxe et à la manière de passer le contenu de fichier en paramètre :

    Quoi que je mette (virgule, point virgule, rien) j’ai toujours une erreur sur ce que je met à la fin du “Set”.

    Et je ne sais pas non plus si la manière de faire “Import1.Data” (Import1 étant le nom de mon contrôle d’import) est la bonne

    Merci beaucoup

    Guillaume

  • Matth

    Membre
    6 août 2024 à 13h28

    J’utilise cette synthaxe :

    <pre class=”language-cpp”>Set(Param1;...);;
    Set(Param2;...);;
    ....
    Set(aFlowResult; 'MONFLUX'.Run(Param1; Param2));;
    If(!IsBlank(aFlowResult.error)
    ...
    )

    Il ne s’agit surement pas de la meilleur manière mais elle fonctionne bien.

    Ici un exemple en passant deux paramètre au flux et ce dernier retourne une variable “error”.

    Bonne journée,
    Matthieu

    • Cette réponse a été modifiée Il y a 1 mois, 2 semaines par  Matth.
    • Cette réponse a été modifiée Il y a 1 mois, 2 semaines par  Matth.
  • Guillaume

    Membre
    6 août 2024 à 15h33

    Re bonjour Matth et encore merci pour ton aide,

    Du coup avec notre discussion et ce que j’ai pu glaner sur les forums, j’ai réussi à faire ce que je voulais avec cette formule dans la propriété OnSelect de mon bouton de lancement :

    où :

    • “testAppel” est mon flux Power Automate
    • “FileUpload” est un simple contrôle de choix de fichier que j’ai créé en faisant un formulaire :

    Merci pour vos réponses et bonne journée à tous,

    Guillaume

Connectez-vous pour répondre.