Bonjour
est il possible de créer des requete dans l'éditeur Access prenant en compte certain paramètres.
et de les executer via le code, en lui passant le paramètre?
sous A97.
Merci.
Bonjour
est il possible de créer des requete dans l'éditeur Access prenant en compte certain paramètres.
et de les executer via le code, en lui passant le paramètre?
sous A97.
Merci.
merci
il se situe là:
http://general.developpez.com/cours/
??
ou c'est mes yeux?
plutot la
donc en fait cela consiste à récuperer le contenu de la requete "graphique", de le mettre dans une variable, et de modifier le critère par la valeur qu'on veut lui passé avec un Replace.
C'est ca?
Et si je veux me créer une procédure du genre que j'appelerais comme ca:
call plExecuteRequeteParametree(pNomrequete as string, p1, p2, pn)
Comment je peux faire, car là, je ne connais pas précisement(l'orthographe) du ou des paramètres?
j'ai pas compris ce que tu as dit mais le mieux est de créé des variable dans ton code et de mettre ça
par exemple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 docmd.runsql ("SELECT monchamp FROM matable WHERE [mavariable]")
bjr,
ne pas oublier la faq, parfois c'est utile :
http://access.developpez.com/faq/?page=SQL#ReqParamVar
jusqu'à présent, je fonctionnais uniquement par code (pas même des requetes via l'éditeur).
Ceci dit, un utilisateur voudrait pouvoir executer des requetes "graphiquement" en saisissant betement les paramètres qd la boite de dialogue type le lui demande.
Donc je voudrais que la même requete, soit executable à la main (par le novice)
et via le code en lui passant les paramètres.
ex:
dans l'onglet requete, je crée graphiquement ou en la saisissant la requete
"QRY_Select_MaTableSelonParam"
Le code de celle ci est:
select * from matable
where
matable.col1 = p1 and
matable.col2 = p2 and
matable.col3 > p3
L'utilisateur la lancera en doublecliqaunt dessus, et devra saisir p1, p2,p3 successivement, puis le résultat lui sera rendu.
Moi dans un prog,
je veux executer cette requete par une fontion qui me permettra d'executer toutes les requetes quelque soit le nb de paramètre via le code.
(bien évidemment, je devrais par le code, mentionner autant de paramètre qu'il y en a dans la requete "graphique")
du genre:
plExecuteRequeteParam("QRY_Select_MaTableSelonParam",'toto','tata',21)
Est ce que je me fais mieux comprendre?
Merci en tout cas de m'aider.
Envoyé par Arkham46
merci je n'avais pas vu
je regardais ici:
http://warin.developpez.com/access/requeteparametre/
mais dans ce cas précis, on connais le nom du parametre.
Moi, ca serait sans le connaitre, ni connaitre le nombre.
qu'est ce que tu appelle une requéte "graphique"?
pardon, je m'exprime mal.Envoyé par polo(31)
par requete graphique, je voulais dire une requete crée dans l'onglet Requetes.
En fait j'utilise Windev qui permet
comme sous access, de créer des requetes via un éditeur visuel de requete.
Ces requetes peuvent contenir n paramètres.
Puis pour les executer dans le programme (en code),
on fait un:
hexecuterequetesql(NomRequete, paramètres p1, p2, pn)
et la requete (crée dans l'éditeur graphique est éxecuté en prenant en compte les paramètres passés)
Vous me cernez?
merci les gars
Tu peux sûrement parcourir la collection Parameters :Envoyé par LostIN
Code écris vite fait sans tester... : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 dim lCpt as integer With CurrentDb.QueryDefs("TAREQUETE") For lCpt = 0 to .Parameters.Count - 1 msgbox .Parameters(lCpt).Name ' Nom du paramètre msgbox .Parameters(lCpt).Value ' Valeur du paramètre Next End With
PS : Le terme pour requête graphique je crois que c'est de QBE que tu parles
je ne connais que trés peu les *dev je crois qu'il est temp pour moi de me retiré, bonne chance
merci à tous
c'etait bien QBE (oubli).
je vais essayer de me dépatouiller avec l'info d' Arkham46.
Je pensais qu'il y avait peut être une ressource toute faite.
Mais bon, une fois faite, je la mettrais à dispo.
je vais pas m'ennuyé.
ca ira très bien comme ca.
Pour passer des paramètres à une requête, il y a bien sur les Paramètres de la requete, voire des variables définies en VB, mais il existe aussi une solution simple :
Une table ne contenant qu'un seul enregistrement.
Cet enregistrement peut bien sur contenir beaucoup de champs tels que TxTVA1, TxTVA2, Date_fin_periode etc....
On insère la table dans la requete nécessitant les paramètres et on se sert des champs comme critères ou constantes.
Attention :
* Garantir un seul enregistrement (il y a un post la dessus sur ce site) sinon gare aux petits lapins comme on dit chez nous (multiplication des enregistrements)
* Ne marche pas si on a des jointures externes dans la requete (c.a.d des fleches sur les liens), mais il suffit souvent de décaler le pb en faisant une deuxième requete.
On a avec cette solution la souplesse d'utilisation des tables ... et des possibilités quasi infinies puisqu'on peut facilement modifier les paramètres via des requetes appropriées.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager