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

 Delphi Discussion :

Bouton de recherche


Sujet :

Delphi

  1. #1
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    95
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 95
    Points : 53
    Points
    53
    Par défaut Bouton de recherche
    bonjour,
    je cherche a réaliser un bouton de recherche par ID ou NOM ....
    j'utilise ado
    prière j'ai besoin d'aide

  2. #2
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Points : 4 935
    Points
    4 935
    Par défaut
    Salut,

    Le bouton rechercher n'est ni plus ni moins qu'un simple bouton qui va exécuter une requête SQL ...
    Tu auras donc surement un TEdit qui contiendra la valeur recherché :

    La requête SQL sera quand à elle, de cette façon :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT *
    FROM MaTable
    WHERE JOINTURE
    AND NomTable LIKE '%ValeurDuTEdit%'

    Si tu veux un peu plus d'infos, il nous faudra avoir un peu plus de détail sur ce que tu souhaite faire

  3. #3
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    95
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 95
    Points : 53
    Points
    53
    Par défaut re
    bein
    j'ai une petite application, ou je vais insérer des données ( nom, prenom, adresse ....);
    j'ai creer
    -edit
    -bouton de recherche

    je veux faire une recherche dans une table nomée Contact par ID

  4. #4
    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

    Avec un Locate sur le OnClick du bouton Recherche:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    procedure TFormMain.ButtonRechercheClick(Sender: TObject);
    begin
      if EditRechID.Text <> '' then
      begin
        if not ADOTblContact.Locate('ID', EditRechID.Text, []) then
          ShowMessage('ID: ' + EditRechID.Text + ' non trouvé.');
      end
      else
        ShowMessage('Veuillez saisir l''ID du contact.');
    end;
    A noter que si ta table est en cours de modification (dsInsert ou dsEdit) un Post sera effectué avant le Locate.

    @+ Claudius

  5. #5
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Points : 4 935
    Points
    4 935
    Par défaut
    La requête devrait être celle-ci :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT *
    FROM Contact
    WHERE ID := IDAChercher;

    Le code delphi pour l'ID à chercher :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AdoQuery1.FieldByName('IDAChercher').AsInteger := 1;
    Ici, j'ai fait une recherche stricte. Si tu veux plus de souplesse, utilises le mot clé LIKE dans le requête ... Après tout dépend de ton besoin

    A+

    PS :
    Ou utiliser la méthode de Cl@audius

  6. #6
    Membre actif
    Inscrit en
    Juin 2008
    Messages
    324
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 324
    Points : 217
    Points
    217
    Par défaut salut
    salut
    supposant votre table s'apple table1:
    donc:

    table1.locate('filedname',search value,option)
    fieldname :nom de champ;
    searche : la valeur rechercher
    option:
    Option = [loCaseInsensitive ] :ne pas faire destingtion entre le majiscule et miniscule.
    Option = [ loPartiaKey ] la recherche dans un partie de mot.
    Option = [ loCaseInsensitive , loPartiaKey ]: concatination entre premiere et deuxieme option.
    Option = [ ] :on veut pas travailer avec les options au dessus.

    pour la recherche avec pusieur champs:

    Locate ( 'FieldName1; FieldName2; FieldName3',VarArrayOf ( [SearchValue1,
    SearchValue2, SearchValue3]),Option ) ;
    exemple:
    table1.Locate('pname;Nationalty',vararrayof([ edit1.Text,Edit2.text]) , [
    locaseinsensitive , lopartialkey ] )
    vararrayof : une matrice de de variant.
    cordialement rec82.

  7. #7
    Membre éclairé Avatar de Kaféine
    Homme Profil pro
    Inscrit en
    Avril 2007
    Messages
    569
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 569
    Points : 736
    Points
    736
    Par défaut
    Salut,

    Je ferais comme ero-sennin à savoir une requête paramètrée.

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT *
    FROM Contact
    WHERE ID = :IDAChercher;

    sans affectation Delphi

    Le locate de cl@udius implique que la table soit ouverte. Et je suis pas fan mais bon les goûts et les couleurs.....
    Akim Merabet

  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 Kaféine Voir le message
    Le locate de cl@udius implique que la table soit ouverte. Et je suis pas fan mais bon les goûts et les couleurs.....
    Non moi non plus je ne suis pas fan. Mais j'imagine que c'est le contexte d'utilisation de thered suite cette question:
    je veux faire une recherche dans une table nomée Contact
    par ID
    @+

  9. #9
    Membre habitué Avatar de Hamza
    Homme Profil pro
    Data Analyst
    Inscrit en
    Avril 2005
    Messages
    295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Algérie

    Informations professionnelles :
    Activité : Data Analyst
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2005
    Messages : 295
    Points : 164
    Points
    164
    Par défaut
    Bonjour,

    Dans le code Delphi j'ai taper ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    sqlbdd.SQL.Clear;
    sqlbdd.SQL.Add( 'Select * From Draw_doc');
    sqlbdd.SQL.Add ('WHERE titre like %'+ quotedstr(titre.Text)+'%');
    sqlbdd.Active;
    sqlbdd.ExecSQL
    malheureusement quand j’exécute sa m'affiche le code erreur ci-dessous, je ne comprend pas !!


    Nom : error.png
Affichages : 1411
Taille : 3,6 Ko

    Merci

  10. #10
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 661
    Points : 3 630
    Points
    3 630
    Billets dans le blog
    2
    Par défaut
    Bonsoir,

    En SQL, la syntaxe LIKE doit être :
    WHERE titre like '%laChaine%'
    Les % sont entre simple quote.

    En Delphi ça donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    sqlbdd.SQL.Clear;
    sqlbdd.SQL.Add( 'Select * From Draw_doc');
    sqlbdd.SQL.Add ('WHERE titre like '+ quotedstr('%'+titre.Text+'%'));
    sqlbdd.Active;
    sqlbdd.ExecSQL
    Mon site - Mes tutoriels - GitHub - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  11. #11
    Membre habitué Avatar de Hamza
    Homme Profil pro
    Data Analyst
    Inscrit en
    Avril 2005
    Messages
    295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Algérie

    Informations professionnelles :
    Activité : Data Analyst
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2005
    Messages : 295
    Points : 164
    Points
    164
    Par défaut
    Merciiiii sa marche très bien

Discussions similaires

  1. un seul bouton de recherche
    Par yosraisi dans le forum Langage
    Réponses: 7
    Dernier message: 07/05/2008, 10h19
  2. Bouton de recherche dans un formulaire
    Par Le grand dans le forum IHM
    Réponses: 11
    Dernier message: 05/05/2008, 01h14
  3. Bouton de recherche.
    Par nodogeid dans le forum IHM
    Réponses: 2
    Dernier message: 25/06/2007, 09h43
  4. Bouton de recherche d'une adresse de dossier
    Par crashyear dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 20/10/2006, 08h12
  5. bouton de recherche
    Par angiosfr dans le forum AWT/Swing
    Réponses: 7
    Dernier message: 28/12/2005, 21h52

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