Access - Eliminar registro al salir del formulario

 
Vista:

Eliminar registro al salir del formulario

Publicado por Lourdes (15 intervenciones) el 24/07/2008 11:19:23
Hola a todos, tengo una db donde al entrar, por tener un campo Sí/no (con la opción por defecto en No, porque lo necesito así) tan solo con entrar me registra en la tabla un registro.

Claro, pero si yo no cumplimento los demás campos, cada vez que entro me genera un registro nuevo. Así que ¿cómo puedo hacer para que si me salgo del formulario y un determinado campo es null, no me guarde o me elimine el registro.

Muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:Eliminar registro al salir del formulario

Publicado por fabian (52 intervenciones) el 24/07/2008 17:29:03
Generá una consulta de eliminación y que se dispare cuando salís del formulario.
En el caso que la consulta se llame "BorrarRegistrosIncompletos", en el evento "al cerrar formulario" creas la consulta docmd.openquery "BorrarRegistrosIncompletos" y en los campos que no queres que salgan nulos, en el criterio le pones "nulo".
Al hacer esto te borra los registros que tienen nulo en alguno de estos campos
suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Eliminar registro al salir del formulario

Publicado por Lourdes (15 intervenciones) el 24/07/2008 17:32:16
Muchas gracias por tu respuesta!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Eliminar registro al salir del formulario

Publicado por Enrique (1299 intervenciones) el 24/07/2008 17:32:57
Hola Lourdes:
Podrías usar alguno de estos dos Eventos o incluso los dos al mismo tiempo:

' Impide Grabar en la Tabla un registro si "Campo1" está vacío
Private Sub Form_AfterInsert()
If IsNull(Campo1) Or Campo1 = "" Then
DoCmd.RunCommand acCmdUndo
DoCmd.GoToRecord , , acPrevious
End If
End Sub

' Elimina de la Tabla al cerrar el Form, todos los registros con "Campo1" vacío
Private Sub Form_Close()
Dim Elimina As String
Elimina = "Delete * From Tabla1 Where Campo1 Is Null;"
CurrentDb.Execute Elimina
End Sub

El primer Evento Deshace el registro antes de que se grabe y el segundo Evento lo borra de la Tabla.

Un saludo
Enrique
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Eliminar registro al salir del formulario

Publicado por Lourdes (15 intervenciones) el 24/07/2008 17:39:34
Gracias Enrique, el código me gusta más.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar