IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

erreur lors de l'ouverture de 2 recordset


Sujet :

VB 6 et antérieur

  1. #1
    gup
    gup est déconnecté
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 39
    Points : 28
    Points
    28
    Par défaut erreur lors de l'ouverture de 2 recordset
    bonjour,

    voilà, j'ai une erreur 3705 "n'est pas autorisé si l'objet est ouvert" sur mon 2eme recordset.
    voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
    Option Explicit
     
        Dim Ct As ADODB.Connection
        Dim RSCat As ADODB.Recordset
        Dim RSArt As ADODB.Recordset
     
    Private Sub Form_Load()
     
        Dim ReqCat As String
     
        Set Ct = New ADODB.Connection
        Ct.Provider = "Microsoft.Jet.Oledb.4.0"
        Ct.ConnectionString = "c:\bd1.mdb"
        Ct.Open
        Set RSCat = New ADODB.Recordset
        RSCat.CursorLocation = adUseClient
        RSCat.Open "SELECT IDCategorie, cat_prod FROM categorie;", Ct, adOpenDynamic, adLockOptimistic
     
        With RSCat
            If .RecordCount > 1 Then
                .MoveFirst
                Do While Not .EOF
                    CmbCat.AddItem RSCat!cat_prod
                    .MoveNext
                Loop
            End If
        End With
        RSCat.Close
     
     
    '                            Remplissage du treeview
     
        Dim ReqArt As String
        Set RSArt = New Recordset
        For i = 1 To (CmbCat.ListCount)
            ReqArt = "SELECT article.IDCategorie, categorie.cat_prod, article.article"
            ReqArt = ReqArt + ", article.prix_unitaire, article.quantite, "
            ReqArt = ReqArt + "article.IDCategorie, categorie.IDcategorie "
            ReqArt = ReqArt + "FROM categorie INNER JOIN article ON "
            ReqArt = ReqArt + "categorie.IDcategorie = article.IDCategorie "
            ReqArt = ReqArt + "WHERE categorie.cat_prod='" + CmbCat.List(i) + "';"
     
            RSArt.Open ReqArt, Ct, adOpenDynamic, adLockOptimistic
     
        ...
        next i
    Je précise que j'ai essayé de rajouter une 2eme connection Ct2 en fermant la premiere, puis set ct= nothing, mais rien n'y fait, cela fonctionne bien pour RSCat, mais pas pour RSArt.

    Auriez-vous une idée du probleme s'il vous plait ?

  2. #2
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Bonjour,

    J'aurai tendance à dire que l'erreur est logique.

    Quand tu fais :

    For i = 1 To (CmbCat.ListCount)
    ReqArt = "SELECT article.IDCategorie, categorie.cat_prod, article.article"
    ReqArt = ReqArt + ", article.prix_unitaire, article.quantite, "
    ReqArt = ReqArt + "article.IDCategorie, categorie.IDcategorie "
    ReqArt = ReqArt + "FROM categorie INNER JOIN article ON "
    ReqArt = ReqArt + "categorie.IDcategorie = article.IDCategorie "
    ReqArt = ReqArt + "WHERE categorie.cat_prod='" + CmbCat.List(i) + "';"

    RSArt.Open ReqArt, Ct, adOpenDynamic, adLockOptimistic

    ...
    next i
    ton "RSArt.Open ..." étant dans une boucle, tu essaies de faire le open plusieurs fois.

  3. #3
    Membre éclairé Avatar de Le Pharaon
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 880
    Points : 742
    Points
    742
    Par défaut
    Bien vu pc75
    Voici une solution !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    .......
    RSArt.Open ReqArt, Ct, adOpenDynamic, adLockOptimistic 
     
    ... 
    RSArt.Close ' Pour fermer le recordset 
    ....
    next i
    Scuse me while I kiss the sky ! Jimi Hendrix

  4. #4
    gup
    gup est déconnecté
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 39
    Points : 28
    Points
    28
    Par défaut ca marche mieux ! :)
    ok, merci! ca me sautait au yeux et je le voyait meme pas ! :s

    merci

Discussions similaires

  1. [RCP]Erreur lors de l'ouverture d'un MessageDialog
    Par Cpt Anderson dans le forum Eclipse Platform
    Réponses: 7
    Dernier message: 20/11/2006, 17h50
  2. Erreur lors de l'ouverture de Visual Basic Editor
    Par snoopy69 dans le forum Access
    Réponses: 8
    Dernier message: 09/05/2006, 11h39
  3. Erreur lors de l'ouverture de vb6
    Par Asdorve dans le forum VB 6 et antérieur
    Réponses: 32
    Dernier message: 19/04/2006, 16h19
  4. Réponses: 1
    Dernier message: 22/11/2005, 15h28
  5. [VB6] Erreur lors de l'ouverture d'un document Word
    Par Marco le Pouillot dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 03/01/2003, 09h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo