Access - regla de validacion

 
Vista:

regla de validacion

Publicado por Juan Carlos (1 intervención) el 07/09/2006 23:07:05
Alguien me puede decir como hago para que un campo sea obligatorio dependiendo del valor de otro campo, por ejemplo que si una venta fue gratis obligue a escribir el nombre de la promocion por la cual fue gratis.
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

RE:regla de validacion

Publicado por Pepe (766 intervenciones) el 07/09/2006 23:32:32
Juan Carlos, lo puedes hacer de varias formas.

Una sería comprobar antes de descargar si el campo ventas es "gartis", comprobar que el nombre de la promoción esta cumplimentado, en caso de que no lo este, te de un aviso y te coloque el puntero en ese campo.

Otra sería utilizar el evento "despues de actualizar" del campo [ventas], y si es igual a gartis, que te de un aviso y te situe en el campo de la promoción. Luego en el evento de al cerrar el formulario, que compruebe si el campo [ventas]="gartis" y [promocion]=nulo, que te avise, te situe en promocion y no te deje cerrar el formulario.

Espero que te sirva. si no sabes como hacerlo, dilo y te pondré un ejemplo.

Pepe
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:regla de validacion

Publicado por Maria (3 intervenciones) el 08/09/2006 08:31:19
Hola Pepe,

Yo tengo exactamente el mismo problema que Juan Carlos y entiendo tu explicación pero no sabría cómo hacerlo. ¿Podrías explicármelo?
Gracias
Maria
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:regla de validacion

Publicado por Pepe (766 intervenciones) el 08/09/2006 09:51:17
Hola María

Yo lo haría de la siguiente forma:

Prepararía una macro que tenga la columna de condiciones con las siguientes acciones:

1º linea
Con la condicion de [ventas]="gratis", tendría la acción de un cuadro mensaje que me avise de que tengo que cumplimentar el campo [campaña]

2º Linea
Con la misma condición, tendría la acción de irAcontrol, [campaña]

Esta macro la ejecutaría en el evento de despues de actualizar del campo [ventas].

Si quieres asegurar que sí [ventas] es Gratis, el campo [campaña] no se deja en blanco, en el evento de al perder el enfoque de éste campo, tambien ejecuta la macro.

Espero que te haya servido la explicación.

Pepe
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:regla de validacion

Publicado por Maria (4 intervenciones) el 08/09/2006 13:44:35
Muchas gracias Pepe,

Pero sigo un tanto perdida... estoy un poco pez con las macros, he estado indagando un poco, pero aún así me pierdo.

De todas modos, te comento y me dices si hay alguna posibilidad sencilla:

He creado un formulario principal, del cual pende un subformulario que he relacionado con el principal a través de dos campos ("area" y "proveedor"). Me gustaría que no pudieran rellenarse los campos del subformulario hasta que no se hayan rellenado todos los campos del Formulario principal (básicamente, porque si no Access, se vuelve loco).

Si entiendes este discursillo...

Mil gracias
Maria
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:regla de validacion

Publicado por JORGE (129 intervenciones) el 08/09/2006 15:33:23
MIRA MARIA:

Tu problema es un poquito diferente al de JUAN, pero yo te diría que hicieras una de dos cosas:

1) en el diseño de la tabla que utilizas en el FORMULARIO, pon todos los campos como requridos y con valor diferente de cero (si es necesario), eso hará que no puedas cerrar el formulario hasta que todos los campos esten llenos.

2) la otra alternativa es un poco mas elaboirada,

el SUBFORMULARIO al que haces mención, ponlo invisible, en el FORMULARIO coloca un "botón de comando", (lo puedes llamar SALVAR), y en el evento CLICK de este botón vas a verificar si todos los campos están llenos, si alguno esta vacio mandas el FOCUS al campo vacio; si todos los campos están llenos cambias la propiedad de visible del SUBFORMULARIO a "SI".

de esta manera controlas que todos los campos estén llenos, lo único es que el usuario tiene que hacer CLICK en el botón cuando llene los campos para poder accesar el SUBFORMULARIO.

el código para cambiar el estado visible del SUBFORMULARIO es:

Forms!Nombre_Subformulario.Visible = True


SALUDOS, espero te sirva
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:regla de validacion

Publicado por Pepe (766 intervenciones) el 08/09/2006 18:55:03
Hola María

Las soluciones que te propone Jorge me parecen muy buenas y sobre todo la primera muy sencilla.

De todas formas, por correo te mando un pequeño ejemplo de lo que te decía, aunque no lo uses, te serbirá para que aprendas un poco sobre las macros y no te encuentres tan pedida.

Pepe
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:regla de validacion

Publicado por Dario (1 intervención) el 09/09/2006 22:42:56
Hola, Pepe

Podrias ser tan amable de enviarme ese pequeño ejemplo para visualizar mejor lo de los macros.

Saludos.
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:regla de validacion

Publicado por Maria (4 intervenciones) el 11/09/2006 08:31:59
Hola a todos,

Agradezco mucho vuestros consejos. Estoy tratando de ejecutarlos y creo que saldré adelante!!! Este foro es genial!

Muchas gracias de nuevo!

Maria
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:regla de validacion

Publicado por Laura (1 intervención) el 21/09/2006 00:52:14
Yo no se como se hace lo que dijo Pepe:

"Una sería comprobar antes de descargar si el campo ventas es "gartis", comprobar que el nombre de la promoción esta cumplimentado, en caso de que no lo este, te de un aviso y te coloque el puntero en ese campo.

Otra sería utilizar el evento "despues de actualizar" del campo [ventas], y si es igual a gartis, que te de un aviso y te situe en el campo de la promoción. Luego en el evento de al cerrar el formulario, que compruebe si el campo [ventas]="gartis" y [promocion]=nulo, que te avise, te situe en promocion y no te deje cerrar el formulario. "

Me pueden ayudar con las instrucciones paso a paso por favor?

Gracias y saludos!
Laura
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