Filtrer affichage dans datagridview

poupou61 Messages postés 61 Date d'inscription vendredi 17 février 2012 Statut Membre Dernière intervention 18 janvier 2013 - 13 févr. 2012 à 16:25
NHenry Messages postés 15049 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 25 mars 2023 - 14 févr. 2012 à 13:40
Bonjour,

J'ai un datagridview qui affiche les données sur les commandes, et j'aimerais pouvoir "filtrer" l'affichage de ces données dans le datagridview grâce à une combobox contenant les raisons sociales des fournisseurs. et donc quand je sélectionne un fournisseur das ma combobox qu'il n'y ai que les commandes de ce fournisseur qui s'affichent dans le datagridview.

Pour l'instant, ma requête SQL pour afficher tout les fournisseurs c'est :

SELECT Contenir_Commande.NumCommande, Contenir_Commande.NumProduit, Contenir_Commande.QuantiteCommander, Commande.DateCommmande, Fournisseur.RaisonSocialeFour 
FROM ((Contenir_Commande INNER JOIN 
Commande ON Contenir_Commande.NumCommande = Commande.NumCommande) INNER JOIN 
Fournisseur ON Commande.Numfournisseur = Fournisseur.NumFour)


Et donc je suppose qu'il faut faire un truc du genre : "WHERE RaisonSocialeFour = ..." et que le "..." il faut le replacer dans le code et faire quelque chose avec ?

Petite contrainte supplémentaire, j'ai des boutons radio qui me sélectionnent les années des commandes. donc j'ai un bouton radio "2010" par exemple et la il n'y a que les commandes passées en 2010 qui s'afficheront, sa fonctionne très bien sa, mais j'ai peur que la combo et les boutons radio ensemble sa ne marche pas. Je me trompe ou pas ??

Ma requête et le code pour les boutons Radio :

SELECT        Contenir_Commande.NumCommande, Contenir_Commande.NumProduit, Contenir_Commande.QuantiteCommander, Commande.DateCommmande, 
                         Fournisseur.RaisonSocialeFour
FROM            ((Contenir_Commande INNER JOIN
                         Commande ON Contenir_Commande.NumCommande = Commande.NumCommande) INNER JOIN
                         Fournisseur ON Commande.Numfournisseur = Fournisseur.NumFour)
WHERE        (Commande.DateCommmande BETWEEN #1/1/2010# AND #12/31/2010#)


Mon Code pour le bouton radio 2010

Private Sub RdBtn2010_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RdBtn2010.CheckedChanged
        Contenir_CommandeTableAdapter1.FillBy2010(MonDataSet1.Contenir_Commande)
        DGVCde.DataSource = MonDataSet1.Contenir_Commande
    End Sub


Je bosse avec un dataset (je sais pas si sa change quelque chose, mais bon...

Désolé c'est un peu long.

Merci d'avance

3 réponses

NHenry Messages postés 15049 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 25 mars 2023 156
13 févr. 2012 à 19:24
Bonjour,

Pourquoi les 2 ensemble ne fonctionneraient pas ?
Recherche les opérateurs booléens OR et AND.

Ensuite, si c'est un Id, c'est du numérique, donc, l'ID du fournisseur recherche.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
poupou61 Messages postés 61 Date d'inscription vendredi 17 février 2012 Statut Membre Dernière intervention 18 janvier 2013 1
14 févr. 2012 à 11:04
Désolé mais est ce que tu pourrais développer un petit peu stp ou faire un exemple, parce que la j'avoue que j'ai pas trop compris.
0
NHenry Messages postés 15049 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 25 mars 2023 156
14 févr. 2012 à 13:40
Bonjour,

SELECT ... FROM ... WHERE Condition1 AND Condition2 OR Condition3
Par exemple.
Tu peux ajouter des parenthèses pour prioriser les opérations.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
Rejoignez-nous