Evitar apertura en modo diseño de BD

Tengo dos BD, en la primera, (a modo de portal de acceso) desde la que conecto con otras BD, está la tabla "usuarios", en la segunda está vinculada dicha tabla. Cuando accedo a la segunda BD y no encuentra la tabla vinculada "usuarios", (por el motivo que sea), aparece el mensaje diciendo que no encuentra la BD. Hasta aquí bien. Ocurre que al no encontrar la tabla vinculada "usuarios" la BD la abre en modo diseño, lo que pretendo es que se cierre.
Es un poco lioso, quiero que al detectar el error, en este caso no encuentra una BD en la que hay una tabla vinculada, la segunda BD se cierre de forma automática. He probado varias cosas: en los eventos al abrir, cargar el formulario, al ocurrir un error y se los salta todos, siempre acaba abriendo en modo diseño. ¡Uf!.

1 Respuesta

Respuesta
1
O yo no te entiendo o tu no te explicas. Si eres capaz de encontrar dónde salta el error, añade un DoCmd. Quit y saldrás de la aplicación.
Otra cosa es que no sepas cuando te salta el error... cosa que utilizando la ejecución paso a paso podrías subsanar. También existen múltiples métodos para comprobar la vinculación de los datos antes de encontrarse con el error.
Un saludo
Xavi
http://www.llodax.com
http://www.mvp-acces.com/foro
http://www.aesoft-databases.com
He hecho lo que sigue:
Private Sub Form_Error(DataErr As Integer, Response As Integer)
MsgBox "Parada"
DoCmd.Close
DoCmd.Quit
End Sub
Aparece el mensaje Parada, pero no responde a ninguna de las otras dos líneas (las he usado una a una). Después aparece el mensaje de que no encuentra la ruta y te saca a la ventana de access. Otra cosa, con la opción DoCmd.Quit, aparece el aviso de Access de que ha habido un error y te pregunta si quieres enviar el informe a Microsoft. También lo he utilizado al abrir o cargar el formulario, y nada, lo mismo.
A lo mejor debes cambiar un poco el enfoque de tu aplicación para que, en lugar de saltar el error, intentar forzarlo tu. Es decir, verificar si existe la tabla vinculada. Seria tan 'simple' como intentar abrir un recordset sobre la tabla y, si salta el error, mandar el mensaje.
Creo que en mi web puedes encontrar códigos sobre eso. Tambien en la del Búho (http://accessbuho.mvps.org/) o en la de Emilio (http://www.mvp-access.es/emilio)
Tambien en el foro http://www.mvp-access.com/foro seguro que algo encuentras.
Por contra, si quieres seguir con esa táctica, te recomiendo que investigues los parámetros del evento Form_Error. Veras que el Response es el que necesitas para darle una respuesta a Access y que siga sin mostrar el error. En la ayuda creo que viene detallado.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas