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 :

DBGrid, récupération de la selection d'une case


Sujet :

Bases de données Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 5
    Par défaut DBGrid, récupération de la selection d'une case
    Bonjour à tous ^^
    J'ai à peu près le même soucis que la personne à cette adresse là : http://www.developpez.net/forums/showthread.php?t=21271
    Je vous explique :
    J'ai un DBGrid qui affiche le résultat d'une requête, je voudrais pouvoir récupérer la valeur de ce qu'il y a dans la case sélectionnée de cette DBGrid pour l'envoyer dans une autre requête qui sera elle même réaffichée dans un autre DBGrid.

    Une image pour plus de clarté ^^' :


    Je voudrais, comme vous pouvez le deviner, naviguer dans les promos->Groupes->Etudiants, pour au final en séléctionner un seul (d'étudiant).
    Je suis sous Borland Turbo C++, et pour l'instant j'arrive seulement à afficher les promos, je voudrais récupérer la case selectionnée du DBGrid de la promos pour l'envoyer à la requête paramètrée de l'affichage des groupes.

    J'espère avoir été clair, et j'espère que vous pourrez m'éclairer =}
    Merci

  2. #2
    Expert confirmé
    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 : 62
    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
    Par défaut
    Salut

    Il faut garder une chose importante à l'esprit, c'est que le DBGrid ne contient pas les données. Il les affiche c'est tout.

    Donc pour répondre à ta question, lorsque tu sélectionnes une promo dans le DBGrid il suffit d'aller lire la valeur qui t'intéresse directement dans ta table/requête qui est liée au DBGrid.

    Une fois cette valeur obtenue tu la transmet à ta requête paramétrée pour afficher les groupes et ainsi de suite.

    Voilà pour le principe.

    @+ Claudius

  3. #3
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 101
    Par défaut
    Essaye de voir avec un principe de cascade avec MasterSource/MasterKey

    Sinon, un DBGrid c'est relié à DataSource et donc un DataSet, la selection d'une ligne dans la grille, faut que l'enregistrement en cours dans le DataSet est celui qui est affiché, tu peux donc directement faire FieldByName pour accéder au champ ...
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  4. #4
    Expert confirmé
    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 : 62
    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
    Par défaut
    Citation Envoyé par ShaiLeTroll Voir le message
    Essaye de voir avec un principe de cascade avec MasterSource/MasterKey
    +1

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 5
    Par défaut
    Tout d'abord, merci pour vos réponses, j'ai désormais bien intégré le fait que des DBGrid ne comprennent pas les donnés mais ne font que les afficher.

    J'ai ensuite essayé de suivre le conseil ShaiLeTroll :
    Mon DBGrid étant relié aux DataSource DsQPromos qui lui a pour DataSet QueryGroupe ((Select Nom from promos on peut difficilement faire plus simple^^"). Et d'après moi ça aurait donné ça :
    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    DataModule1->QueryGroupes->Params->ParamByName("Select")->Value=DataModule1->QueryPromos->FieldByName("Nom");
    Mais ça fonctionne pas top mieux, ça prend systèmatiquement en compte la premier enregistrement (S1), et ce quoi que je sélectionne.

    Sinon pour le concept MasterSource/MasterKey, j'ai du mal à cerner =/

  6. #6
    Expert confirmé
    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 : 62
    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
    Par défaut
    Re,

    Il ne te manquerais pas un ->Value après le FieldByName ?

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 5
    Par défaut [Résolu] DBGrid, récupération de la selection d'une case
    Merci beaucoup à vous deux, tout fonctionne parfaitement maintenant .
    A sûrement très bientôt

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

Discussions similaires

  1. [XL-2013] Selection d'une case non valide - VBA
    Par Elawin_ dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 01/03/2014, 09h35
  2. Selection d'une Case dans ListView
    Par Bourak dans le forum C#
    Réponses: 3
    Dernier message: 17/05/2012, 09h38
  3. [XL-2003] Décalé la selection d'une case
    Par gandalf20000000 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 21/10/2009, 15h15
  4. Selection d'une case dans le dataGridview
    Par abbd dans le forum Windows Forms
    Réponses: 1
    Dernier message: 05/03/2008, 12h36
  5. selection d'une case dans un formulaire
    Par salsero1 dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 02/05/2007, 17h39

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