Problème de recordset

SAiSP00 - 11 juin 2001 à 22:00
 Mdeffontaines - 28 nov. 2001 à 17:08
Bon je vous explique, dans mon prog j'utilise des recordset qui reprenne donc une requete, elles sont de type dynaset et lorsque j'utilise par ex : nomdudynaset.Edit ou nomdudynaset.Delete, il part en debug et me dit : Problème de lecture seul.

Quelqu'un aurait une idée car je plance depuis deux semaines sur ce prob, alors que l'ajout quand a lui marche très bien.

Merci

5 réponses

kan tu definit ton recordset, c'est de cette facon :

Set rs = db.OpenRecordset("Select * from matable")

????????
0
Merci tous d'abord d'avoir prêté attention a mon message.
Pour le declaration du recordset je fait :

Private Sub Form_Load()
Set Dbgest = DBEngine.Workspaces(0).Databases(0)
Set dyngest_sav = Dbgest.OpenRecordset("Req_Mise_Sav", DB_OPEN_DYNASET)
Call Transfert
End Sub

Private Sub Transfert()
Numsav2 = dyngest_sav![num_sav]
Date_sav = dyngest_sav![date_mise_sav]
Raison_sav = dyngest_sav![raison]
Modifiable26 = dyngest_sav![Nom_Per]
End Sub

Req_Mise_Sav etant une requête crée dans la partie requête d'access.

Req_Mise_Sav: SELECT Sav.num_sav, Sav.date_mise_sav, Sav.raison, Périphériques.Nom_Per, Périphériques.Etat_SavFROM Sav INNER JOIN Périphériques ON (Sav.Nom_per Périphériques.Nom_Per) AND (Sav.Nom_per Périphériques.Nom_Per);
0
arf mais ouais c'est du VBA access :(
je n'ai jamais eu ce prob moi en vba :(

en vba je fais comme ca moi :

Dim mabase As Database
Dim rs As Recordset

rs.AddNew
rs!NumOffre_Commerciale = Me!NumOffre_Commerciale
rs!NomClient = Me!cbo_client.Column(0)
rs!TypeAffaire = Me!Type_Affaire
rs!DésignationAffaire = Me!Désignation_Affaire
rs!DélaiAffaire = Me!Délai_Affaire
rs!NumDevis = Me!N°Devis
rs!DateDemande = Me!Date_Demande
rs!DateRéponse = Me!Date_Réponse
rs!ResponsableCommercial = Me!cbo_resp
rs!Concurrent_Identifiés = Me!Concurrents_Identifiés
rs!Commentaires = Me!Commentaires
rs!MontantFranc = Me!Montant_Franc
rs!MontantEuro = Me!Montant_Euro
rs!MontantDollar = Me!Montant_Dollar
rs!StatutOffre = Me!Statut_Offre
rs.Update
rs.Close
mabase.Close
DoCmd.Close acForm, "F_Saisie_Offre_Commerciale", acSaveYes

ceci est un exemple ....

mais par contre je n'ai pas de prob en faisant comme ca ,
le rs.edit markel et le delete aussi ....
0
Merci pour ton aide, je vais regarder je crois que je ferme pas systématiquement la base et le recordset, peut etre est ce du a ca, sinon pour appeller un formulaire composé d'onglets, comment on fait pour tomber directement sur le bon onglets ?

Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mdeffontaines
28 nov. 2001 à 17:08
-------------------------------
Réponse au message :
-------------------------------

Merci pour ton aide, je vais regarder je crois que je ferme pas systématiquement la base et le recordset, peut etre est ce du a ca, sinon pour appeller un formulaire composé d'onglets, comment on fait pour tomber directement sur le bon onglets ?

Merci

-------------------------------
Réponse au message :
-------------------------------

arf mais ouais c'est du VBA access :(
je n'ai jamais eu ce prob moi en vba :(

en vba je fais comme ca moi :

Dim mabase As Database
Dim rs As Recordset

rs.AddNew
rs!NumOffre_Commerciale = Me!NumOffre_Commerciale
rs!NomClient = Me!cbo_client.Column(0)
rs!TypeAffaire = Me!Type_Affaire
rs!DésignationAffaire = Me!Désignation_Affaire
rs!DélaiAffaire = Me!Délai_Affaire
rs!NumDevis = Me!N°Devis
rs!DateDemande = Me!Date_Demande
rs!DateRéponse = Me!Date_Réponse
rs!ResponsableCommercial = Me!cbo_resp
rs!Concurrent_Identifiés = Me!Concurrents_Identifiés
rs!Commentaires = Me!Commentaires
rs!MontantFranc = Me!Montant_Franc
rs!MontantEuro = Me!Montant_Euro
rs!MontantDollar = Me!Montant_Dollar
rs!StatutOffre = Me!Statut_Offre
rs.Update
rs.Close
mabase.Close
DoCmd.Close acForm, "F_Saisie_Offre_Commerciale", acSaveYes

ceci est un exemple ....

mais par contre je n'ai pas de prob en faisant comme ca ,
le rs.edit markel et le delete aussi ....

-------------------------------
Réponse au message :
-------------------------------

Merci tous d'abord d'avoir prêté attention a mon message.
Pour le declaration du recordset je fait :

Private Sub Form_Load()
Set Dbgest = DBEngine.Workspaces(0).Databases(0)
Set dyngest_sav = Dbgest.OpenRecordset("Req_Mise_Sav", DB_OPEN_DYNASET)
Call Transfert
End Sub

Private Sub Transfert()
Numsav2 = dyngest_sav![num_sav]
Date_sav = dyngest_sav![date_mise_sav]
Raison_sav = dyngest_sav![raison]
Modifiable26 = dyngest_sav![Nom_Per]
End Sub

Req_Mise_Sav etant une requête crée dans la partie requête d'access.

Req_Mise_Sav: SELECT Sav.num_sav, Sav.date_mise_sav, Sav.raison, Périphériques.Nom_Per, Périphériques.Etat_SavFROM Sav INNER JOIN Périphériques ON (Sav.Nom_per Périphériques.Nom_Per) AND (Sav.Nom_per Périphériques.Nom_Per);

-------------------------------
Réponse au message :
-------------------------------

kan tu definit ton recordset, c'est de cette facon :

Set rs = db.OpenRecordset("Select * from matable")

????????

-------------------------------
Réponse au message :
-------------------------------

Bon je vous explique, dans mon prog j'utilise des recordset qui reprenne donc une requete, elles sont de type dynaset et lorsque j'utilise par ex : nomdudynaset.Edit ou nomdudynaset.Delete, il part en debug et me dit : Problème de lecture seul.

Quelqu'un aurait une idée car je plance depuis deux semaines sur ce prob, alors que l'ajout quand a lui marche très bien.

Merci
0
Rejoignez-nous