Bonjour, j'aimerais savoir si quelqu'un peut m'expliquer comment placer deux
variables globales au projet. Cette variable devrait être initialisée dans un
module pour être ensuite utilisée dans 5 form.
Voici la déclaration des deux variables :
Dim oCn As ADODB.Connection
Dim oRs As ADODB.Recordset
maintenant comment je dois m'y prendre pour les utilisers partout .... et
quelles doivent être leurs appelles ? (juste oCn = ... ou Module.Ocn = ???)
De plus, j'utilise beaucoup de requêtes SQL dans mon programme alors est-ce
que je dois fermer à chaque fois la connexion (oCn) ou pas ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
ng
Salut,
Il faut les mettre en public dans ton module :
Option explicit
Public oCn As ADODB.Connection Public oRs As ADODB.Recordset
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Vincent wrote:
Bonjour, j'aimerais savoir si quelqu'un peut m'expliquer comment placer deux variables globales au projet. Cette variable devrait être initialisée dans un module pour être ensuite utilisée dans 5 form.
Voici la déclaration des deux variables :
Dim oCn As ADODB.Connection Dim oRs As ADODB.Recordset
maintenant comment je dois m'y prendre pour les utilisers partout .... et quelles doivent être leurs appelles ? (juste oCn = ... ou Module.Ocn = ???)
De plus, j'utilise beaucoup de requêtes SQL dans mon programme alors est-ce que je dois fermer à chaque fois la connexion (oCn) ou pas ?
Merci !
Salut,
Il faut les mettre en public dans ton module :
Option explicit
Public oCn As ADODB.Connection
Public oRs As ADODB.Recordset
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
Vincent wrote:
Bonjour, j'aimerais savoir si quelqu'un peut m'expliquer comment
placer deux variables globales au projet. Cette variable devrait être
initialisée dans un module pour être ensuite utilisée dans 5 form.
Voici la déclaration des deux variables :
Dim oCn As ADODB.Connection
Dim oRs As ADODB.Recordset
maintenant comment je dois m'y prendre pour les utilisers partout
.... et quelles doivent être leurs appelles ? (juste oCn = ... ou
Module.Ocn = ???)
De plus, j'utilise beaucoup de requêtes SQL dans mon programme alors
est-ce que je dois fermer à chaque fois la connexion (oCn) ou pas ?
Public oCn As ADODB.Connection Public oRs As ADODB.Recordset
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
Vincent wrote:
Bonjour, j'aimerais savoir si quelqu'un peut m'expliquer comment placer deux variables globales au projet. Cette variable devrait être initialisée dans un module pour être ensuite utilisée dans 5 form.
Voici la déclaration des deux variables :
Dim oCn As ADODB.Connection Dim oRs As ADODB.Recordset
maintenant comment je dois m'y prendre pour les utilisers partout .... et quelles doivent être leurs appelles ? (juste oCn = ... ou Module.Ocn = ???)
De plus, j'utilise beaucoup de requêtes SQL dans mon programme alors est-ce que je dois fermer à chaque fois la connexion (oCn) ou pas ?
Dim oCn As ADODB.Connection Dim oRs As ADODB.Recordset
maintenant comment je dois m'y prendre pour les utilisers partout .... et quelles doivent être leurs appelles ? (juste oCn = ... ou Module.Ocn = ???)
De plus, j'utilise beaucoup de requêtes SQL dans mon programme alors est-ce que je dois fermer à chaque fois la connexion (oCn) ou pas ?
Merci !
bonjour, Je vous conseille d'utiliser les withevents, pour pouvoir forwarder les évènements de l'ado au forms. exemple :
global withevents oCn As ADODB.Connection global withevents oRs As ADODB.Recordset
Aussi, encore mieux, encapsuler la gestion de la base de données dans une classe qui elle sera globale au projet. exemple :
global withevents g_objDb as clsDatabase
Attention à la gestion des évenements dans un module de base qui si je me rappel bien n'est pas autorisé.
Donc, pour résumer, le mieux, c'est de créer une classe de gestion des accès db, de la déclarer global au projet dans un module de base (sans withevents), ceci pour pouvoir garder une portée globale au projet et ne pas devoir garder ouvert une forme dite principal pendant toute la durée de vie du projet. Et pour chaque forms faisant appel à la db, vous créez un objet de type de la classe db, avec une portée unique à la forme et à chaque ouverture de forms, vous passez en référence l'objet global db à celui local à la form.
Pour ce qui est de garder ouvert une connection pendant toute la durée du programme, je ne pense pas que c'est une bonne idée. N'ouvrez qu'au besoin votre connections. Ceci afin de libérer une connection pour un autre user (et question aussi de licence soit de l'os, ou du sgbdr ou même de possibilité de l'os : windows 2000 professionnel ne permet, si je me rappel bien que 5 accès coucurent). Bon, si vous travaillez en mono poste la question ne se pose pas, garder la ouverte.
@+Quaz
-- This is an automatic signature of MesNews. Site : http://mesnews.no-ip.com
Dim oCn As ADODB.Connection
Dim oRs As ADODB.Recordset
maintenant comment je dois m'y prendre pour les utilisers partout .... et
quelles doivent être leurs appelles ? (juste oCn = ... ou Module.Ocn = ???)
De plus, j'utilise beaucoup de requêtes SQL dans mon programme alors est-ce
que je dois fermer à chaque fois la connexion (oCn) ou pas ?
Merci !
bonjour,
Je vous conseille d'utiliser les withevents, pour pouvoir forwarder les
évènements de l'ado au forms.
exemple :
global withevents oCn As ADODB.Connection
global withevents oRs As ADODB.Recordset
Aussi, encore mieux, encapsuler la gestion de la base de données dans
une classe qui elle sera globale au projet.
exemple :
global withevents g_objDb as clsDatabase
Attention à la gestion des évenements dans un module de base qui si je
me rappel bien n'est pas autorisé.
Donc, pour résumer, le mieux, c'est de créer une classe de gestion des
accès db, de la déclarer global au projet dans un module de base (sans
withevents), ceci pour pouvoir garder une portée globale au projet et
ne pas devoir garder ouvert une forme dite principal pendant toute la
durée de vie du projet. Et pour chaque forms faisant appel à la db,
vous créez un objet de type de la classe db, avec une portée unique à
la forme et à chaque ouverture de forms, vous passez en référence
l'objet global db à celui local à la form.
Pour ce qui est de garder ouvert une connection pendant toute la durée
du programme, je ne pense pas que c'est une bonne idée.
N'ouvrez qu'au besoin votre connections. Ceci afin de libérer une
connection pour un autre user (et question aussi de licence soit de
l'os, ou du sgbdr ou même de possibilité de l'os : windows 2000
professionnel ne permet, si je me rappel bien que 5 accès coucurent).
Bon, si vous travaillez en mono poste la question ne se pose pas,
garder la ouverte.
@+Quaz
--
This is an automatic signature of MesNews.
Site : http://mesnews.no-ip.com
Dim oCn As ADODB.Connection Dim oRs As ADODB.Recordset
maintenant comment je dois m'y prendre pour les utilisers partout .... et quelles doivent être leurs appelles ? (juste oCn = ... ou Module.Ocn = ???)
De plus, j'utilise beaucoup de requêtes SQL dans mon programme alors est-ce que je dois fermer à chaque fois la connexion (oCn) ou pas ?
Merci !
bonjour, Je vous conseille d'utiliser les withevents, pour pouvoir forwarder les évènements de l'ado au forms. exemple :
global withevents oCn As ADODB.Connection global withevents oRs As ADODB.Recordset
Aussi, encore mieux, encapsuler la gestion de la base de données dans une classe qui elle sera globale au projet. exemple :
global withevents g_objDb as clsDatabase
Attention à la gestion des évenements dans un module de base qui si je me rappel bien n'est pas autorisé.
Donc, pour résumer, le mieux, c'est de créer une classe de gestion des accès db, de la déclarer global au projet dans un module de base (sans withevents), ceci pour pouvoir garder une portée globale au projet et ne pas devoir garder ouvert une forme dite principal pendant toute la durée de vie du projet. Et pour chaque forms faisant appel à la db, vous créez un objet de type de la classe db, avec une portée unique à la forme et à chaque ouverture de forms, vous passez en référence l'objet global db à celui local à la form.
Pour ce qui est de garder ouvert une connection pendant toute la durée du programme, je ne pense pas que c'est une bonne idée. N'ouvrez qu'au besoin votre connections. Ceci afin de libérer une connection pour un autre user (et question aussi de licence soit de l'os, ou du sgbdr ou même de possibilité de l'os : windows 2000 professionnel ne permet, si je me rappel bien que 5 accès coucurent). Bon, si vous travaillez en mono poste la question ne se pose pas, garder la ouverte.
@+Quaz
-- This is an automatic signature of MesNews. Site : http://mesnews.no-ip.com