Página 1 de 1

Validación de datos en TMaskEdit

Publicado: Lun May 26, 2008 5:41 am
por Fernando Leal
Veamos,
en el evento OnExit( )
if !alltrim( ::oDBMaskEdit5:Value )$"FM"
return .f.
endif
Lo anterior forza a que el dato introducido sea F ó M pero suponiendo que el
foco está en el ::oDBMaskEdit4 al hacer click en el botón Guadar.... las
validaciones de ::oDBMaskEdit5 ee ignorada.
Por lo tanto en el evento OnClick del botón Guardfar... yo tengo que revisar
nuevamente si se cumple la validación para el ::oDBMaskEdit5
Pregunta: ¿Hay alguna forma más efeciente de validar datos?
Cuando son pocos datos que validar no hay problema pero cuando son 98.... la
duplicación de código es tremenda.
Gracias
Fernando

Validación de datos en TMaskEdit

Publicado: Lun May 26, 2008 9:52 am
por correo
Fernando Leal escribió:
> Veamos,
> en el evento OnExit( )
>
>
> if !alltrim( ::oDBMaskEdit5:Value )$"FM"
> return .f.
> endif
>
> Lo anterior forza a que el dato introducido sea F ó M pero suponiendo
> que el foco está en el ::oDBMaskEdit4 al hacer click en el botón
> Guadar.... las validaciones de ::oDBMaskEdit5 ee ignorada.
> Por lo tanto en el evento OnClick del botón Guardfar... yo tengo que
> revisar nuevamente si se cumple la validación para el ::oDBMaskEdit5
>
> Pregunta: ¿Hay alguna forma más efeciente de validar datos?
>
> Cuando son pocos datos que validar no hay problema pero cuando son
> 98.... la duplicación de código es tremenda.
>
> Gracias
> Fernando
>
>
>
Lo normal es que antes de grabar vuelvas a evaluar los OnExit de los
campos . NO necesitas escribir de nuevo las instruccines ,puedes llamarlas .
local lOk := .t.
lOk := ::oCOntrol1:OnExit()
lOk := ::oCOntrol2:OnExit()
lOk := ::oCOntrol3:OnExit()
if !lOk //Hay algun error
::oControl1:SetFocus()
endif
Puedes afinarlo mas para saber donde da el error y que te envie el foco
al objeto en concreto.

Validación de datos en TMaskEdit

Publicado: Sab Jun 14, 2008 4:00 am
por Fernando Leal
Gracias JJG Soft,