Project Access, procedure stockee VBA

mouse Messages postés 136 Date d'inscription mercredi 4 avril 2001 Statut Membre Dernière intervention 13 avril 2007 - 19 févr. 2003 à 09:37
choupi64 Messages postés 21 Date d'inscription mardi 20 janvier 2004 Statut Membre Dernière intervention 2 septembre 2005 - 18 févr. 2005 à 09:28
Bonjour,

je travaille avec un project Access 2000 en client et SQL Server 7 en SGBD.

J'ai creer sur mon serveur une procedure stockee avec plusieur parametre

Je voudrais afficher le resultat de cette procedure dans un controls ListBox.

Or lorsque j'ecris dans la propriete Source Control (rowsource) de la list box le nom de la procedure, celui ci me met des msgbox demandant la valeur des parametres.

Ce que je voudrait, c'est pouvoir executer la procedure puis afficher le resultat
Faire un truc comme cela :

Dim Cmd As ADODB.Command, Prm1 As ADODB.Parameter, Prm2 As ADODB.Parameter

    Set Cmd = New ADODB.Command
    Cmd.ActiveConnection = CurrentProject.Connection
    Cmd.CommandType = adCmdStoredProc
    Cmd.CommandText = "nom_de_ma_procedure"
    Set Prm1 = Cmd.CreateParameter("@param1", adInteger, adParamInput)
    Set Prm2 = Cmd.CreateParameter("@param2", adDate, adParamInput)

    Cmd.Parameters.Append Prm1
    Prm1.Value = MaValue1
    Cmd.Parameters.Append Prm2
    Prm2.Value = MaValue2
    Cmd.Execute


puis afficher le resultat de Cmd.Execute dans la liste. Mais le probleme, c'est que Cmd.Execute et de type recordset, je ne peux donc pas ecrire

me.MaListe.Rowsource =  Cmd.Execute


Donc je sais pas comment faire....
Quelqu'un pourrai m'aider ?

Je tiens a preciser que le resultat de cmd.execute peut etre tres long, et que je ne peux donc pas juste creer chaine de caractere avec toutes les valeurs, et ensuite affecter cette chaine a ma listbox, car elle est trop longue...

Merci pour votre aide

1 réponse

choupi64 Messages postés 21 Date d'inscription mardi 20 janvier 2004 Statut Membre Dernière intervention 2 septembre 2005
18 févr. 2005 à 09:28
Ton probleme (si je me trompe pas) est qu'une procedure ne renvoi rien, il faut faire une fonction.
0
Rejoignez-nous