Retourner un recordset [Résolu]

cs_Tipo 82 Messages postés dimanche 2 novembre 2003Date d'inscription 13 avril 2017 Dernière intervention - 23 déc. 2004 à 14:29 - Dernière réponse : cs_Tipo 82 Messages postés dimanche 2 novembre 2003Date d'inscription 13 avril 2017 Dernière intervention
- 23 déc. 2004 à 16:31
Ma question est simple :

Est-il possible de créer un fonction qui retourne un recordset ? Et si oui comment ?

Merci a+
Afficher la suite 

6 réponses

cs_DARKSIDIOUS 15838 Messages postés jeudi 8 août 2002Date d'inscription 4 mars 2013 Dernière intervention - 23 déc. 2004 à 16:26
+3
Utile
Forcément, tu ne lui fait rien renvoyé :

Public Function OuvreRecord(Req As String) As ADODB.Recordset
Set base = New ADODB.Connection
base.Provider = "Microsoft.Jet.Oledb.4.0"
base.ConnectionString = "cvtst.mdb"
base.Open
Set rs = New ADODB.Recordset
rs.Open Req, base, adOpenDynamic
Set OuvreRecord = rs
End Function
_______________________________________

DarK Sidious

[Responsable API/VB du site www.ProgOtoP.com]
Téléchargez ProgOtoP API Viewer
Cette réponse vous a-t-elle aidé ?  
cs_DARKSIDIOUS 15838 Messages postés jeudi 8 août 2002Date d'inscription 4 mars 2013 Dernière intervention - 23 déc. 2004 à 15:02
0
Utile
Oui bien sûr, il te suffit de spécifié le retour de ta fonction étant de type Recordset :

Public Function Fonction() As Recordset 'ou ADODB.Recordset sous ADO
_______________________________________

DarK Sidious

[Responsable API/VB du site www.ProgOtoP.com]
Téléchargez ProgOtoP API Viewer
cs_Tipo 82 Messages postés dimanche 2 novembre 2003Date d'inscription 13 avril 2017 Dernière intervention - 23 déc. 2004 à 16:07
0
Utile
Ok mais mon problème se situe un peu plus loin :

J'ai ma fonction :

Public Function OuvreRecord(Req As String) As Recordset

Lorsque j'appelle ma fonction, je voudrai récupérer le résultat dans une variable recordset. J'ai essayé un truc du genre

set nouveaurecordset=Ouvrerecord(req)

Mais ça ne marche pas. Peux-tu m'en dire plus ?

Merci
cs_DARKSIDIOUS 15838 Messages postés jeudi 8 août 2002Date d'inscription 4 mars 2013 Dernière intervention - 23 déc. 2004 à 16:16
0
Utile
Ah ca marche très bien chez moi en tout cas sur un projet sur lequel je planche pour le boulot.

reste à savoir si à l'intérieur de ta fonction tout marche bien.

Que veux-tu dire par "ca marche pas" ? C'est quoi qui ne marche pas ?
_______________________________________

DarK Sidious

[Responsable API/VB du site www.ProgOtoP.com]
Téléchargez ProgOtoP API Viewer
cs_Tipo 82 Messages postés dimanche 2 novembre 2003Date d'inscription 13 avril 2017 Dernière intervention - 23 déc. 2004 à 16:24
0
Utile
La fonction :

Public Function OuvreRecord(Req As String) As ADODB.Recordset
Set base = New ADODB.Connection
base.Provider = "Microsoft.Jet.Oledb.4.0"
base.ConnectionString = "cvtst.mdb"
base.Open
Set rs = New ADODB.Recordset
rs.Open Req, base, adOpenDynamic
End Function

La fonction appelante fait :

Public Function NumInterne() As Integer
Dim ess As Recordset
Set ess = New Recordset
Set ess = OuvreReq("avec ma reqête en param")
MsgBox (ess.Fields(1).Value) -> pour tester
End Function

A l'exécution vb me répond variable objet non définie ?
cs_Tipo 82 Messages postés dimanche 2 novembre 2003Date d'inscription 13 avril 2017 Dernière intervention - 23 déc. 2004 à 16:31
0
Utile
J'suis trop ***, j'avais la solution sous les yeux!

Il est tant que je prenne des vacances!

Merci pour ton aide si précieuse

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.