Colonne et Combobox

Étiquetté : ,

  • Colonne et Combobox

    Posté par ChezWam sur 14 mars 2022 à 15h54

    Bonjour,

    J’ai une application avec des listes Sharepoint. Le format de l’une de ces listes est vrai ou faux.

    Je veux filtrer une datatable avec un combobox ou dropdown , pour lequel je mets Items :[“”;”True”;”False”].

    Quoi que je fasse je n’arrive pas à comparer les valeurs de la colonne concernée avec les valeurs de la combobox ou dropdown.

    Filter(‘Table’;

    ColonneConcernee = Combobox.selected.value

    )

    Avez-vous une idée de comment faire cette comparaison ?

    Merci

    PostID=PXfttHXEcyodEtg

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

    Membre
    14 mars 2022 à 21h04

    @ChezWam tout d’abord une petite remarque sur le “wording” utilisé dans ton post (oui je suis plutôt perfectionniste là-dessus 😅) : “Le format de l’une des listes est vrai ou faux“. Tu voulais probablement dire : “Le format de l’une des colonnes de cette liste est vrai ou faux.“. 😉

    Ensuite, quel est le véritable type de colonne que tu as créé ? Une colonne de type Oui/Non ou une colonne de type Choix avec les valeurs “True” et “False” ?

    Parce-que du coup en fonction de ça ce ne sera pas la même solution pour filtrer ta datatable…

    Ceci étant dit, si ta colonne est de type Oui/Non (ce que je suppose), alors il te faut modifier le Items de ta combo box pour y mettre :

    Table({Text: "True"; Value: true}; {Text: "False"; Value: false})

    Quant à la valeur à blanc, si tu utilises une combo box (et pas une dropdown) l’utilisateur pourra choisir de ne pas choisir de valeur. Sinon, avec la dropdown y’a aussi moyen si tu positionnes sa propriété AllowEmptySelection à true mais je préfère bosser avec la combo box en général.

    Assure-toi aussi :

    • de désactiver la sélection multiple sur ta combo box

    • de positionner le DisplayFields de ta combo box à “Text” (pour afficher le libellé lorsque tu ouvriras la combo box pour choisir une valeur)

    Ensuite, ton filter tel que tu l’as écrit devrait fonctionner… Sinon n’hésite pas à revenir ici pour qu’on voie ce qui ne va pas…

    CommentID=c7dNGdSfMSWJcAQ, PostID=PXfttHXEcyodEtg

  • ChezWam

    Membre
    15 mars 2022 à 8h20

    @R3dKap Bonjour et merci pour ta réponse et pour le temps que tu y consacres. Autant pour moi sur la formulation en me relisant ce matin je reconnais que ce n’est pas propre 🙂

    En effet ma colonne est bien une Oui/Non. J’ai configuré mon combobox comme tu la proposé et ajouté avec le filtre suivant dans l’Items de la Datatable :

    Filter( 'Table';
     'ColonneConcernee' = ComboBox.Selected.Value
     )

    Lors de la sélection True ou False cela fonctionne, par contre lorsque le combobox est vide la datatable n’affiche pas de résultat. De ce fait j’ai tenté un filtre comme cela :

    Filter( 'Table ';
    IsBlank(ComboBox.Selected.Value) ||
     IsEmpty(ComboBox.Selected.Value)||
    'ColonneConcernee' = ComboBox.Selected.Value
    )

    Lorsque le combobox est à vide cela fonctionne par contre si je choisis True ou False les résultats affichés dans la datatable sont identiques et ne correspondent à pas à l’attendu. J’avoue ne pas comprendre ce qui pose problème.

    CommentID=rIYIVmgRWSMc8JQ, PostID=PXfttHXEcyodEtg

  • R3dKap

    Membre
    15 mars 2022 à 9h22

    Essaie ça :

    Filter(n    'Table';n    IsBlank(ComboBox.Selected) ||n    'ColonneConcernee' = ComboBox.Selected.Valuen)

    Dis-nous si c’est bon…

    CommentID=iDqLBtpWUv0GAec, PostID=PXfttHXEcyodEtg

  • ChezWam

    Membre
    15 mars 2022 à 13h05

    Avec IsBlank sans IsEmpty: Combobox vide le résultat est ok dans la dataTable, True et False ont le même résultat qui correspond à False.

    Avec IsEmpty sans IsBlank : Combobox vide pas de résultat dans la dataTable, True et False ont le même résultat qui correspond à False.

    J’ai également essayé avec ou sans “.Value” rien n’y fait. Dans un champ texte j’affiche la valeur du combobox et celle-ci est cohérente avec l’attendu.

    J’ai mis un countRows sur la table il est égal à 9. Un CountiF = true (2) et un Countif = False (7). Meme résultat quand je filtre directement depuis Sharepoint.

    Je ne comprend pas pourquoi lorsque je sélectionne True le résultat qui s’affiche est identique à False. Dans la dataTable 7 lignes sont affichées à chaque fois.

    J’ai essayé avec une nouvelle colonne True/False, toutes les réponses à False, même constat lorsque je sélectionne True logiquement il ne devrait rien afficher pourtant les réponses présentes dans la dataTable sont identiques aux réponses lorsque je sélectionne False.

    CommentID=NLgHGudte4fO1wf, PostID=PXfttHXEcyodEtg

  • R3dKap

    Membre
    16 mars 2022 à 12h32

    Là il faut qu’on se fasse une p’tite visio Teams passke sinon on va y passer trop de temps. Contacte-moi sur LinkedIn

    CommentID=obrdJz9gbQvhuGe, PostID=PXfttHXEcyodEtg

Connectez-vous pour répondre.