IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bases de données Delphi Discussion :

comment filtrer une table avec deux criteres càd 2 colonnes


Sujet :

Bases de données Delphi

  1. #1
    Candidat au Club
    Inscrit en
    Juillet 2003
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 4
    Points : 2
    Points
    2
    Par défaut comment filtrer une table avec deux criteres càd 2 colonnes
    bonjour
    j'arrive pas filtrer ma table avec deux criteres de filter
    j'ai mis

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    form1.Table6.Filter := 'CODE = ' + QuotedStr('DCR') + ' AND ' +
        'ETAPE = ' + QuotedStr('SEFS5ML');
    et ca ne marche pas !!

    j'ai ecrit d'une autre maniere et ca ne merche pas aussi elle me donne le filtre de la derniere operationseulement et moi je veut un croisement des deux voici le code de la deuxeieme solution
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    s:='DCR';
    s1:='SEFS5ML';
    form1.Table6.Filter:='CODE=''' + s + '*''';
      form1.Table6.Filter:='ETAPE=''' + s1 + '*''';
    Le monde est à nous !!

  2. #2
    Membre habitué Avatar de bidochon
    Inscrit en
    Juin 2002
    Messages
    168
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 168
    Points : 156
    Points
    156
    Par défaut
    Salut,
    Peut etre as tu oublié de passer le filtrage a true apres la définition de la propriété filter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    form1.Table6.Filtered:=true;
    Tant de mains pour transformer ce monde, et si peu de regards pour le contempler !
    (Julien Gracq)

  3. #3
    Candidat au Club
    Inscrit en
    Juillet 2003
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    bonjour
    non le probleme n'est pas là !!
    j'ai seulement pas ecrit le tout
    merci beaucoup
    Le monde est à nous !!

  4. #4
    Membre habitué Avatar de bidochon
    Inscrit en
    Juin 2002
    Messages
    168
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 168
    Points : 156
    Points
    156
    Par défaut Re: comment filtrer une table avec deux criteres càd 2 colon
    Citation Envoyé par athmane2dz
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    s:='DCR';
    s1:='SEFS5ML';
    form1.Table6.Filter:='CODE=''' + s + '*''';
    form1.Table6.Filter:='ETAPE=''' + s1 + '*''';
    C'est normal que cela ne filtre que sur la derniere operation, tu écrases la propriété filter en ré-écrivant dessus !
    Essayes de faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    form1.Table6.Filter :=  'CODE = ' + QuotedStr('DCR') ;
    puis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    form1.Table6.Filter :=  'ETAPE = ' + QuotedStr('SEFS5ML');
    pour valider le fait que tes deux filtres sont bien ecris !
    @ plus
    Tant de mains pour transformer ce monde, et si peu de regards pour le contempler !
    (Julien Gracq)

  5. #5
    Membre confirmé Avatar de JustMe
    Inscrit en
    Juillet 2002
    Messages
    479
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 479
    Points : 593
    Points
    593
    Par défaut
    C'est normal que le filtre ne marche pas tu filtre une fois sur le CODE puis tu filtre la deuxième sur l'ETAPE tu dois écrire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    s:='DCR'; 
    s1:='SEFS5ML'; 
    form1.Table6.Filter:='CODE = ' +QuotedStr(s+'*') +
    ' and ETAPE = ' +QuotedStr(s1+'*');
    Remarque : Avec le QuotedStr Tu évite de compter les cotes et les chaîne qui ont en déjà des côtes.
    <On fait la science avec des faits, comme on fait une maison avec des pierres : mais une accumulation de faits n'est pas plus une science qu'un tas de pierres n'est une maison> **Poincaré**

  6. #6
    Candidat au Club
    Inscrit en
    Juillet 2003
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    bonjour
    merci pour tous et à petit_delphiste pour ta reponse mais il y a un petit probleme le resultat de ce code qu'il n'y a pas de resultat c'est vide comme s'il n'y a pas d'intersection entre les deux dans la table alors qu'il y a plusieurs enregistrements qui devront etre affichés car il y a des enregistrements qui contiennet DCR dans le CODE ET ceux qui ont SEFS5ML en ETAPE.
    par contre si je met a l place du and un or ( c seulement pour voir) il m'affiche un resultat juste c a d les enregistrement qui contiennet DCR dans le CODE ou ceux qui ont SEFS5ML en ETAPE (l'union).

    merci pour votre aide et si vous avez une explication n'hesitez pas SVP.
    Le monde est à nous !!

  7. #7
    Teo
    Teo est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Août 2002
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 110
    Points : 111
    Points
    111
    Par défaut
    Le filtre avec le "And" est censé retourner que les enregistrements
    contenant les "2" criteres.
    Tu n'en n'as donc pas dans ta table.
    Le "Or" fonctionne car tu as des enreg qui contiennent l'un des criteres
    et d'autres enreg qui contiennent l'autre critere...
    moi c'est ce que je comprends.

  8. #8
    Candidat au Club
    Inscrit en
    Juillet 2003
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    merci beaucoup pour tt
    Le monde est à nous !!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [phpMyAdmin] Comment vider une table entre deux dates ou entre deux id avec phpMyAdmin
    Par patrmich dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 6
    Dernier message: 24/05/2014, 14h48
  2. [CakePHP] Comment faire une recherche avec deux mots dans une table
    Par pierrot10 dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 12/02/2014, 23h20
  3. Réponses: 3
    Dernier message: 15/02/2011, 14h55
  4. MAJ d'une table avec deux liens
    Par alaingui dans le forum Access
    Réponses: 3
    Dernier message: 16/01/2007, 16h19
  5. Comment faire une classe avec deux form?
    Par Mickey.jet dans le forum Delphi
    Réponses: 10
    Dernier message: 04/07/2006, 18h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo