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 :

Insérer le contenu d’une cellule TDBGrid dans un TDBEdit


Sujet :

Bases de données Delphi

  1. #1
    Membre régulier
    Inscrit en
    Septembre 2005
    Messages
    192
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 192
    Points : 90
    Points
    90
    Par défaut Insérer le contenu d’une cellule TDBGrid dans un TDBEdit
    Bonjour,

    J’ai les composants de bdd suivants sur ma fiche frmProfesseur :
    dgdProfesseur = TDBGrid
    qryProfesseur = TADOQuery
    dtsProfesseur = TADODataSet
    dbeNomProfesseur = TDBEdit
    dnvProfesseur = TDBNavigator
    bbtChoisirProfesseur = TBitBtn

    Voici ce que je voudrai réaliser :
    Les quelques champs du dtsProfesseur (TADODataSet) sont : ProMatricule, ProNom, ProPrenoms, etc
    Les 2 colonnes de ma dgdProfesseur (TDBGrid) sont ProNom et ProPrenoms
    Une fois ma grille à 2 colonnes remplie d’enregistrements :

    Par la souris je sélectionne une cellule de la colonne ProNom en cliquant dessus,
    Quand je vais valider ce choix en cliquant sur le bouton bbtChoisirProfesseur,
    Qu’automatiquement le champ dbeNomProfesseur (TDBEdit) reçoive le contenu sélectionné (ProNom)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    NB : Je n’ai pas voulu utiliser le composant TDBLookupListBox avec lequel la syntaxe ci-après fonctionne bien :
        if TDBLookupListBoxProfesseur.SelectedItem <> '' then
               dbeProNoms.Text := TDBLookupListBoxProfesseur.SelectedItem;

    Quelqu’un est il bien disposer à m’aider, car ne connaissant pas la syntaxe avec un composant TDBGrid ?

    Merci d’avance à tous

    Eric

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 030
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 030
    Points : 40 928
    Points
    40 928
    Billets dans le blog
    62
    Par défaut
    bonjour

    Si le DBedit est liè au même datasource que le dbGrid il n'y a rien a faire

    si le DBEdit correspond a un autre Datasource venant d'une autre table , rien de plus simple , il faut savoir que la ligne sélectionnée dans le dBGrid est l'Enregistrement courant du datasource .
    une simple affectation suffit donc , du genre :

    <Champ du DBEdit>:=qryProfesseur.FieldByName('ProPrenom').asString;
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  3. #3
    Membre régulier
    Inscrit en
    Septembre 2005
    Messages
    192
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 192
    Points : 90
    Points
    90
    Par défaut
    merci SergioMaster

    cela fonctionne. hors c'était aussi simple et clair

    encore merci

  4. #4
    Membre régulier
    Inscrit en
    Septembre 2005
    Messages
    192
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 192
    Points : 90
    Points
    90
    Par défaut
    slt
    Cela ne marche pas,
    je me suis précipité à dire Ok, alors que ce n'est pas le cas
    la syntaxe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <Champ du DBEdit>:=qryProfesseur.FieldByName('ProPrenom').asString;
    me permet bien sûr d'afficher le contenu d'une cellule proNom dans mon champ DBEdit.
    Mais cependant il n'affiche pas exactement la cellule que j'ai SELECTIONNEE
    Notez que dans la colonne ProNom, il y a des NOMS de plusieurs Profs, donc plusieurs lignes d'enregistrements si tu veux.

    je voudrais qu'il m'affiche UNIQUEMENT le NOM du Prof que j'ai SELECTIONNE
    je v qu'il m'affiche ce NOM dans le Champ du DBEdit.

    Je suis en train de penser par rapport à votre syntaxe, à quelque chose du genre
    SelectedRow, SelectedCell, bref - je ne maitrise pas la syntaxe à appliquer.
    entre temps je vous ai dit que ma syntaxe ci après, avec le composant TDBLookupListBox, marche sans problème.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if TDBLookupListBoxProfesseur.SelectedItem <> '' then
               dbeProNoms.Text := TDBLookupListBoxProfesseur.SelectedItem;
    Mais je ne veux pas utiliser cela, préférant travailler avec le TDBGrid.

    J'attends tjours l'aide de tous

    Eric

  5. #5
    Membre régulier
    Inscrit en
    Septembre 2005
    Messages
    192
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 192
    Points : 90
    Points
    90
    Par défaut
    slt

    mon dbGrid correspond à une autre datasource : dataSource de la requete qryProf
    mon dbEdit correspond à une autre datasource également : dataSource de la tblProfesseur

    Les deux ne correspondent pas au même dataSource.

    j'attends tjrs la reponse svp

    NB : j'ai la connexion entre 8h et 15h 30

    Merci

  6. #6
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 030
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 030
    Points : 40 928
    Points
    40 928
    Billets dans le blog
    62
    Par défaut
    Je ne comprends pas le but ? en fiat je ne comprends pas pourquoi on a à la fois une Query et une table

    si c'est par exemple pour se positionner tblProfesseur

    j'utiliserai par exemple ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    tblprofesseur.locate('NOM',qryProfesseur.FieldByName('ProPrenom').asString,[])
    // il y a peut-être une petite erreur de syntaxe, j'ecrit sans Delphi sous la main
    ou tout autre approche en fonction des élements de qryProfesseur
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  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 tleboukaka Voir le message
    slt

    mon dbGrid correspond à une autre datasource : dataSource de la requete qryProf
    mon dbEdit correspond à une autre datasource également : dataSource de la tblProfesseur

    Les deux ne correspondent pas au même dataSource.

    j'attends tjrs la reponse svp

    NB : j'ai la connexion entre 8h et 15h 30

    Merci
    Salut;
    pourquoi ne pas faire plus simple en les rattachant au même datasource ? quelle est la contrainte ?
    Bon courage ou Bonne Chance (selon le contexte)
    Mon blog sur WordPress

Discussions similaires

  1. Réponses: 2
    Dernier message: 29/12/2008, 01h46
  2. [MySQL] Insérer le contenu d'une table dans un tableau
    Par renaud26 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 28/01/2008, 08h37
  3. Insérer le contenu d'une requête dans une table
    Par guadian dans le forum VBA Access
    Réponses: 1
    Dernier message: 20/07/2007, 20h16
  4. Réponses: 1
    Dernier message: 09/06/2006, 12h04
  5. Insérer le contenue d'un memo dans une table mysql
    Par kijudr dans le forum Bases de données
    Réponses: 1
    Dernier message: 05/12/2005, 08h39

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