Page 1 of 1

Actualizacion

Posted: Sun May 28, 2006 3:46 pm
by colthop
Hola amigos:
Tengo un problema en mi aplicacion y es el siguiente:
Tengo una ventana con muchos datos, es la pantalla de un diario de contabilidad y escribe veintidos lineas con ocho datos por linea, todo funciona bien si le da tiempo a realizar las operaciones, pero si por ejemplo estamos en la última linea y pulsamos abajo nos presenta la siguiente moviendo todas hacia arriba. Pero si pulsamos muchas veces y de seguido, al programa no le da tiempo a procesar todo el codigo y se descuadra. Podriais decirme como puedo hacer para que el programa espere hasta que se realicen todas las operaciones. todos los datos son says y hay uno que es un GET y este es el que se descuadra poniendo el dato de otra línea.

Gracias
Carlos

Posted: Tue May 30, 2006 10:15 pm
by Lautaro
Hola,

Como sugerencia puedes declarar en la rutina que no alcanza a terminar una variable que sera verdadera si estas haciendo un proceso y falsa al terminar , algo asi , ( es solo un ejemplo, no se como esta tu codigo )


rutina1()

...
....
local ltrabajando := .f.

.....
rutinalenta(@ltrabajando)
do while ltrabajando
// Depende de lo largo que sea el codigo
////sysrefresh()
///////////////////////
enddo

return

procedure rutinalenta(ltrabajando)

ltrabajando:=.t.
sysrefresh()
acciones
....
.....
.....
ltrabajando:=.f.
sysrefresh()
return


atte,
lautaro

Posted: Thu Jun 08, 2006 6:52 pm
by QAZWSX2K
porque no pones un timer en el botos para que lo deshabilite por unos segundos si le acaban de dar

Posted: Thu Jun 15, 2006 8:59 pm
by manuramos
Prueba con BEGIN SEQUENCE.
Cuando pulses una tecla que haga un BREAK para que no se complete la funcion y empiece de nuevo a cada pulsacion.