Error jet database engine

Estoy realizando la copia de datos registro a registro de una base de datos a otra mediante el siguiente código:
With RSOrigen
On Error GoTo SiguienteRegistro
Do Until .EOF
DBEngine.Idle (dbRefreshCache)
RSDestino.AddNew
For Each fldBucle In .Fields
strNombreCampo = fldBucle.Name
ValorCampo = fldBucle.Value
RSDestino.Fields(fldBucle.Name).Value = fldBucle.Value
Next fldBucle
RSDestino.Update
SiguienteRegistro:
RSOrigen.MoveNext
registroactual = registroactual + 1
Loop
End With
PEro en el punto RSDestino.Update, después de copiar diversos registros, el access me da el siguiente mensaje de error:
' The Microsoft jet database engine stopped the process because you and another user are attempting to change the same data at the same time'.
La cuestión es que las bases de datos las tengo en local y no hay ninguna otra instancia tirando de ellas. Es posible que algún registro se quedase marcado de esta forma, ¿cómo puedo desmarcarlo? ¿Hay alguna otra solución que pueda adoptar para realizar la copia sin este problema desde Visual Basic del Access97?
Un saludo y muchas gracias.
José Angel.

1 respuesta

Respuesta
1
Yo te recomiendo que pruebes a eliminar la sentencia on error para probar.
No se cual es el error pero podría ocurrir que te da un error después del .addnew, por lo que continua el código en siguienteRegistro donde haces un .movenext. O sea tines un comienzo de anexión de registro y un movenext. Si se da ese caso deberías ejecutar un .CancelUpdate.
Prueba por si es ese el error (a lo mejor acierto)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas