Forum Replies Created

Page 14 of 32
  • Geoffroy

    Member
    23 octobre 2023 at 6h50 en réponse à: La fonction Patch

    Bonjour Data_Speacker

    La formule serait plutôt du genre

    Patch (nom_de la source ; First(Filter(nom de la source ; nom de la ligne = ligne à modifier)) ; {colonne à modifier : valeur})

    CommentID=YnMt7R7MBQvrbiR, PostID=j73ThY6fAxG0hBh

  • Geoffroy

    Member
    21 octobre 2023 at 13h39 en réponse à: Changement d'environnement et partage d'application

    Bonjour Data_Speacker

    Première question: le changement d’environnement se fait par le biais d’une solution dans laquelle tu mets tes applis, tes flux, etc…. Tu exportes la solution d’un environnement (en mode managé ou non managé) et tu l’importes dans l’autre. Ca passe par des fichiers zip que tu enregistres sur ton PC.

    Deuxième question : est-ce que l’utilisateur en question as bien accès à l’environnement Test(bac à sable) ? Si ce n’est pas le cas, ça ne l’empêche pas d’ouvrir l’appli par le lien mais il ne la verra pas dans sa liste d’applis.

    CommentID=9F8okyWl7O52TQB, PostID=kOQXyBkpkjJW8K3

  • Geoffroy

    Member
    17 octobre 2023 at 16h38 en réponse à: Csv to excel et déplacement de fichier

    Bonjour Laurent CARRIERE

    J’ai eu un problème similaire de fichiers excel verrouillés. C’était pour OneDrive mais peut-être que ça peut t’aider.

    https://ppfc.fr/bdc/post/attendre-qu-un-fichier-excel-soit-libere-dans-onedrive-nAph0l0J6KIemOL

    CommentID=MRnavItFufSxKMR, PostID=SJPx7qk8ukB8QCC

  • Geoffroy

    Member
    14 octobre 2023 at 20h19 en réponse à: Construction d'un tableau de saisie

    Bonjour Data_Speacker

    Le copier-coller comme dans Excel, ce n’est pas possible dans PowerApps.

    Pour saisir des valeurs, il faut insérer des TextInput (Entrée de texte). Pour copier ces valeurs vers la source (une liste SharePoint par exemple), on utilise la fonction Patch.

    Si tu souhaites que l’écran ait un format particulier (comme dans un tableau excel), tu peux mettre d’abord une image reproduisant le tableau (comme ton exemple) et placer un TextInput par-dessus chaque case (il faudra régler l’emplacement et les dimensions).

    CommentID=b8MleNzvMLFklcU, PostID=bZdxFDY1FCciEJO

    • Geoffroy

      Member
      15 octobre 2023 at 13h45 en réponse à: Construction d'un tableau de saisie

      Malheureusement, je n’ai jamais utilisé sql-server. 😟

      J’espère que d’autres sauront t’apporter la réponse.

      SubCommentID=yJhvaoBAmnBLqoE, CommentID=b8MleNzvMLFklcU, PostID=bZdxFDY1FCciEJO

  • Bonjour Kandys

    Si ça marche dans l’objet mais pas dans le corps du mail, c’est peut-être une histoire de format du message. Est-ce que c’est du html ?

    CommentID=kOO20n60SSljCIu, PostID=11qIaAXieBb4PfK

  • Voici un flux qui répond entièrement à la question (enfin, j’espère 😉 )

    J’ai laissé tomber les variables varBAT1 et varBAT2 qui ne servent pas vraiment (sauf pour clarifier le raisonnement). J’ai ajouté une variable Statut qui servira à déterminer si on a trouvé ou non une ligne avec la date recherchée.

    Tout d’abord, on passe en revue les lignes jusqu’à arriver sur une ligne vide (théoriquement, si une ligne avec la date du jour existe déjà, ce sera la dernière). Je n’ai pas trouvé comment aller directement à la dernière ligne. Par défaut, la limite est à 60 mais on peut la mettre à 1 pour gagner du temps.

    Pour chaque ligne, on compare les 10 premiers caractères de la date du jour avec ceux de la colonne Date J-1 (car elles sont en format ISO9801 qui inclut l’heure). Si c’est égal, on met à jour la ligne et on passe le statut à OK.

    Sinon, on crée une nouvelle ligne avec les infos de BAT1 ou BAT2.

    Il y a sûrement une méthode plus élégante 😄

    CommentID=eJrOoKWcT3uJuDw, PostID=rejjtrcwiL7Yj7j

  • Pour déterminer la formule correcte pour extraire le nombre d’occupants dans les variables varBAT1 ou varBAT2, je te conseille de commencer par mettre d’abord que le corps du message dans la variable et de visualiser son contenu. Ca te donnera les indications pour paramétrer la fonction Split.

    CommentID=cb07NguJf7CsGPy, PostID=rejjtrcwiL7Yj7j

  • Bonjour ABru

    1. Le fichier excel doit contenir un tableau et être placé dans OneDrive

    2. La syntaxe du mail déterminera comment le flux va trouver les infos utiles (date, nombre d’occupants du BAT1, nombre d’occupants du BAT2)

    Dans mon exemple, le mail a pour objet Occupants BAT1 ou Occupants BAT2.

    Le corps du mail est simplement Occupants : X

    Voici le flux global

    Et le détail

    Il faudra bien sûr adapter cet exemple à ta situation.

    Attention, c’est un premier jet. Pour l’instant, ce flux crée une nouvelle ligne à chaque fois. il ne répond pas encore à ton souhait de remplir une ligne existante.

    CommentID=ESHSh92supfg881, PostID=rejjtrcwiL7Yj7j

  • Geoffroy

    Member
    3 octobre 2023 at 19h41 en réponse à: Soumettre un formulaire que si la PJ est en format pdf

    Merci DavidZed ça marche impeccable avec DataCardValue_PJ.Attachments.Name 😊

    CommentID=ePKYP3ZmzZTi1aj, PostID=MxQEgnE4hpw2bPD

  • Geoffroy

    Member
    29 septembre 2023 at 13h47 en réponse à: Contrôle de champs "texte" pour plaque d'immatriculation

    “Deux choses sont infinies : l’Univers et le nombre de façons de remplir un champ texte. Mais, en ce qui concerne l’Univers, je n’en ai pas encore acquis la certitude absolue.”

    Albert E.

    CommentID=h483eKSMhQKHTUt, PostID=erpIzqrXOw59kfW

  • Geoffroy

    Member
    29 septembre 2023 at 13h20 en réponse à: Contrôle de champs "texte" pour plaque d'immatriculation

    Une autre option serait d’imposer une saisie sous la forme ab123cd et de faire le formatage après (mise en majuscule et traits d’union). Ca suppose de limiter le nombre de caractères à 7 dans le TextInput.

    Si tu n’es pas sûr que l’utilisateur va respecter ce format (2 lettres, 3 chiffres, 2 lettres), il faudra vérifier pour chaque caractère s’il répond au masque demandé et par exemple mettre le fond du TextInput en rouge si ce n’est pas bon.

    CommentID=Mhd8KDY1ArSpayt, PostID=erpIzqrXOw59kfW

    • Geoffroy

      Member
      29 septembre 2023 at 15h37 en réponse à: Contrôle de champs "texte" pour plaque d'immatriculation

      En fait, on peut simplifier le Fill en passant d’abord tout en majuscules dans les formules nommées

      nfPlaque1=With({inputString:Upper(Mid(plaque.Text;1;1))};LookUp(ForAll(Sequence(255);{Num:Value;Character:Char(Value)});Character=inputString).Num);;

      If(nfPlaque1>=65&&nfPlaque1<=90&&nfPlaque2>=65&&nfPlaque2<=90&&nfPlaque3>=48&&nfPlaque3<=57&&nfPlaque4>=48&&nfPlaque4<=57&&nfPlaque5>=48&&nfPlaque5<=57&&nfPlaque6>=65&&nfPlaque6<=90&&nfPlaque7>=65&&nfPlaque7<=90&&Len(plaque.Text)=7;RGBA(0;0;0;0);Color.Red)

      SubCommentID=QQres3USsd46oFC, CommentID=Mhd8KDY1ArSpayt, PostID=erpIzqrXOw59kfW

    • Geoffroy

      Member
      29 septembre 2023 at 14h39 en réponse à: Contrôle de champs "texte" pour plaque d'immatriculation

      J’ai testé une solution avec des formules nommées (mon TextInput s’appelle plaque)

      nfPlaque1=With({inputString:Mid(plaque.Text;1;1)};LookUp(ForAll(Sequence(255);{Num:Value;Character:Char(Value)});Character=inputString).Num);;nnfPlaque2=With({inputString:Mid(plaque.Text;2;1)};LookUp(ForAll(Sequence(255);{Num:Value;Character:Char(Value)});Character=inputString).Num);;

      Idem pour nfPlaque3 jusqu’à nfPlaque7

      Ensuite, dans le Fill du TextInput, je mets ça

      If(((nfPlaque1>=97&&nfPlaque1<=122)||(nfPlaque1>=65&&nfPlaque1<=90))&&((nfPlaque2>=97&&nfPlaque2<=122)||(nfPlaque2>=65&&nfPlaque2<=90))&&((nfPlaque3>=48&&nfPlaque3<=57))&&((nfPlaque4>=48&&nfPlaque4<=57))&&((nfPlaque5>=48&&nfPlaque5<=57))&&((nfPlaque6>=97&&nfPlaque6<=122)||(nfPlaque6>=65&&nfPlaque6<=90))&&((nfPlaque7>=97&&nfPlaque7<=122)||(nfPlaque7>=65&&nfPlaque7<=90))&&Len(plaque.Text)=7;RGBA(0;0;0;0);Color.Red)

      SubCommentID=Cjh269503hSZSmC, CommentID=Mhd8KDY1ArSpayt, PostID=erpIzqrXOw59kfW

Page 14 of 32