Conflicto de escritura

Tenemos una aplicación access sobre una base de datos SQLServer y me ha salido el siguiente conflicto al intentar grabar: otro usuario modifico este registro después de que usted comenzó a modificarlo.
Y a partir de ese momento cada vez que intento guardar en ese u otro registro me dice que es imposible guardar este objeto ahora, se produjo un error mientras intentaba guardar el objeto.
He vuelto a hacer toda la vinculación de las tablas de nuevo pero nada. Además esto solo me ocurre en este ordenador, en los demás de la red funciona correctamente el access.
Si voy a la tabla correspondiente desde el access tampoco me deja cambiar nada, me da el mismo error. Pero en SQLServer si me deja cambiar los valores de esas mismas talas.
¿Si supieras cual puede ser la razón del fallo te agradecería mucho que me ayudases?.

2 Respuestas

Respuesta
1
¿Qué tiene de distinto el ordenador donde NO funciona con respecto al resto de ordenadores que SI fincionan?
No creo que tenga nada distinto, ya que la aplicación access es exactamente la misma en todos los ordenadores y la vinculación de tablas esta hecha de la misma manera.
Otros programas que existan en el ordenador no creo que tenga nada que ver.
Lo único que me he planteado es que pueda ser algún problema de permisos de usuarios. Pero también creo que todos los ordenadores tienen el mismo usuario y si tiene permiso para la acción select no se porque no la tiene para la modificación y la agregación de registros.
Pero no tengo muy claro como se sabe cual es el usuario de cada ordenador (creo que todos tienen el usuario: sa contraseña: sa que es el usuario por defecto en sqlserver ¿no? ).
¿No se si te he aclarado algo?, pero si se te ocurriese alguna solución te agradecería mucho que me ayudases.
Muchas gracias y un saludo soria4xse.
Para comprobar si efectivamente la base de datos es la misma o no, a parte del método visual (explorador de windows, propiedades, tamaño, fecha, etc) esta es una gran herramienta:
http://www.softwareaddins.com/CompareWiz.htm
Perdona que siga insistiendo en mi primera respuesta, pero cuando hay varias copias en uso todo puede ocurrir. Si efectivamente es igual, seguimos adelante, sin problema.
Comprobado que son iguales las bases de datos.
Los siguientes elementos a comprobar, serían:
1) Que no haya abierta una segunda instancia de access (ver en administrador de tareas, se puede acceder a el pulsando <contro> + <alt> + <supr>)
2) que no haya ningun elemento de programación de acceso a datos (DAO o ADO) que dentro de la aplicacion se pueda quedar abierto y sin cerrar explicitamente en el curso del programa, por ejemplo, cualquier "recordset.open" o cualquier "basededatos.openrecorset" tienen su correspondiente "recordset.close" y "set recordset=nothing"
---
La opción 0 es obvia: formatear el terminal inoperante y cargarle el sistema de los terminales funcionales, al menos windows y office / access con el mismo conjunto de parches / actualizaciones, que si bien no es lo ideal puesto que no nos codumenta cara a nuevas incidencias, tampoco esta de más descartarla puesto que no requiere un estudio/esfuerzo más profundo.
Gracias por tu respuesta y perdona por la tardanza en responder pero estaba un poco liado, probaré las tres opciones haber si soluciono el problema.
Respuesta
1
No tengo mucha experiencia con aplicaciones en access, pero lo que te recomendaría es que detengas el servidor de SQL Server y lo vuelvas a iniciar, de pronto con eso se te soluciona el problema. Deberías también implementar transaccionalidad en tu aplicación, para que no tengas este tipo de confictos en lo posterior.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas