routine buggée? [VB/ODBCDirect] - VB/VBA/VBS - Programmation
Marsh Posté le 19-07-2002 à 17:58:14
avant d'updater un recordset faut l'editer il me semble
Code :
|
Marsh Posté le 22-07-2002 à 09:11:46
Merci pour la réponse.
j'ai changé de place rs.Edit pour le mettre dans la condition de la boucle. mais le résultat reste le même...
je crois que la base (Criteria) n'est pas 100% compatible avec ODBC.
Marsh Posté le 19-07-2002 à 16:56:48
une petite question :
pour mettre à jour une base de Données ODBC qui ne fonctionne avec rien (ADO, etc...)
lorsqu le programme tourne pour faire un update pas de probleme.
mais quand je mets effectivement un champs à mettre à jour
rs!Champs="ESSAI"
j'ai le message "Erreur d'exécution 3146
ODBC -- l'appel a échoué"
cool mais je suis connecter en local et ca marche sans ajouter cette ligne : y a t'il un truc d'anormal dasn mon code
Dim ws As dao.Workspace
Dim db As dao.Database
Dim rs As dao.Recordset
Set ws = dao.CreateWorkspace("ws", "monlog", "monpw", dbUseODBC)
Set db = ws.OpenDatabase("", dbDriverNoPrompt, False, "ODBC;DSN=Test;" )
For i = 0 To compteur - 1
sqlreq3 = "select ARTI_CODE,ARTI_COEF,ARTI_NOMR from TABLE where ARTI_CODE = '" + col0(i) + "' "
Set rs = db.OpenRecordset(sqlreq3, dbOpenDynamic, dbRunAsync, dbOptimisticValue)
rs.Edit
Do While Not rs.EOF
If rs.Fields(0).Value = col0(i)
rs!ARTI_NOMR = "ESSAI" 'essai
col3(i) = Format(col3(i), "#######0.00" )
'If col3(i) <> "" Then rs!ARTI_PV = CSng(col3(i)) 'prix vente
rs.Update
Exit Do
End If
rs.MoveNext
Loop
Next i
rs.Close
db.Close
Set db = Nothing