Ver Mensaje Individual
  #1  
Antiguo 10-11-2007
Avatar de BuenaOnda
BuenaOnda BuenaOnda is offline
Miembro
 
Registrado: feb 2006
Ubicación: La Serena - Chile
Posts: 347
Reputación: 19
BuenaOnda Va por buen camino
Question Tiempo de espera.-

Hola amigos..

Nuevamente recurro a uds, para ver si me pueden ayudar a solucionar un problemilla que tengo, resulta que ejecuto una consulta en Firebird, esta consulta demora 50 segundos aprox. en mostrar los resultados, entonces lo que hago desde delphi es mostrar un "Reloj" que me muestra el tiempo transcurrido en la consulta, pero el programa se queda pegado hasta que la consulta se ejecuta y muestra los resultados( utilizo los componentes IBX). Existe alguna propiedad en los componentes IBX que me permita realizar algo asi como un Application.ProcessMessages o algo por el estilo para que me programa no se quede "pegado", muchas gracias por su ayuda...

esta es la consulta..

Código SQL [-]
SELECT M.CODIGO_FAMILIA,COALESCE( SUM( ( (COALESCE(SUM(M.DIAS_C + M.MASDIAS),0)) * M1.CANCELADO) / M1.DIAS_ARR),0) AS CANCELADO,
       COALESCE(SUM(M.DIAS_C + M.MASDIAS),0) AS DIAS
  FROM(SELECT A.CODIGO_FAMILIA,C.dias_arrendado  AS DIAS_C,C.CODIGO_CONTRATO,
              CASE WHEN C.FECHA_TERMINO < C.FECHA_INICIO
                   THEN 'NOW' - C.FECHA_INICIO 
                   ELSE 0 END AS MASDIAS
         FROM FAMILIA A,RL_FACTURA_DE_VENTAS_CONTRATOS D,
              DETALLE_CONTRATOS_DE_ARR C, FACTURA_DE_VENTAS E,MAQUINAS F
        WHERE C.CODIGO_CONTRATO=D.CODIGO_CONTRATO
          AND D.CODIGO_FACTURA_DE_VENTA=E.CODIGO_FACTURA_DE_VENTA
          AND (E.ANULADA='N' AND E.HISTORICA='N')
          AND C.CODIGO_MAQUINA=F.CODIGO_MAQUINA 
          AND A.CODIGO_FAMILIA=F.CODIGO_FAMILIA
          AND D.FECHA_FACTURACION >='01-JUL-2007'
        GROUP BY A.CODIGO_FAMILIA,DIAS_C,C.CODIGO_CONTRATO,MASDIAS)M
    LEFT JOIN(SELECT C.CODIGO_CONTRATO,COALESCE(SUM(C.dias_arrendado),0) DIAS_ARR,
                     COALESCE(SUM(D.VALOR_CANCELADO),0) AS CANCELADO
                FROM DETALLE_CONTRATOS_DE_ARR C,
                     RL_FACTURA_DE_VENTAS_CONTRATOS D
               WHERE C.CODIGO_CONTRATO=D.CODIGO_CONTRATO
               GROUP BY C.CODIGO_CONTRATO) AS M1
              ON M.CODIGO_CONTRATO=M1.CODIGO_CONTRATO
GROUP BY M.CODIGO_FAMILIA
Responder Con Cita