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
Actualizacion
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
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