Filtrer un tableau

Étiquetté : ,

  • Filtrer un tableau

    Posté par Mick sur 22 novembre 2023 à 17h04

    Bonjour à tous,

    Je cherche à faire une opération simple de filtrage d’un tableau.

    Ce dernier contient des dates et le numéro du jour.

    Je fais un filtre basique présent dans tous les tutos.

    J’ai essayé plein de formules item().day, item()?[‘day’] mais quoi que je fasse j’ai toujours un résultat vide.

    Il y a un truc qui cloche mais je trouve pas, pouvez-vous me l’indiquer svp ?

    Merci d’avance.

    PostID=EQAkcFCSNszGQxa

    Mick a répondu Il y a 7 mois, 1 semaine 3 Membres · 10 Réponses
  • 10 Réponses
  • DavidZed

    Membre
    22 novembre 2023 à 17h49

    Dans ton json, les ” ” autour de tes valeurs indiquent que la donnée est de type string (texte)

    donc dans ta condition de filtre, il faut mettre le résultat recherché entre ” : '1' sans quoi il ne va retourner que les lignes qui ont une valeur numérique 1

    CommentID=8MnAnBscKBhUwzQ, PostID=EQAkcFCSNszGQxa

    • Mick

      Membre
      22 novembre 2023 à 20h31

      Ha les fameux format de données !

      Ça a failli me rendre chèvre.

      Je regarde ça demain.

      Merci encore.

      Et bon weekend. 😉

      SubCommentID=3EqVIMc05IaREeE, CommentID=8MnAnBscKBhUwzQ, PostID=EQAkcFCSNszGQxa

  • Mick

    Membre
    23 novembre 2023 à 8h23

    Étrange,

    Je mets @equals(item()?,”1″) et il me fait disparaitre les “.

    Et lorsque je mets des ‘ l’enregistrement me mets une erreur. 🤔

    Lorsque je regarde les tutos ils n’y a pas de ” ou de ‘ autour des valeurs.

    Il doit y avoir un truc qui m’échappe.

    CommentID=kOoOuggQm1yRS6W, PostID=EQAkcFCSNszGQxa

    • R3dKap

      Membre
      23 novembre 2023 à 9h03

      Mick enlève les guillemets sur les 3 et 4 de ton tableau que tu essaies de filtrer :

      Et ensuite applique ton filtre comme tu le faisais avant :

      Ca devrait le faire puisque ça marche chez moi 😉

      SubCommentID=xUVeHvltU5O046V, CommentID=kOoOuggQm1yRS6W, PostID=EQAkcFCSNszGQxa

  • Mick

    Membre
    23 novembre 2023 à 9h19

    Yes !

    J’ai fait confiance à l’éditeur du selectionner qui m’a mis les ” ” automatiquement.

    Un petit édit pour changer ça et ça marche. Le piège du trop low code 😉

    Merci à vous et bon ppfs ce week-end.

    CommentID=EcNAambvkUzIV4t, PostID=EQAkcFCSNszGQxa

    • Mick

      Membre
      23 novembre 2023 à 10h12

      Par extension, le fait de faire plusieurs filtres ne fonctionne pas non plus.

      Sur les tutos, ils proposent cette syntaxe, “@and(equals(item()?[‘day’],0),equals(item()?[‘day’],6))”

      L’interpréteur ne me prends la ligne que si j’enlève l’@, et il n’y a pas de résultat.

      Pas toujours facile de trouver ce qui cloche.

      Merci encore.

      SubCommentID=fZcHLXnmmp6cqji, CommentID=EcNAambvkUzIV4t, PostID=EQAkcFCSNszGQxa

    • DavidZed

      Membre
      23 novembre 2023 à 12h01

      Dans ce cas ce sera un Or et non and And, car il ne peut pas te retourner de ligne dont la valeur de Day est à la fois égale à 0 et à 6

      SubCommentID=RIOw4CEuB4vgWKZ, CommentID=EcNAambvkUzIV4t, PostID=EQAkcFCSNszGQxa

  • Mick

    Membre
    23 novembre 2023 à 12h40

    😂

    Voilà ce que c’est de triturer les formules dans tous les sens et de ne pas se souvenir de ses cours de booléen. Ça commence à dater d’ailleurs.

    L’interpréteur a toujours raison.

    👍 Merci de votre aide c’est vraiment précieux.

    CommentID=MXM226ceIvokU2b, PostID=EQAkcFCSNszGQxa

  • Mick

    Membre
    20 décembre 2023 à 20h35

    Bonjour à tous,

    J’ai finalisé mes test et je souhaite intégrer mon flux dans un autre.

    Pour créer mon tableau je remplace la variable de type string, par utcnow().

    Mais lorsque je fais ça, mon filtre pquinme perm t d’exclure les samedi et dimanche (valeur day à 0 où 6 ) ne fonctionne plus.

    Je pense parce que c est une question de format. Mais après plusieurs essais de transformation des chaînes en int et tout le toutim rien n’y fait

    Auriez vous une explication à ce problème svp ?

    Merci d’avance.

    Mick

    • Mick

      Membre
      21 décembre 2023 à 11h57

      Ok finalement je me retrouve avec le cas vue précédemment, il faut lui ajouter les ‘ ’ sur la formule pour qu’il prenne en compte le format. On part d’un Integer dans le premier cas puisque le calcule se fait à partir d’une string.

      Et nous avons bien une “ ” autour de la valeur day lorsqu’on part de la variable utcnow().

      Il faut passer par l’éditeur, sinon, l’interpréteur nous jette :
      and(not(equals(item()?[‘day’],’0′)),not(equals(item()?[‘day’],’6′)))

      CQFD.
      Bonnes fêtes de fin d’année

      • Cette réponse a été modifiée Il y a 7 mois, 1 semaine par  Mick.

Connectez-vous pour répondre.