Verification recordset

Signaler
Messages postés
30
Date d'inscription
dimanche 22 janvier 2006
Statut
Membre
Dernière intervention
1 avril 2010
-
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
-
Bonjour je suis débutant en VB et je veu trouver(si possible) comment faire pour savoir si un recordset est actuellement utiliser
si oui le fermer pour pouvoir le réutiliser ailleur.
 merci.

4 réponses

Messages postés
1883
Date d'inscription
samedi 1 avril 2006
Statut
Membre
Dernière intervention
20 novembre 2007
2
Bonsoir,
Tout dépend comment il a été déclaré...
>Si c' est en local et propre à une routine),
il sera automatiquement fermé dès lors que la routine
qui l' utilise est terminée .
>Si c' est en public et donc utilisable partout , on a alors
le choix entre le fermer explicitement avec la méthode Close.
ou alors le redéfinir en l' associant à une nouveau jeu d' enregistrement
sans même le fermer auparavent.
Quand à la question de savoir s' il est ouvert ou pas , personnellement
j' en connais pas.Peut être parce que je n' y avais jamais pensé...
D' une façon contourné peut être: en testant le recordcount:
1° Renvoi d' une valeur >=0  => il est défini est ouvert
2° Message d' erreur :"Bloc With non défini" => pas ouvert
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut,
Si il est effectivement déclaré en public, tu peux essayer simplement de le fermer + Gestion d'erreur.Si mes souvenirs sont exact, VB génère une erreur si tu essaies de fermer un recordset non ouvert.

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
1141
Date d'inscription
mercredi 7 mars 2007
Statut
Membre
Dernière intervention
19 septembre 2007
3
Salut,

n'y a t-il pas une propriété state pour l'objet recordset. En VBA, je l'ai et je pense que ca pourrait correspondre au pb.
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut,
Ah bah oui effectivement il y a une propriété State....
Si Ferme Rst.State <gras>0 Si Ouvert Rst.State</gras> 1 MAIS IL FAUT QUE L'OBJET SOIT INSTANCIE

@+: Ju£i?n
Pensez: Réponse acceptée