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 :

tri d'une table a l'aide de DBRADIOGROUP


Sujet :

Bases de données Delphi

  1. #1
    Futur Membre du Club
    Inscrit en
    Juin 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 12
    Points : 8
    Points
    8
    Par défaut tri d'une table a l'aide de DBRADIOGROUP
    j'aimerais bien trouver une sollution a ce defit...
    j'ai une fiche qui contient une DbGrid reliée a une table EMPLOYE
    ce que j'aimerais avoir c le faite de cocher la CASE Employe du DBRadioGroup
    la Dbgrid Affiche Seleument les Employes et non pas les ENSEIGNANTS avec,
    anisi si je coche la case TOUT la DbGrid Affiche Tout le Contenu de La table

    Sachant que le Items EMPLOYE et ENSEIGNANT sont dans le Champ QUALITE de la table Employe

  2. #2
    Membre émérite
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 401
    Points : 2 304
    Points
    2 304
    Par défaut
    Citation Envoyé par aekskype Voir le message
    j'aimerais bien trouver une sollution a ce defit...
    j'ai une fiche qui contient une DbGrid reliée a une table EMPLOYE
    ce que j'aimerais avoir c le faite de cocher la CASE Employe du DBRadioGroup
    la Dbgrid Affiche Seleument les Employes et non pas les ENSEIGNANTS avec,
    anisi si je coche la case TOUT la DbGrid Affiche Tout le Contenu de La table

    Sachant que le Items EMPLOYE et ENSEIGNANT sont dans le Champ QUALITE de la table Employe
    Salut;

    étant donné l'énoncé c'est d'un filtre qu'il s'agit pas d'un tri . et pour se faire, tu as deux solutions:

    1. Traitement SQL :
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      chaine := 'Select * From taTable where tonchamp =: valDBRadioGroup';
      TonQuery.Cleat;
      TonQuery.SQL := chaine;
      TonQuery.ParamByName('valDBRadioGroup') := DBRadioGroup.items;
      TonQuery.Open;
    2. Traitement avec composant table :
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      Table1.Filter := tonChamp + DBRadioGroup.items;
      Table1.Filtered := True;


    pour le filtre faut vérifier la syntaxe, j'ai jamais réussi à le faire du premier coup
    Bon courage ou Bonne Chance (selon le contexte)
    Mon blog sur WordPress

  3. #3
    Futur Membre du Club
    Inscrit en
    Juin 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 12
    Points : 8
    Points
    8
    Par défaut slt
    j'ai essayer avec le filtre de la table ca marche pas
    meme avec le query pareil
    le faite de cocher un items du DbRadioGroup c Quelle Proprieté
    j'ai mis les code que vous m'avez proposer sur l'evenement OnChange du DbRadioGroup

  4. #4
    Membre émérite
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 401
    Points : 2 304
    Points
    2 304
    Par défaut
    Citation Envoyé par aekskype Voir le message
    j'ai essayer avec le filtre de la table ca marche pas
    meme avec le query pareil
    le faite de cocher un items du DbRadioGroup c Quelle Proprieté
    j'ai mis les code que vous m'avez proposer sur l'evenement OnChange du DbRadioGroup
    ok ma proposition était de te donner deux solutions mais là je dois savoir qu'utilise-tu comme composants d'accès à la BD et avec quel BD travaille-tu ? en même temps poste ton code qu'on travail dessus.
    Bon courage ou Bonne Chance (selon le contexte)
    Mon blog sur WordPress

  5. #5
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut

    Je te propose ceci avec l'évènement OnFilterRecord de la table:

    Sur le OnClick du TRadioGroup:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    procedure TForm1.RadioGroup1Click(Sender: TObject);
    begin
      TableEmploye.Filtered := TRadioGroup(Sender).ItemIndex = 0;
      TableEmploye.First;
    end;
    Puis sur le OnFilterRecord de la table Employé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure TForm1.TableEmployeFilterRecord(DataSet: TDataSet; var Accept: Boolean);
    begin
      Accept := TableEmploye.FieldByName('QUALITE').AsString = 'EMPLOYE';
    end;
    @+ Claudius

  6. #6
    Futur Membre du Club
    Inscrit en
    Juin 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    le compilateur arrete sur cette ligne
    ----
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Table_emp.Filtered := dbRadioGroup1(Sender).ItemIndex = 0;
    la valeur affectée a result n'est jamis utilisé

  7. #7
    Membre émérite
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 401
    Points : 2 304
    Points
    2 304
    Par défaut
    Citation Envoyé par aekskype Voir le message
    le compilateur arrete sur cette ligne
    ----
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Table_emp.Filtered := dbRadioGroup1(Sender).ItemIndex = 0;
    la valeur affectée a result n'est jamis utilisé
    mais c'est pas une erreur, tu peux l'ignorer. maintenant est-ce le code donne résultat ?
    Bon courage ou Bonne Chance (selon le contexte)
    Mon blog sur WordPress

  8. #8
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Citation Envoyé par aekskype Voir le message
    la valeur affectée a result n'est jamis utilisé
    Sans un extrait de code, difficile d'apporter une réponse.

    @+

  9. #9
    Futur Membre du Club
    Inscrit en
    Juin 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    procedure TForm_liste_emp.DBRadioGroup1Click(Sender: TObject);
    begin
    Table_emp.Filtered := dbRadioGroup1(Sender).ItemIndex = 0;
    Table_emp.First;
     
    end;
     
    procedure TForm_liste_emp.Table_empFilterRecord(DataSet: TDataSet;
      var Accept: Boolean);
    begin
     Accept := Table_emp.FieldByName('QUALITE').AsString = 'EMPLOYE';
    end;

  10. #10
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    A priori l'avertissement sur le result n'a rien à voir avec ce code.

    Je vois que tu utilises un TDBRadioGroup pour effectuer la filtration/non filtration de la table. Pourquoi ce choix ? Un TRadioGroup suffit !

    @+

  11. #11
    Futur Membre du Club
    Inscrit en
    Juin 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    le curseur clignante sur (Sender)

  12. #12
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Essaye ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Table_emp.Filtered := TDBRadioGroup(Sender).ItemIndex = 0;
    même si en l'occurrence je te déconseille vraiment l'utilisation d'un composant orienté données.

    @+

  13. #13
    Futur Membre du Club
    Inscrit en
    Juin 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    j'ai deja essaye ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    procedure TForm_liste_emp.DBRadioGroup1Click(Sender: TObject);
    begin
    Table_emp.Filtered := dbRadioGroup1(Sender).ItemIndex = 0;
    Table_emp.First;
     
    end;
     
    procedure TForm_liste_emp.Table_empFilterRecord(DataSet: TDataSet;
      var Accept: Boolean);
    begin
     Accept := Table_emp.FieldByName('QUALITE').AsString = 'EMPLOYE';
    end;
    j'ai modifier ton code sur mon dbradiogroup bien sur
    et ca marche pas

    j'ai effacer le dbradiogroup maintenant et j'ai essayer par la suite Radiogroup mais pareil

  14. #14
    Membre émérite
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 401
    Points : 2 304
    Points
    2 304
    Par défaut
    Citation Envoyé par aekskype Voir le message
    j'ai deja essaye ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    procedure TForm_liste_emp.DBRadioGroup1Click(Sender: TObject);
    begin
    Table_emp.Filtered := dbRadioGroup1(Sender).ItemIndex = 0;
    Table_emp.First;
     
    end;
     
    procedure TForm_liste_emp.Table_empFilterRecord(DataSet: TDataSet;
      var Accept: Boolean);
    begin
     Accept := Table_emp.FieldByName('QUALITE').AsString = 'EMPLOYE';
    end;
    j'ai modifier ton code sur mon dbradiogroup bien sur
    et ca marche pas

    j'ai effacer le dbradiogroup maintenant et j'ai essayer par la suite Radiogroup mais pareil
    qu'est ce qui ne marche pas ?
    Bon courage ou Bonne Chance (selon le contexte)
    Mon blog sur WordPress

  15. #15
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2008
    Messages : 241
    Points : 204
    Points
    204
    Par défaut
    Bonsoir tout le monde
    voilà je vous propose ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if radiogroup1.ItemIndex =0 then
      begin
      Table_emp.Filter :=' QUALITE = employé';
      Table_emp.Filtered :=true
      end;

  16. #16
    Membre émérite Avatar de edam
    Homme Profil pro
    Développeur Delphi/c++/Omnis
    Inscrit en
    Décembre 2003
    Messages
    1 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Delphi/c++/Omnis
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 894
    Points : 2 771
    Points
    2 771
    Par défaut
    Citation Envoyé par Just-Soft Voir le message
    mais là je dois savoir qu'utilise-tu comme composants d'accès à la BD et avec quel BD travaille-tu ? en même temps poste ton code qu'on travail dessus.
    +1
    PAS DE DESTIN, C'EST CE QUE NOUS FAISONS

Discussions similaires

  1. probleme de tri dans une table
    Par tchimou dans le forum Bases de données
    Réponses: 4
    Dernier message: 03/04/2007, 15h59
  2. [WD5.5] Tri d'une table fichier.
    Par Thanor dans le forum WinDev
    Réponses: 15
    Dernier message: 30/01/2007, 16h57
  3. fonction qui fait le tri d'une Table de BDD
    Par devlopassion dans le forum C++Builder
    Réponses: 7
    Dernier message: 03/10/2006, 15h28
  4. [Acces] Tri dans une table
    Par badnane2 dans le forum Access
    Réponses: 3
    Dernier message: 01/08/2006, 23h34
  5. Comment Afficher Une Table A L'aide Quick Report
    Par lnpt23 dans le forum Bases de données
    Réponses: 8
    Dernier message: 20/06/2006, 15h56

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