access: mise à jour de table distante par recordset
dans une base access 2003 sur mon poste, j'ai un formulaire dans lequel je saisis quelques informations et un bouton qui appelle du code pour:
etablir une connexion (cnx_test) vers une base distante où se trouve la table "test", ouvrir un recordset (rcs_test), y recopier les infos du formulaire et envoyer tout ça dans la table.
la connexion est ok (connection.state = 1)
le recordset contient bien n enregistrement au debut du code et n+1 à la fin
MAIS :
dans la table je n'ai toujours que n enregistrements
tout ce que j'ai pu obtenir comme indication d'erreur est "erreur n° 0" sans plus.
Par ailleurs dans une autre application access fonctionnant de la meme façon, et sur le meme pc, tout est ok .
Code:
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 48
| Private Sub Commande8_Click()
On Error GoTo erreur
Const lien_dsn = "dsn=prospect;uid=admin;pwd="
Dim cnx_test As New ADODB.Connection
Dim rcs_test As New ADODB.Recordset
Debug.Print "etat connexion:" & cnx_test.State
cnx_test.Open lien_dsn
rcs_test.CursorLocation = adUseClient
rcs_test.Open "test", cnx_test, adOpenDynamic, adLockBatchOptimistic
rcs_test.MoveLast
Debug.Print "nb enregistrements dans rcs " & rcs_test.RecordCount
Debug.Print "dernier: " & rcs_test.Fields(0).Value
rcs_test.AddNew
Debug.Print "actuel: " & rcs_test.Fields(0).Value
rcs_test![Nom] = Me.Texte0
rcs_test![cp] = Me.Texte2
rcs_test![representant] = Me.Texte4
rcs_test![fam] = Me.Texte6
rcs_test.Update
Debug.Print "ajout: " & rcs_test.Fields(0).Value
Debug.Print "etat connexion:" & cnx_test.State
Debug.Print "etat curseur" & rcs_test.State
Debug.Print "nb enregistrements dans rcs " & rcs_test.RecordCount
rcs_test.Close
Set rcs_test = Nothing
Set cnx_test = Nothing
Exit Sub
erreur:
If cnx_test.Errors.Count > 0 Then MsgBox cnx_test.Errors.Item(0)
End Sub |
les instructions debug.print me renvoient:
etat connexion:0
nb enregistrements dans rcs 2
dernier: sdf
actuel:
ajout: dupont
etat connexion:1
etat curseur1
nb enregistrements dans rcs 3
je puis eventuellement envoyer un document avec quelques impressions d'ecrans (pas de panique, 48 ko seulement).
merci