Répétition de ligne de tables dans une galerie

Étiquetté : , ,

  • Répétition de ligne de tables dans une galerie

    Posté par Jespercito sur 20 juillet 2022 à 11h33

    Bonjour

    Je travaille sur une appli ou les utilisateurs doivent remplir des champs et les données sont stockées dans une liste sharepoint.

    J’ai pris une galerie verticale vierge sur laquelle j’intègre les champs un à un. Il se trouve que les lignes de champs de la table se répètent automatiquement. Pourquoi et comment l’éviter? J’aimerais avoir une seule ligne par défaut que l’utilisateur va remplir. Et s’il doit compléter plus d’info, il va cliquer sur le bouton nouvelle ligne et cette dernière devrait s’ajouter à l’identique comme la 1ere pour être complétée.

    Merci pour les retours pour savoir comment enlever cette répétition automatique de lignes de table dans la galerie.

    PostID=mFzkcAXkA4k0S8s

    R3dKap a répondu Il y a 11 mois, 4 semaines 1 Membre · 5 Réponses
  • 5 Réponses
  • Quentin

    Membre
    20 juillet 2022 à 12h54

    Bonjour Jespère,

    Si tu veux créer un tableau avec des lignes dynamiques comme ça, tu vas devoir gérer le tout avec des collections, ce sera plus simple pour te retrouver.

    Ce que je te propose :
    1. Créer une collection avec un objet contenant Email, Date de déclaration, Mois travaillé, N°Affaire et Nbre de jours en production

    2. Dans les items de ta galerie verticale, tu mets ta collection

    3. Tu ajoutes dans ton item de galerie les différents inputs avec dedans les valeurs des objets de la collection

    4. Dans les OnChange de ces inputs, tu fais un patch de l’item (Parent) dans ta collection avec la nouvelle valeur

    5. Au OnSelect de ton bouton “Add new line”, ajouter un objet avec les champs vides dans ta collection, ce qui va avoir pour conséquence d’ajouter une ligne dans ta galerie

    6. Au OnSelect de ton bouton “Enregistrer”, faire un ForAll sur la collection et patcher les données dans ta source de données (ici liste SHP)

    A noter qu’à l’initialisation de ta collection il faudra que tu récupère les données déjà existantes dans ta source si tu veux les afficher dans le tableau.
    De ce fait, tu vas avoir une collection, toujours à jour, contenant tous les items de ton tableau ! Tu vas également pouvoir gérer les suppressions, par exemple en ajoutant un bouton de suppression sur ta ligne, qui va supprimer l’objet dans ta collection.

    En espérant t’avoir éclairé et avoir bien cerné ta problématique 🙂

    CommentID=q6vsxkAPidZ4v4C, PostID=mFzkcAXkA4k0S8s

    • Jespercito

      Membre
      20 juillet 2022 à 16h24

      Merci Quentin. Je vais regarder ça et essayer de le faire et je te tiens au jus demain.

      SubCommentID=kVBZilLQQg6x0F6, CommentID=q6vsxkAPidZ4v4C, PostID=mFzkcAXkA4k0S8s

    • Quentin

      Membre
      20 juillet 2022 à 17h01

      Mais de rien, n’hésite pas si besoin !

      SubCommentID=a5gkqAdiYD0OkPi, CommentID=q6vsxkAPidZ4v4C, PostID=mFzkcAXkA4k0S8s

    • Jespercito

      Membre
      25 juillet 2022 à 10h14

      Bonjour Quentin,

      Merci pour l’aide. Les autres tables sont construites, mais il y a un problème avec le “Patch” vers la liste sharepoint. Aussi, le contrôle des données enregistrées par l’utilisateur avec une autre liste pour vérifier si elles sont correctes avant l’enregistrement des collections.

      SubCommentID=MAILNuJ6SQDH17t, CommentID=q6vsxkAPidZ4v4C, PostID=mFzkcAXkA4k0S8s

  • R3dKap

    Membre
    26 juillet 2022 à 21h36

    Jespercito voici mon avis…

    Tu es en train d’essayer de reproduire Excel dans Power Apps. Ce dernier n’est pas vraiment prévu pour ça. Ce que tu veux faire n’est pas impossible à faire mais ce n’es pas “l’esprit” et la logique habituelle des applications que l’on voit dans Power Apps.

    En règle général dans les applications Power Apps, tu as une galerie qui liste les données avec de simples libellés. Puis en cliquant sur une ligne de la galerie tu arrives sur un autre écran pour modifier les données via un contrôle formulaire (qui est très pratique pour ça). Et comme tu l’as prévu toi, au-dessus de la galerie tu as un bouton pour ajouter un nouvel élément à la galerie : celui-ci t’amène (moi c’est que je préfère pour limiter le nombre d’écrans dans l’app) sur le même écran que pour la modif sauf que le formulaire est en mode création.

    Maintenant, si ça t’embête de basculer sur un autre écran pour créer une nouvelle ligne (ou pour modifier les données d’une ligne existante), tu peux plutôt mettre en place une “popup” avec à l’intérieur le contrôle formulaire, tout ça sur le même écran -> mais du coup il est plus complexe à gérer et à maintenir… 😊

    Encore une fois, faire ce que tu décris est faisable mais un poil compliqué. Il va te falloir travailler uniquement avec une collection sur ta galerie et gérer proprement l’ajout de nouvelle ligne (avec un Collect()) ou la mise à jour de lignes existantes (avec un Patch() ou un UpdateIf()).

    A toi de voir ce que tu préfères… 😉

    CommentID=9kD5LwTu2s7nq9L, PostID=mFzkcAXkA4k0S8s

Connectez-vous pour répondre.