Página 1 de 1

DbNavigator y el OnClickUpdate

Publicado: Dom Ago 14, 2005 6:19 pm
por fredy[1]
Hola,
Me he fijado que cuando entramos en edición y pulsamos el botón Update del
DataControl, no se evalúan los eventos OnExit asociados a los controles.
Esto es un problema, ya que utilizo los OnExit a modo de VALID y al no evaluarse,
el usuario puede, por ejemplo, crear una ficha con el código de cliente repetido.
Lo que estoy haciendo ahora es sobrecargar el método OnClickUpdate del navigator,
procesando primero todos los OnExit del formulario y continuando o no con
el resto del Update dependiendo del resultado. Algo así­:
-----------------------
METHOD DBNavigator1ClickUpdate( oSender ) CLASS TForm10
Local lRetorno
IF lRetorno := ::DBEdit1Exit( ::oDbEdit1 )
lRetorno := ::DBEdit2Exit( ::oDbEdit2 )
ENDIF
RETURN lRetorno
------------------------------
De todas formas, creo que serí­a mucho más fácil que se evaluara el Onclick
igual que lo hace al pasar de un control a otro.
Donde no hace falta evaluarlo es en el cancel, ya que en ese caso si podemos
querer salir independientemente de lo que el usuario haya puesto en los campos.
Pero cuando hacemos un update creo que sí­ es importante que estemos seguros
de que la información introducida es correcta.
Un saludico,
Fredy

DbNavigator y el OnClickUpdate

Publicado: Dom Ago 14, 2005 9:09 pm
por ignacio
Fredy,
Es que realmente no se debe disparar OnExit en dicho caso. Comprendo que te
venga muy bien, pero seguro que hay muchos usuarios que no les gustaría.
Tienes el evento OnUpdate en el Tdataset que te puede ser muy util. Por
ejemplo:
Un saludo,
"Fredy" <fredy@airtel.net> escribió en el mensaje
news:[email=a20b86f4fb98c76f13c9b71648@news.xailer.com...]a20b86f4fb98c76f13c9b71648@news.xailer.com...[/email]
> Hola,
>
> Me he fijado que cuando entramos en edición y pulsamos el botón Update del
> DataControl, no se evalúan los eventos OnExit asociados a los controles.
> Esto es un problema, ya que utilizo los OnExit a modo de VALID y al no
> evaluarse, el usuario puede, por ejemplo, crear una ficha con el código de
> cliente repetido.
>
> Lo que estoy haciendo ahora es sobrecargar el método OnClickUpdate del
> navigator, procesando primero todos los OnExit del formulario y
> continuando o no con el resto del Update dependiendo del resultado. Algo
> así:
> -----------------------
> METHOD DBNavigator1ClickUpdate( oSender ) CLASS TForm10
> Local lRetorno
> IF lRetorno := ::DBEdit1Exit( ::oDbEdit1 )
> lRetorno := ::DBEdit2Exit( ::oDbEdit2 )
> ENDIF
> RETURN lRetorno
> ------------------------------
>
> De todas formas, creo que sería mucho más fácil que se evaluara el Onclick
> igual que lo hace al pasar de un control a otro.
> Donde no hace falta evaluarlo es en el cancel, ya que en ese caso si
> podemos querer salir independientemente de lo que el usuario haya puesto
> en los campos. Pero cuando hacemos un update creo que sí es importante que
> estemos seguros de que la información introducida es correcta.
>
> Un saludico,
> Fredy
>
>