Page 1 of 1

consulta sobre MSGYESNO()

Posted: Wed Jan 31, 2007 10:39 am
by Elias Torres
Hola a todos...

Resulta que estoy utilizando la función msgYesNo() para actualizar unas tablas. Si el resultado es YES entonces lanzo una barra de progreso para ir viendo el proceso de la actualización.. El problema lo tengo porque al seleccionar 'SI', del cuadro de dialogo, este no se cierra sino que automáticamente lanza la barra de progreso y hasta que esta no termine no se va el cuadro de dialogo.. La verdad es que no entiendo porque ocurre esto, ya que deberia desaparecer el cuadro msgyesno antes de seguir con cualquier instrucción...no?

Si alguien puede indicarme como 'forzar' a que este recuadro se oculte...

Por si sirve de algo este es el codigo que estoy utilizando...


IF msgYesNo('¿Desea actualizar la información de los articulos?. Esta operación puede tardar un poco','Atención')
estado_conexion(oTmr) &&COMPRUEBA EL ESTADO DE LA CONEXION
IF conexion=1
inicializa_datos1() &&PROCEDIMIENTO PARA ACTUALIZAR. CONTIENE LA BARRA DE PROGRESO
Pinta_fecha_actualizacion()
ult_descarga:=vector_ini->f_descarga
ELSE
msgstop('No es posible acceder al servidor de datos por falta de cobertura...','Error en la conexión...')
ENDIF
endif



Saludos.

Elías Torres.

Posted: Wed Jan 31, 2007 12:55 pm
by Antonio Linares
Elías,

Prueba a llamar a SysRefresh() despues de MsgYesNo() para que Windows procese mensajes pendientes

Posted: Wed Jan 31, 2007 6:16 pm
by Elias Torres
Antonio, ha funcionado pero he tenido que llamar a esa funcion 3 veces... esto es normal??


Saludos y gracias

Elías Torres.

Posted: Wed Jan 31, 2007 7:42 pm
by Antonio Linares
Elías,

Si, es normal, ya que SysRefresh() en el Pocket PC no siempre procesa todos los mensajes pendientes, de ahí que hayas tenido que llamarlo varias veces