Power Apps – Ajouter le contenu de 2 listes dans une seule à la création d'une nouvelle ligne

  • Power Apps – Ajouter le contenu de 2 listes dans une seule à la création d'une nouvelle ligne

    Posté par Berthoud Joé-Louis sur 7 février 2023 à 14h36

    Bonjour,

    Je suis en train de travailler sur une application de contrôle d’équipement de camion via SharePoint et Powerapps mais je n’arrive pas à trouver comment faire…

    J’aimerai que lorsque je créé un nouveau camion dans la “Liste test camion” via un nouveau formulaire sur Powerapps, le contenu de la “Liste test outil” se duplique dans la “Liste test globale” avec la plaque d’immatriculation du camion que je viens de créer.

    Je ne sais pas si c’est très clair…

    Merci pour vos réponses et votre aide !

    Joé

    PostID=3kPwGk9l5tuNuhj

    Berthoud Joé-Louis a répondu Il y a 9 mois, 1 semaine 1 Membre · 3 Réponses
  • 3 Réponses
  • DavidZed

    Membre
    7 février 2023 à 17h16

    Hello Berthoud Joé-Louis ,

    Attention a bien poster les questions dans la section correspondante, ici “Power Apps”. La base de connaissance est destinée à partager des connaissances, trucs et astuces etc…

    Pour en revenir à ton problème :

    S’il te faut simplement afficher la liste au format texte “en dur”, tu peux mettre dans le OnSuccess de ton formulaire :

    If(Self.Mode=FormMode.New, //si le formulaire est pour la création d'un nouveau camionnPatch('Liste test globale', Defaults('Liste test globale'),n{'Plaque Camion':Self.LastSubmit.'Plaque d'immatriculation', // on récupère l'immatriculation envoyée via le formulairenDescription trousse' : Concat('Liste Test outil','Descriptif outil'&" : "& Quantité & "n") // on concatène une liste des outils au format texten}n)n)

    Tu peux également embelir le tout avec le format html :

    Exemple : Concat('Sample List',Title &" : "& Number & "n")

    donne en texte brut :

    Lorem * : 25
    Ipsum : 17
    Dolor : 27
    Sit : 12
    Amet : 35
    Consecutor : 23
    Drecuasers : 56
    Rolmunaris : 14
    Sin Pecador : 144
    cansuilis : 4
    Veritas : 15
    Nouveau : 32

    Tandis que :

    "<table border='1' width='100%'>" &n"<thead><tr><th>Outil</th><th>Qt</th></thead>" &n"<tbody>" &nConcat('Sample List', "<tr><td>" & Title & "</td><td>" & Number & "</td></tr>") &n"</tbody></table>"

    Donnera un tableau html dans un objet htmlText ou envoyé par email :

    CommentID=HKcZTPgFgqzkS1m, PostID=3kPwGk9l5tuNuhj

  • DavidZed

    Membre
    7 février 2023 à 17h35

    Après, si tu souhaites contrôler le stock de tes outils par camion, ce modèle de données ne sera pas des plus pratiques.

    L’idéal pour ta liste test global serait :

    1. de la renommer “Inventaire”

    2. d’ajouter une colonne recherche vers la liste “Camions” nommée Camion

    3. d’ajouter une colonne recherche vers la liste “Outils” nommée Outil

    4. et enfin d’ajouter deux colonnes nombre : “Quantité initiale” et “Quantité actuelle”

    Pour voir l’inventaire d’un camion, il suffira de filtrer une galerie sur le nom de ce dernier. Il serait aussi possible de faire une vue en filtrant sur un outil, par exemple pour voir la quantité de tournevis dans chaque camion.

    Il serait également possible de générer automatiquement une trousse à outils à la création d’un nouveau camion avec la fonction :

    If(Self.Mode=FormMode.New,nForAll('Liste Outils',nPatch('Inventaire',Defaults('Inventaire'),n{Camion:{Value : Self.LastSubmit.Title Id:Self.LastSubmit.ID},nOutil:{Value:ThisItem.Title, Id:ThisItem.ID},n'Quantité initiale':ThisItem.'Quantité',nQuantité actuelle:ThisItem.'Quantité'})n)n)

    CommentID=r2ItMwfkWTnIHDb, PostID=3kPwGk9l5tuNuhj

  • Berthoud Joé-Louis

    Membre
    9 février 2023 à 15h39

    Merci pour votre réponse !

    Désolé de n’avoir pas mis la requête au bon endroit…

    Je pense que la dernière solution serait bien pour ce que j’ai en tête. Je vais essayer ça !

    Encore merci pour votre aide !

    CommentID=ZVkHhp0bh3Dkf08, PostID=3kPwGk9l5tuNuhj

Connectez-vous pour répondre.