Como cerrar un dialogo automaticamente

Como cerrar un dialogo automaticamente

Postby BenD » Tue Mar 18, 2008 5:05 pm

Mi problema es este:
tengo una consulta sql al motor de advantage....pero esta consulta puede a veces demorar mucho tiempo...
tengo un dialogo que le le pide al usuario un momento mientras se realiza la consulta
Si lo defino con NOWAIT, puede pasar tiempo antes de que la consulta retorne los resultados, y si no, me toca presionar "Esc" para que la ejecucion del programa siga... lo que tengo es algo similar a esto:

Code: Select all  Expand view  RUN
...
...

DEFINE DIALOG oWNDFIS RESOURCE "ESPERA"
REDEFINE SAY ID 800 OF oWNDFIS FONT oFONT2   //Un momento por favor
ACTIVATE DIALOG oWNDFIS CENTER NOWAIT

ADSEXECUTESQLDIRECT(cSQL)
...
aqui muestro los resultados de la consulta
...


Lo que quiero es ismplemente mostrar el dialogo mientras se ejecuta la consulta y cerrarlo solo cuando los datos esten disponibles
Gracias de antemano por su ayuda
BenD
 
Posts: 29
Joined: Fri Jan 18, 2008 3:48 pm

Postby Antonio Linares » Tue Mar 18, 2008 5:50 pm

Prueba así:
Code: Select all  Expand view  RUN
...
...

DEFINE DIALOG oWNDFIS RESOURCE "ESPERA"
REDEFINE SAY ID 800 OF oWNDFIS FONT oFONT2   //Un momento por favor
ACTIVATE DIALOG oWNDFIS CENTER NOWAIT

ADSEXECUTESQLDIRECT(cSQL)
oWNDFIS:End()
...
aqui muestro los resultados de la consulta
...
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42159
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Funciona

Postby BenD » Tue Mar 18, 2008 6:32 pm

Gracias nuevamente...asi me funciono bien....
Yo creia que la funcion :END() solo podía llamarse en las subfunciones y actions del dialogo..
BenD
 
Posts: 29
Joined: Fri Jan 18, 2008 3:48 pm


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 83 guests