FoxPro/Visual FoxPro - validar textbox fecha

 
Vista:

validar textbox fecha

Publicado por Ángel Isorna (135 intervenciones) el 29/08/2003 01:11:38
Hola a todos:

Estoy intentando validar un textbox en el que se debe introducir una fecha, le pongo el inputmask como 99/99/9999 y el Stryctdateentry como 1, osea , estricto.
El problema es que si ejecuto el formulario por separado de la aplicación si me muestra un wait window indicando es erronea la fecha, pero al ejecutar el formulario en la aplicacion este mensaje no se ve y provocando que el operador no se entere mucho de por que no le deja continuar pasando el enfoquea otros textbox.

Tb he intentado varias variantes de:

*inicio
If (thisform.textfecha.valid)=.f.
messagebox("Error en fecha")
thisform.textfecha.setfocus
endif
*fin

pero que no me funciona ninguna.

¿Alguien me puede decir como validar una fecha en un textbox ?

Gracias por adelantado.
Ángel Isorna.
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:validar textbox fecha

Publicado por Foxperto (894 intervenciones) el 29/08/2003 01:28:28
Hola Angel:

Mira yo haria lo siguiente, en el evento INIT del TextBox Fecha escribiria la siguiente linea:

This.Value = {}

Esto inicializa el valor del TextBox en formato fecha y asi, VFP se encargara de validar si es Valida o no.

No utlizaria el codigo que escribes arriba:

*inicio
If (thisform.textfecha.valid)=.f.
messagebox("Error en fecha")
thisform.textfecha.setfocus
endif
*fin

Nota: iniciar de esta manera el TextBox, funcionara bien, solo si no esta asociado a ningun campo, o sea, en el ControlSource, esta en blanco.

Prueba y me cuentas.
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:validar textbox fecha

Publicado por Ángel Isorna (135 intervenciones) el 29/08/2003 02:41:58
Hola

Esto que me acabas de pasar si funciona, el problema es parecido al de antes:
Si ejecuto el formulario por si solo se ve el mensaje del wait window, pero si ejecuto el programa desde la aplicación sobre otros formularios de nivel superior y este en concreto en showwindow=1 no aparece el mensaje, lo cual hace que el operador no se entere muy bien de lo que pasa, el por que no le deja cambiar el enfoque.

Gracias por tu respuesta.
Ángel.
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:validar textbox fecha

Publicado por Uplift (8 intervenciones) el 29/08/2003 22:29:28
Hola!
prueba con esto, yo lo hago al momento de guardar el registro con el boton aceptar, usalo donde te convenga:
xfecha=ctod(thisform.text1.value)
xfecha=alltrim(dtoc(xfecha))
if len(xfecha)=4 then
messagebox("error de fecha")
endif
el truco es que si la fecha no es valida el valor se toma " / / ", al hacer un alltrim queda "/ /" y son 4 caracteres.
saludos.
Uplift
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:validar textbox fecha.-GRACIAS

Publicado por Ángel Isorna (135 intervenciones) el 30/08/2003 02:15:20
Gracias, me va perfecto el código que me enviaste.

Un cordial saludo.
Ángel.
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:validar textbox fecha

Publicado por JOSE A. (27 intervenciones) el 13/09/2003 17:13:20
yo lo haria en una forma mas sencilla
en el value del textbox ingresaria =ctod(" / / ")
con esto ya solucionaras tu problema
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