Résultat d'une jointure dans un dbtextbox

tiboss33 Messages postés 2 Date d'inscription jeudi 11 janvier 2007 Statut Membre Dernière intervention 17 février 2007 - 14 févr. 2007 à 14:23
ThWilliam Messages postés 418 Date d'inscription mardi 3 janvier 2006 Statut Membre Dernière intervention 26 novembre 2013 - 17 févr. 2007 à 10:34
Bonjour, au démarrage de mon programme jai un dbgrid qui maffiche tous les salariés  dune entreprise.
Quand je double clique sur un salarié, jai une nouvelle feuille qui affiche les infos détaillées dans des textbox vérouillés.
Jusque ici tout fonctionne bien car cela ne fait appel qua la table salarié.

Seulement je voudrais rappatrier le nom de l'établissement (nom_etab) dans lequel le salarié travaille pour le mettre dans un dbtextbox, et je ne sais pas comment my prendre.
la table salarié possede la clé étrangere code_etab et la  table etablissements a  pour clé primaire code_etab

(j'ai essayé de faire un query avec la requete contenant la jointure ce qui donne 'SELECT nom_etab FROM etablissements e, salaries s WHERE s.code_etab = e.code_etab'  puis jai fait un datasource relié au query, et jai ensuite relié le dbtextbox au datasource mais rien y fait il est vide)

Voila j'espere avoir été clair, sinon n'hésitez pas a me demmander d'autres questions (je suis débutant mais vous avez du le remarquer lol)

Merci !

3 réponses

ThWilliam Messages postés 418 Date d'inscription mardi 3 janvier 2006 Statut Membre Dernière intervention 26 novembre 2013 4
17 févr. 2007 à 09:45
Salut,
Pourquoi faire compliqué quand on peut faire simple ?
Puisque tu as implémenté une procedure de double clic pour afficher les infos du salarié, il te suffit d'ajouter dans cette procedure une simple recherche du code_etab dans ta table établissements. Si code_etab est trouvé, il te suffit de lire la valeur de nom_etab.
Pour faire une recherche, tu as plusieurs outils disponibles : locate, setkey...gotokey.

A +
Thierry
0
tiboss33 Messages postés 2 Date d'inscription jeudi 11 janvier 2007 Statut Membre Dernière intervention 17 février 2007
17 févr. 2007 à 10:01
salut,
en effet ca m'a l'air fesable (même pour un débutant lol) par contre cette requette je la mets ou? Moi je pensais qu'on pouvait l'insérer uniquement dans un tquery ou un tdataset
Merci!
0
ThWilliam Messages postés 418 Date d'inscription mardi 3 janvier 2006 Statut Membre Dernière intervention 26 novembre 2013 4
17 févr. 2007 à 10:34
Ce n'est pas une requête SQL ! Donc pas d'emploi d'un TQuery.

Voici le genre de code (à ajouter dans ta procedure de double clic) :

if TableEtab.Locate('code_etab', TableSalaries.FieldByName('code_etab').asString, []) then
    Edit1.Text:= TableEtab.FieldByName('nom_etab).asString
else Edit1.Text:= '';
0
Rejoignez-nous