Collection et liste déroulante

Étiquetté : 

  • Collection et liste déroulante

    Posté par Laurent sur 2 août 2023 à 16h31

    Bonjour,

    J’ai une gallery avec un ensemble d’élément. L’idée est d’alimenter une collection pour utiliser ailleurs. Pour les champs Texte, aucun soucis, par contre pour les champs liste déroulante ça ne récupère pas les données

    Extrait ci-dessous.

    Pour ‘Le_Local’ aucun soucis, c’est un champ texte, par contre ‘Déchets Amiantés’ c’est une liste de choix et ne me renvoie rien. J’ai essayé en ajoutant derrière ‘.value’ mais ça ne marche pas non plus.

    Il doit y avoir une subtilité que je ne perçois pas. Quelqu’un aurait une idée?

    D’avance merci

    Cdt

    Laurent.

    ForAll(Gallery1.AllItems; Collect(RAPPORT;{Le_Local:Local;R_Amiante:'Déchets Amiantés'}))nn

    PostID=KhDwihQsv1jjewv

    Laurent a répondu Il y a 4 mois, 2 semaines 1 Membre · 4 Réponses
  • 4 Réponses
  • DavidZed

    Membre
    2 août 2023 à 17h32

    Bonjour Laurent ,

    Dans le contexte d’un ForAll, il faut appeler les valeurs de l’enregistrement courant avec le préfixe ThisRecord :

    ForAll(Gallery1.AllItems;nCollect(RAPPORT;n{Le_Local: ThisRecord.Local;nR_Amiante: ThisRecord.'Déchets Amiantés'.Value }))

    Il est possible de nommer avec As, très pratique pour rappeler le bon contexte :

    ForAll(Gallery1.AllItems As CetObjet;nCollect(RAPPORT;n{Le_Local: CetObjet.Local;nR_Amiante: CetObjet.'Déchets Amiantés'.Value }))

    CommentID=v0nxyLYhS8A77T7, PostID=KhDwihQsv1jjewv

    • Laurent

      Membre
      3 août 2023 à 5h43

      Merci David 🙏

      C’est beaucoup mieux ainsi 🙏

      Je me permets d’ajouter, peut-être que tu as une idée. Pour expliquer le principe de base, j’ai des audits de site avec une liste SPO et une ligne par local. Sur chaque ligne, on peut avoir une ou plusieurs pièces jointes (photos). J’édite un fichier HTML puis via PowerAutomate un PDF.

      J’ai réussi à aller jusque là, mais je voulais savoir s’il était possible d’ajouter ces photos dans cet export. Sur la partie HTML, j’ai besoin de pouvoir récupérer l’adresse de chaque image (après voir comment ça s’intègre dans le PDF mais une chose à la fois 🙂 ). Je pense que ça doit être possible mais j’avoue que je suis un peu perdu :/

      Car dans le Collect, j’ai bien accès aux champs ‘Pièces jointes’, mais je ne sais pas comment l’exploiter.

      Si tu as une idée, je suis preneur.

      Merci

      Laurent

      SubCommentID=4R9FJT7HcndSwx4, CommentID=v0nxyLYhS8A77T7, PostID=KhDwihQsv1jjewv

    • DavidZed

      Membre
      3 août 2023 à 16h40

      Le paramètre à prendre en compte, c’est que les pièces jointes est un champ multivalué, qui retourne donc une table.

      Tu peux obtenir l’image avec le paramètre .Value :

      Ou l’url avec le paramètre .AbsoluteUri

      SubCommentID=fQZ5cSFT1eh2YAF, CommentID=v0nxyLYhS8A77T7, PostID=KhDwihQsv1jjewv

    • Laurent

      Membre
      8 août 2023 à 13h18

      Bonjour David,

      Désolé je viens juste de voir ta réponse. Merci pour ton aide. J’arrive effectivement à récupérer la première photo, mais j’ai justement besoin de récupérer les différentes URL de chaque pièce.

      En gros, le début du code est le suivant :

      Clear(RAPPORT);; ForAll(Gallery1.AllItems;Collect(RAPPORT;{Le_Local:ThisRecord.Local;nc_Amiante:ThisRecord.Com_DecehtsAmiante; (...)

      Du coup je pensais rajouter quelque chose comme :

      ForAll(ThisRecord.'Pièces jointes'; Collect(PJ;{URL_PJ:ThisRecord.AbsoluteUri}) 

      Mais évidemment ça ne marche pas car il doit y avoir des erreurs de syntaxe et pas sûr qu’on puisse faire une boucle dans une boucle :/

      SubCommentID=MPTM5hNe4uEvnQi, CommentID=v0nxyLYhS8A77T7, PostID=KhDwihQsv1jjewv

Connectez-vous pour répondre.