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 :

Ajouter des items à une TDBComboBox à partir d'une Base SQL SERVER


Sujet :

Delphi

  1. #1
    Membre du Club
    Inscrit en
    Août 2008
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 66
    Points : 41
    Points
    41
    Par défaut Ajouter des items à une TDBComboBox à partir d'une Base SQL SERVER
    Bonjour,

    J'utilise un TDBComboBox et je voudrais que les items de celles-ci soient les données de ma base de donnée SQL SERVER.

    Par exemple: avec la table Horaire qui a comme champs ID_Hor, Deb_Hor, Fin_Hor, est-il possible que ma tdbcombobox ait comme items Deb_Hor+Fin_Hor ???

  2. #2
    Membre expérimenté
    Avatar de sat83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Points : 1 307
    Points
    1 307
    Par défaut
    Utilise TDBLookUpComboBox et regarde les propriétés : ListSource, ListField et KeyField

    Tu dois bien évidemment avoir un TDataset (un TQuery avec la requête SQL qui va bien pour obtenir ce que tu veux) relié à un TDataSource lui même relié à ton TDBLookUpComboBox via la propriété ListSource (et pas DataSource!)
    Ce que l'on apprend par l'effort reste toujours ancré plus longtemps...

  3. #3
    Membre du Club
    Inscrit en
    Août 2008
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 66
    Points : 41
    Points
    41
    Par défaut
    Merci c'est ce que je cherchais.

    Mais est-il possible de modifier les noms se trouvant de la ListField ? Par exemple dans mon cas que ce qui est affiché dans ma ListField soit la donnée de 'Deb_Hor' et 'Fin_Hor' ?

    ex:
    Deb_Hor = 10h00, Fin_Hor = 11h00
    et affiché dans la TDBLookupComboBox "10h00 - 11h00"

  4. #4
    Membre éprouvé Avatar de BuzzLeclaire
    Homme Profil pro
    Dev/For/Vte/Ass
    Inscrit en
    Août 2008
    Messages
    1 606
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dev/For/Vte/Ass

    Informations forums :
    Inscription : Août 2008
    Messages : 1 606
    Points : 1 113
    Points
    1 113
    Par défaut
    Bonjour,

    Moi j'utilise un Combobox (qui s'apprente à ton compo)
    et je vais cela
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
              ComboBoxDevis.items.add(ADOQueryDevis.Fields.Fields[0].AsString+ ' - ' + ADOQueryDevis.Fields.Fields[6].AsString);
    et j'ai bien 2 valeurs dans mon combo.

  5. #5
    Membre expérimenté
    Avatar de sat83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Points : 1 307
    Points
    1 307
    Par défaut
    1ère solution : Dans ton TQuery, tu ajoute un champ calculé, et dans l'événement OnGetText tu fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Text := tonChamp1 + tonChamp2 
    *

    Une autre solution est de faire directement ça en SQL :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    select (MonChamp1 || ' - ' || MonChamp 2) as séparé par des
    from MaTable
    Ou encore (je ne sais pas si tu a vu) tu peux spécifier plusieurs éléments dans le champ ListField (séparés par des ';') ce qui affichera plusieurs champs de ta requête dans ton DBLookUpCombobox.
    Ce que l'on apprend par l'effort reste toujours ancré plus longtemps...

  6. #6
    Membre du Club
    Inscrit en
    Août 2008
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 66
    Points : 41
    Points
    41
    Par défaut
    Merci sat83 c'est bien ce qu'il me fallait. Dans le ListField j'utilise ";" pour pouvoir mettre plusieurs valeurs

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 14/08/2012, 17h21
  2. [Batch] Créer une chaine à partir d'une variable et d'une autre chaine
    Par mlle lain dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 10/11/2009, 16h26
  3. Saisir une image à partir d'une photo ou d'une vidéo
    Par lohengrin56 dans le forum Flash/Flex
    Réponses: 0
    Dernier message: 07/07/2009, 16h17
  4. Réponses: 2
    Dernier message: 05/01/2009, 12h45
  5. Réponses: 5
    Dernier message: 22/05/2008, 14h42

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