Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Comprobar valores antes de insertar datos en tablas access

Estas en el tema de Comprobar valores antes de insertar datos en tablas access en el foro de Bases de Datos General en Foros del Web. Hola de nuevo a todos: Tengo otro problemilla en Access: Tengo un formulario que toma los datos de una tabla. Lo que quiero hacer es ...
  #1 (permalink)  
Antiguo 23/03/2011, 06:02
 
Fecha de Ingreso: marzo-2007
Mensajes: 127
Antigüedad: 17 años, 2 meses
Puntos: 2
Comprobar valores antes de insertar datos en tablas access

Hola de nuevo a todos:

Tengo otro problemilla en Access:

Tengo un formulario que toma los datos de una tabla. Lo que quiero hacer es que cuando se modifiquen los datos de un registro o se añada uno nuevo, se comprueben los valores de dos campos de fecha y si uno es menor que el otro, pues que no se llegue a modificar el registro o a añadirse, es decir, poder comprobar que los datos que se introducen son correctos antes de que los cambios lleguen a ser efectivos en las tablas y, por supuesto, si hay errore3s en los datos, que estos no se guarden en la tabla correspondiente.

Espero haberme explicado.

Gracias de antemano a todos.

Última edición por pumi; 23/03/2011 a las 06:14
  #2 (permalink)  
Antiguo 23/03/2011, 06:24
Avatar de Heimish2000  
Fecha de Ingreso: enero-2011
Ubicación: Madrid
Mensajes: 844
Antigüedad: 13 años, 3 meses
Puntos: 89
Respuesta: Comprobar valores antes de insertar datos en tablas access

En código, supongo que le darás un botón para actualizar, en el código de ese botón, antes de hacer el UPDATE puedes hacer las comprobaciones que quieras.
  #3 (permalink)  
Antiguo 23/03/2011, 06:52
 
Fecha de Ingreso: marzo-2007
Mensajes: 127
Antigüedad: 17 años, 2 meses
Puntos: 2
Respuesta: Comprobar valores antes de insertar datos en tablas access

Hola Heimish:

Gracias de nuevo por tu ayuda.

No, no tengo un botón de actualizar, asi que los datos se me actualizan cuando hago click en otro registro de los que me aparecen en el formulario. De momento he conseguido que no se guarden los nuevos valores del siguiente modo:

Private Sub Form_BeforeUpdate(Cancel As Integer)
If Me!Contenido1.Value = "hola" Then
MsgBox "hola"
Else
Me!Contenido1.Value = Me!Contenido1.OldValue
End If
End Sub

Es decir, si no tengo lo que quiero, dejo el antiguo valor del campo, pero me falta conseguir que el registro activo siga siendo el que quiero modificar o insertar. Si me puedes decir como se consigue eso creo que tendría la gracia completa.

Gracias de nuevo.
  #4 (permalink)  
Antiguo 23/03/2011, 09:06
Avatar de Heimish2000  
Fecha de Ingreso: enero-2011
Ubicación: Madrid
Mensajes: 844
Antigüedad: 13 años, 3 meses
Puntos: 89
Respuesta: Comprobar valores antes de insertar datos en tablas access

Un botón u otro registro, es lo mismo, en ese momento se lanza un evento que es el que tienes que programar

Cuando hagas click en un registro guarda cual es al final del evento en una variable y así sabrás cual quieres que sea activo en caso de no actualización. Antes de eso tienes que comprobar si actualizas o no.

Esquematicamente es algo asi el evento onClick de un registro

Si es el primer registro que pulsamos
registro = registroPulsado
Si no
Comprobación de si hay que actualizar registro
Si hay que actualizar
Actualizamos
registro = registroPulsado
Si no
Activamos registro
  #5 (permalink)  
Antiguo 23/03/2011, 09:46
Avatar de Taribo007  
Fecha de Ingreso: agosto-2007
Mensajes: 1.338
Antigüedad: 16 años, 9 meses
Puntos: 18
Respuesta: Comprobar valores antes de insertar datos en tablas access

Es mejor que lo hagas asi, cancelando el evento:

Private Sub Form_BeforeUpdate(Cancel As Integer)
If Me!Contenido1.Value = "hola" Then
MsgBox "hola"
Else
cancel=true
End If
End Sub

Puede que este ejemplo te ayude:

http://elmundomagicodeltaribo.blogsp...ormulario.html

Un saludo
  #6 (permalink)  
Antiguo 30/03/2011, 06:42
 
Fecha de Ingreso: marzo-2007
Mensajes: 127
Antigüedad: 17 años, 2 meses
Puntos: 2
Respuesta: Comprobar valores antes de insertar datos en tablas access

Gracias Taribo007, funciona perfectamente.

Un saludo.

Etiquetas: access, tablas, bases-de-datos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:38.