|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() retraité Inscription : octobre 2011 Messages : 87 ![]() |
Bonsoir
svp, comment peut-ton filtrer une base données avec adoquery. ayant 02 tables [access 2007], table1 : concessionnaire table2 : marques avec 02 dbgrid [marques] dbgrid [concessionnaires] ce que je souhaiterais faire c'est quand je sélectionne une marque dans dbgrid [marques] tous les concessionnaires commercialisant la marque sélectionnée seront affichés dans la dbgrid [concessionnaires] comment faire svp merci pour compréhension. |
|
|
00
|
|
|
#2 | |||
|
Expert Confirmé
![]() ![]() |
Bonjour,
Citation:
Pour des TADOQuery, il faut utiliser l'événement AfterScroll du 1° query. il est déclenché à chaque déplacement dans l'ensemble. Dans la procédure appelée par cet événement, il faut réactualiser le second query en changeant le paramètre correspondant à l'id qui sert de clé étrangère... Attention, ne pas oublier de désactiver l'événement lors du chargement du 1° query et de le réactiver après le chargement pour éviter des rafraichissements inutiles et couteux en ressources pour le 2° query. Rapidement, cela donne : Code :
__________________
Philippe. |
|||
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Développeur informatique Inscription : août 2012 Messages : 9 ![]() |
bonjour,
une piste : avec l’événement on change du datasource (lié au tadoquery et à la grille). mais attention : il me semble que cet événement est aussi appelé lors du chargement de la grille (prevoir soit un boolean d'initialisation ou de jouer avec l'affectation de l'evenement ) |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() retraité Inscription : octobre 2011 Messages : 87 ![]() |
Bonsoir
merci pour la réponse sincèrement, j'ai rien pigé chose qui m'échappe totalement. sans trop demander plus de précisions svp. merci |
|
|
00
|
|
|
#5 | ||||
|
Expert Confirmé
![]() ![]() |
Bonjour,Quel point vous a échappé ?
En attendant je complète ce que j'ai dit concernant les TADOQuery (les instructions SQL devront être adaptées).
Code :
Code :
__________________
Philippe. |
||||
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() retraité Inscription : octobre 2011 Messages : 87 ![]() |
Bonjour
merci pour votre réponse, j'ai testé ça n'a pas marché y a toujours un problème sans que cette fois-ci message d'erreur ??? est ce que je pourrais vous faire part de l'application svp pour un exemple bien concret merci encore. |
|
|
00
|
|
|
#7 | ||
|
Expert Confirmé
![]() ![]() |
Bonjour,
Citation:
Citation:
__________________
Philippe. |
||
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() retraité Inscription : octobre 2011 Messages : 87 ![]() |
bonsoir
voila ce que j'ai pu faire merci encore. |
|
|
00
|
|
|
#9 | |
|
Expert Confirmé
![]() ![]() |
Oups, je me suis mal fait comprendre
Citation:
__________________
Philippe. |
|
|
|
00
|
|
|
#10 |
|
Invité de passage
![]() retraité Inscription : octobre 2011 Messages : 87 ![]() |
Bonjour
je vous remercie bien vivement voilà je vous fait part de l'unit1 merci encore pour votre aide |
|
|
00
|
|
|
#11 |
|
Expert Confirmé
![]() ![]() |
Bonjour,Je voulais dire le fichier source de l'unité (unit1.pas si c'est le nom de l'unité), pas la capture d'écran...
J'ai quand même vu que tout avait été mélangé... Il faut reprendre le code gestionnaire de l'événement AfterScroll tel que je vous l'ai donné... La 2° partie de code est à placer dans la procédure qui va réaliser l'ouverture de AdoQuery2, mais pas dans le code gestionnaire. La, vous avez introduit un appel récursif à la procédure ADOQuery2AfterScroll. Ce bout de code peut éventuellement se placer dans la procédure FormCreate ou dans un procédure qui est susceptible d'ouvrir et de ré-ouvrir ADOQuery2...
__________________
Philippe. |
|
|
00
|
|
|
#12 |
|
Invité de passage
![]() retraité Inscription : octobre 2011 Messages : 87 ![]() |
Bonsoir
merci pour votre patience et surtout pour la compréhension à mon égard voilà je vous fait part code [zip] merci encore |
|
|
00
|
|
|
#13 |
|
Invité de passage
![]() retraité Inscription : octobre 2011 Messages : 87 ![]() |
Bonsoir à toute l'équipe.
|
|
|
00
|
|
|
#14 |
|
Expert Confirmé
![]() ![]() |
Bonsoir,
J'ai regardé le code. Voila la marche à suivre :
__________________
Philippe. |
|
|
00
|
|
|
#15 |
|
Invité de passage
![]() retraité Inscription : octobre 2011 Messages : 87 ![]() |
Bonjour et joyeuse nouvelle année. Que du bonheur.
mes sincères remerciements pour votre aide. au fait ce n'est pas ce que je voulais??? quand je clique sur un nom de marque il me ressort pas l’ensemble des concessionnaires commercialisant la marque sélectionnée. ex: audi --> CONS1 - CONS3 - CONS10 - CONS21. dans dbgrid CONCESSIONNAIRES. merci quand même, je vais vous casser la tête éternellement. a+ |
|
|
00
|
|
|
#16 |
|
Invité de passage
![]() retraité Inscription : octobre 2011 Messages : 87 ![]() |
Bonsoir,
pardon, il fallait lire "merci quand même, je vais pas vous casser la tête éternellement" merci encore si je peux me permettre c'est toujours sur adoquery. en l'absence de table adotable là ou il y a possibilité de lier par table grâce au master source, on est un perdu. ma question est : peut-on lier 4 tables (adoquery) svp merci encore. |
|
|
00
|
|
|
#17 | |
|
Membre Expert
![]() Dev/For/Vte/Ass Inscription : août 2008 Messages : 1 499 ![]() |
Citation:
Lier 4 tables et le termes ADOQUERY n'a pas de sens... ![]() ADOQUERY sert à l'établissement (l'execution) d'une requête SQL. avec une requête SQL tu peux effectivement lier beaucoup de tables entre elles mais quid des clés ? a+ |
|
|
|
00
|
|
|
#18 |
|
Invité de passage
![]() retraité Inscription : octobre 2011 Messages : 87 ![]() |
Bonsoir,
c'est ce que je voulais savoir justement. y a une possibilité d'un exemple ou une adresse [site] svp ? merci encore pour le tout |
|
|
00
|
|
|
#19 |
|
Invité de passage
![]() retraité Inscription : octobre 2011 Messages : 87 ![]() |
Bonjour
pas de réponse? questions restent ouvertes...! toujours merci |
|
|
00
|
|
|
#20 |
![]() ![]() Développeur informatique Inscription : mars 2005 Messages : 4 993 ![]() |
Ce n'est pourtant pas dur d'aller sur le menu SGBD et de cliquer sur SGBD & SQL après il y a une section tutoriel qui te permettra de faire tes premiers pas en SQL pour lier tes 4 tables.
__________________
Modérateur Delphi Combattez la brute Aucune réponse aux sollicitations techniques par MP Le guide du bon forumeur :
[Projet en cours] Des unités pour faciliter l'utilisation d'indy : EasyIndy 1.3 |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com