FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour SetFilter vs Scopes
Posts: 479
Joined: Fri Feb 16, 2007 10:29 AM

SetFilter vs Scopes

Posted: Sat Oct 31, 2009 01:16 PM
Compañeros:

Tengo un aplicativo en RED Local y los SETFILTER se hacen muy pesados...
Para mejorar velocidad, estoy migrando de NTX a CDX y usando SCOPES... pero me surge la siguiente duda:

Tengo un multifiltro del tipo:
Code (fw): Select all Collapse
 SET FILTER TO "FER" $ CLIENTE->NOMBRE .AND. CLIENTE->SALDO>1500 .AND. CLIENTE->PROVINCIA="CADIZ"


Como se especifica esto utilizando SCOPE ?? ¿habría que crear un indice temporal?

Ruego un ejemplo adaptado a este caso. Mil gracias.

Un saludo.
LORENZO
Posts: 782
Joined: Wed Dec 19, 2007 07:50 AM

Re: SetFilter vs Scopes

Posted: Sat Oct 31, 2009 10:23 PM
Hola Lorenzo:
Loren wrote:Tengo un aplicativo en RED Local y los SETFILTER se hacen muy pesados...
Para mejorar velocidad, estoy migrando de NTX a CDX y usando SCOPES... pero me surge la siguiente duda:

Tengo un multifiltro del tipo:
Code (fw): Select all Collapse
 SET FILTER TO "FER" $ CLIENTE->NOMBRE .AND. CLIENTE->SALDO>1500 .AND. CLIENTE->PROVINCIA="CADIZ"

Como se especifica esto utilizando SCOPE ?? ¿habría que crear un indice temporal?
Ruego un ejemplo adaptado a este caso. Mil gracias.

En algunos casos es preferible generar un índice temporal, el proceso de indexado es muchas veces más rápido que el montaje del filtro y, sobre todo, la navegación por la base de datos es mucho más eficiente.

Si ésto no fuera práctico, te sugeriría usar una mezcla de Scopes y Filtro de la siguiente forma (solo es un ejemplo):
Cliente->(OrdScope(0, "FER"), OrdScope(1, "FER"), DbSetFilter( {|| Saldo>1500.and.Provincia="CADIZ"} ), DbGoTop() )

Un abrazo.
manuelmercado at prodigy dot net dot mx

Continue the discussion