Mejorar el tiempo de respuesta
Publicado por daju (18 intervenciones) el 18/09/2009 16:09:03
SAludos amigos del foro, el caso es el siguiente, tengo un sistema de stock con una base de datos en postgrest hasta ahi todo bien, el tema es que cuando quierover la lista de los progductos que son 6000 articulos me demora un poquito digamos 4 segundos, y despues mediante un text box filtra con el interactive change del text box hasta mostrar el resultad, pero ahi es 4 seg por pulsasion osea demora, el codigo es este
STORE SQLCONNECT('DatosSiv','postgres','SivDatos1982') TO coneccion
IF coneccion <= 0
=MESSAGEBOX("Error de conexion, verifique el servidor de datos",16,"Siv - Error de Conexion")
ELSE
x=SQLEXEC(coneccion,'select * from stkpdt','bdpdt')
=SQLDISCONNECT(coneccion)
SELECT bdpdt
SELECT bdpdt.pdtid,;
bdpdt.pdtdesc,;
bdpdt.pdtstk,;
bdpdt.pdtcost,;
bdpdt.pdtvmen,;
bdpdt.pdtvmay,;
bdpdt.pdtstktmp,;
bdpdt.pdtdep0,;
bdpdt.pdtdep1,;
bdpdt.pdtdep2,;
bdpdt.pdtgrp,;
bdpdt.pdtsgrp,;
bdpdt.pdtsgrpa,;
bdpdt.pdtsgrpb,;
bdpdt.pdtmk,;
bdpdt.pdtprov,;
bdpdt.pdtljt,;
bdpdt.pdtljtval,;
bdpdt.pdtljtcant,;
bdpdt.pdtmin,;
bdpdt.pdtmax,;
bdpdt.pdtlja,;
bdpdt.pdtdisc,;
bdpdt.pdtumed,;
bdpdt.pdtcat,;
bdpdt.pdtweb;
FROM bdpdt;
ORDER BY bdpdt.pdtdesc INTO CURSOR resultado
thisform.gridpdt.RecordSource= "resultado"
thisform.gridpdt.SetAll("DynamicforeColor","IIF(pdtdisc='Activo',RGB(0,128,0),IIF(pdtmin > pdtstk, RGB(255,0,0),RGB(0,0,255)))", "Column") && Alterna registros blancos y verdes.
ENDIF
por favor digame si esta bien o como puedo hacelerar la consulta, si lo cargo una ves y despues me remito al cursor estaria mal porque cuando se vende no actualizaria dicha consulta, asique descargo esa posibilidad. desde ya gracias
STORE SQLCONNECT('DatosSiv','postgres','SivDatos1982') TO coneccion
IF coneccion <= 0
=MESSAGEBOX("Error de conexion, verifique el servidor de datos",16,"Siv - Error de Conexion")
ELSE
x=SQLEXEC(coneccion,'select * from stkpdt','bdpdt')
=SQLDISCONNECT(coneccion)
SELECT bdpdt
SELECT bdpdt.pdtid,;
bdpdt.pdtdesc,;
bdpdt.pdtstk,;
bdpdt.pdtcost,;
bdpdt.pdtvmen,;
bdpdt.pdtvmay,;
bdpdt.pdtstktmp,;
bdpdt.pdtdep0,;
bdpdt.pdtdep1,;
bdpdt.pdtdep2,;
bdpdt.pdtgrp,;
bdpdt.pdtsgrp,;
bdpdt.pdtsgrpa,;
bdpdt.pdtsgrpb,;
bdpdt.pdtmk,;
bdpdt.pdtprov,;
bdpdt.pdtljt,;
bdpdt.pdtljtval,;
bdpdt.pdtljtcant,;
bdpdt.pdtmin,;
bdpdt.pdtmax,;
bdpdt.pdtlja,;
bdpdt.pdtdisc,;
bdpdt.pdtumed,;
bdpdt.pdtcat,;
bdpdt.pdtweb;
FROM bdpdt;
ORDER BY bdpdt.pdtdesc INTO CURSOR resultado
thisform.gridpdt.RecordSource= "resultado"
thisform.gridpdt.SetAll("DynamicforeColor","IIF(pdtdisc='Activo',RGB(0,128,0),IIF(pdtmin > pdtstk, RGB(255,0,0),RGB(0,0,255)))", "Column") && Alterna registros blancos y verdes.
ENDIF
por favor digame si esta bien o como puedo hacelerar la consulta, si lo cargo una ves y despues me remito al cursor estaria mal porque cuando se vende no actualizaria dicha consulta, asique descargo esa posibilidad. desde ya gracias
Valora esta pregunta
0