¿Cómo puedo capturar el registro de una tabla que se ha quedado en blanco con el Microsoft Access?

Mi nombre es kenny y tengo una gran duda o problema
Mi problema es el siguiente, como es sabido, al trabajar con bases de datos suelen suceder errores, uno de los errores más comunes es que se deje algún campo requerido en blanco.
Ahora bien Access devuelve una descripción del error donde se especifica el campo de la tabla que ha quedado en blanco y que es requerido por la misma.
Mi pregunta es ¿cómo hago para capturar el nombre del campo de la tabla que ha quedado en blanco?, esto con el fin de poder emitir un error desde una rutina creada por mi, en donde le especifique al usuario cual campo ha dejado en blanco y en este caso es requerido por la tabla.
Agradeciendo de antemano toda la colaboración prestada
Kenny Antunez
MIS Associated
MBE Mail Boxes Etc.
[email protected]
Web Site www.ve.mbe.com
Respuesta
1
Si nunca has utilizado ON ERROR intentalo.
ON ERROR te captura el error el numero y te la descripción, lo único que tienes es que agregar el field("campo"). Y sabrás que dicho campo es requerido.
Pruébalo, alguna duda no dudes en preguntar.
Dejame ver si te entiendo cada vez que ocurre un error se dispara el evento ON ERROR, eso lo tengo claro.
En el objeto ERR se carga la descripción y el numero del error, eso también lo tengo claro
Ahora lo que no entiendo es como modifico las siguientes lineas para que me traiga el nombre del campo que es requerido según el error que emitió Access
Err.Number 'Me devuelve el Numero del Error (429)
Err.Description 'Me devuelve la descripción del error (The field
Empleado. Cedula can´t be a Zero Length)
Podrías si no es mucha molestia aclararme a través de código
De antemano Gracias por tu ayuda
Segun Err. Description te devuelve el campo y otra descripción. Segun entiendo tu quieres el nombre del campo usa lo siguiente:
Err.Description asignale una variable string,luego optienes el campo con MID
xerror=err.description
campo=mid(xerror,10,15) ' la cantidad chequea
otras forma revisas las funciones de string.

3 respuestas más de otros expertos

Respuesta
1
No te compliques la vida tratando de capturar el nombre del campo, esto si se puede, pero es más sencillo si lo haces de la siguiente manera:
Seguramente estas usando un botón de comando para realizar transacciones, pues bien en tu botón de comando coloca condiciones para no poder dejar vacío el cuadro de texto, por ejemplo si tienes un TextBox que se llama Text1 que controla por ejemplo el campo nombre, rotula con un label ese textbox para indicar que ahí va el nombre en el evento click de Command, colo ca algo como lo siguiente:
if text1.text=0 then
MsgBox ("No se puede dejar vacio el campo " & Label1.Caption)
else
' Todo el código necesario
end if
Como vez no es necesario hacer eso que tu dices, ahora si estableces las reglas de validación dentro de Access al momento de ocurrir el error aunque este en Visual Basic te debe de mandar el mensaje que hayas puesto.
Sino sabes como te digo:
Al momento de que creas un campo dentro de una tabla de access, checa en las propiedades y busca la propiedad requerido y establecela a SI, luego busca la propiedad Regla de Validación y ponla como : campo > 0 y
La propiedad mensaje escribe algo como "El campo (nombre del campo) no puede quedar vacío".
Eres lo máximo amigo, esa es la solución perfecta para todos mis problemas con los errores, espero que no te moleste que te agregue en mi lista de favoritos.
De nuevo muchas gracias
Respuesta
1
El objeto Err te informa en todo momento del ultimo error sucedido.
Err. Number contiene el número
Err. Description contiene la descripción.
Si quieres un consejo, deberías comprobar que todos los campos están rellenos antes de intentar actualizar la base de datos.
Respuesta
1
Si no me especificas para que lenguaje, es un poco difícil

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas