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 :

Valeur par défaut : DBLookupComboBox


Sujet :

Bases de données Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 92
    Points : 61
    Points
    61
    Par défaut Valeur par défaut : DBLookupComboBox
    Je remplis un DBLookupComboBox avec la requete suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    With DM.ADOQueryNumComptes do
    begin
             Close;
             DM.ADOQueryNumComptes.SQL.Clear;
             DM.ADOQueryNumComptes.SQL.Add('SELECT NumCompte, NomCompte FROM Comptes');
             DM.ADOQueryNumComptes.SQL.Add('WHERE Pseudo="'+Pseudo+'"');
             DM.ADOQueryNumComptes.Open;
    end;
    Puis, je veux que le DBLookupComboBox affiche la 1° valeur par défaut (récupéré le code dans la FAQ) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    With DBLookupComboBoxComptes Do
    Begin
              ListSource.DataSet.First ;
              Field.Value := ListSource.DataSet.FieldByName(KeyField).Value;
      End;
    La 1° partie marche, la 2°, j'ai le message suivant : "Violation d'acces" Pourquoi ?
    Je précise que j'ai dans l'inspecteur d'objet : KeyField=NumCompte

    Je pense que c'est du au fait, que j'utilise une requete ... Il ne peut recuperer une valeur differente de ma requete ...
    Si c'est le cas, comment afficher la 1° valeur ?

    Merci

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 92
    Points : 66
    Points
    66
    Par défaut
    Bonjour ,

    Il faut que tu utilises la propriété KeyValue de ton DBLookUpComboBox:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ListSource.DataSet.First;
          KeyValue := ListSource.DataSet.FieldByName(KeyField).Value;
    Ca devrait marcher.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 92
    Points : 61
    Points
    61
    Par défaut
    Cool, merci delphi5user.

    Si tu permets une 2° question :
    J'ai en code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    DM.ADOQueryNumComptes.SQL.Add('SELECT NumCompte, NomCompte FROM Comptes');
    DM.ADOQueryNumComptes.SQL.Add('WHERE Pseudo="'+Pseudo+'"');
    Je voudrais le mettre dans dans l'inspecteur d'objet, partie SQL de mon "ADOQueryNumComptes". Je mets :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT NumCompte, NomCompte FROM Comptes WHERE Pseudo="'+Pseudo+'"
    Et ca marche pas !!!

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 92
    Points : 66
    Points
    66
    Par défaut
    Normalement,
    au niveau de l'inspecteur d'objet, tu dois créer un paramètre (parameters) : Pseudo
    Ensuite au niveau de ton sql,tu écris :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT NumCompte, NomCompte FROM Comptes WHERE Pseudo=:Pseudo
    (les 2 points signifie un paramètre).

    Puis dans to code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    parameters.parambyname('Pseudo').AsString := tavaleur
    Ca devrait marcher



    [Balises CODE rajoutées par Pedro. Merci d'y penser à l'avenir

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 92
    Points : 61
    Points
    61
    Par défaut
    Je vais tester. Merci

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 02/01/2009, 18h23
  2. Valeur par défaut dans un DbLookupCombobox
    Par defluc dans le forum Bases de données
    Réponses: 2
    Dernier message: 22/09/2005, 15h04
  3. Valeur par défaut dun DBLookupcombobox
    Par lol_adele dans le forum Bases de données
    Réponses: 2
    Dernier message: 13/05/2004, 10h08
  4. Réponses: 2
    Dernier message: 18/10/2003, 15h42
  5. Unique + valeur par défaut
    Par ketalie dans le forum Outils
    Réponses: 4
    Dernier message: 02/07/2003, 16h29

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