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 :

Se positionner sur un champ ou DBNavigator avec recherche ..


Sujet :

Bases de données Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2003
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 55
    Par défaut Se positionner sur un champ ou DBNavigator avec recherche ..
    Bonjour,

    Voici mon pb :

    Sur un formulaire, j'affiche les données provenant de ma table Interbase ... j'ai placé un DBNavigator jusqu'ici ca roule ...

    Mon Pb : je voudrais qu'a partir d'un Tedit (correspondant à un libelle de ma table) lorsque l'on saisi des caractère, il se place automatiquement sur le champ correspondant de ma table ???
    En gors, comment faire une recherche alphabétique par exemple sur mon formulaire ??

    Merci d'avance pour votre aide,

    Cordialement,

    Djedjeridoo

  2. #2
    Membre éprouvé Avatar de Guile
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Avril 2002
    Messages : 130
    Par défaut
    Salut,
    Alors moi je te conseille de récupérer tes données dans un Query et qui contient une requete avec une clause LIKE du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    select ID, NOM, PRENOM from CLIENT
    where NOM LIKE :Val
    et dans le BeforeOpen tu mets :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Monquery.ParamByName('Val').AsString := EdtNOM.Text + '%';
    Ensuite tu fais un Close et un open sur le OnChange de EdtNOM et tu n'auras que tes enregistrements dont le nom commence par ce que tu as saisi

    Je ne suis pas sur que c'est ce que tu voulais mais j'espère au moins t'avoir fait avancer

  3. #3
    Membre averti
    Inscrit en
    Juin 2003
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 55
    Par défaut
    Merci du coup de main !!

    C'est a peu près ce que je recherchais ...

    DJEDJERIDOO

  4. #4
    Membre éprouvé Avatar de Guile
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Avril 2002
    Messages : 130
    Par défaut
    Tient, j'ai une autre idée qui me vient, tu dois pouvoir aussi obtenir ça en utilisant les filtres :

    Tu mets la propriétés Filtered de ta table ou ton query à true et dans l'evenement OnFilterRecord tu fais un filtre du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    If EdtNOM.Text <> '' then
    begin
      Accept := (LeftStr(MaTable.FieldByName('NOM').AsString,length(EdtNom.Text)) = EdtNom.Text);
    end;
    C'est improvisé mais le résultat devrait ressembler à ce que tu cherches

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

Discussions similaires

  1. Réponses: 11
    Dernier message: 02/07/2012, 16h30
  2. Update sur un champ NOT NULL avec une valeur NULL sans erreur
    Par HectorPriamide dans le forum Requêtes
    Réponses: 8
    Dernier message: 26/01/2012, 21h25
  3. Réponses: 1
    Dernier message: 26/08/2011, 15h24
  4. [AC-2007] se positionner sur un champs
    Par ronin.01 dans le forum VBA Access
    Réponses: 7
    Dernier message: 05/05/2011, 14h08
  5. Positionnement sur un champ en particulier
    Par jep33 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 19/02/2009, 10h59

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