Estimados Colegas
Quiero hacer un scope y dentro del mismo filtrar hasta ahora
el scope me funciona perfecto, lo que no me funciona es
el filter que en vez de hacerlo sobre el scope los hace
sobre la dbf entera y me tarda un tiempo enorme ya que
son 500000 registros, si alguien me puede orientar
que estoy haciendo mal.
desde ya muchisimas gracias
databaselab2002@yahoo.com
#include "FiveWin.ch"
#include "ord.ch" // do clipper (CDX)
REQUEST DBFCDX
//----------------------------------------------------------------------------//
function Main()
SET _3DLOOK ON
rddSetDefault("DBFCDX")
USE MD
MD->(ORDLISTADD("MDL"))
MD->( OrdScope( 0,"AGRELO"))
MD->( OrdScope( 1,"AGRELO"))
MD->( dbGoTop())
* SET FILTER to upper( MD->PER_NOMBRE ) $ "CATAL"
SET FILTER to "CATAL" $ upper( MD->PER_NOMBRE )
// PROBE SET FILTER DE LAS DOS MANERAS
*MD->( dbGotop())
***********************************************************
Browse()
USE
return nil
Scope y Filtros
- Manuel Valdenebro
- Posts: 706
- Joined: Thu Oct 06, 2005 9:57 pm
- Location: Málaga-España
-
- Posts: 142
- Joined: Sun Oct 09, 2005 1:36 am
Scopes y Filtros
Gracias Manuel
Se puede crear un indice temporal con operador $
ej index on clientes-> Nombre to Nombre for/while Nombre $ "Catal"
La idea es crear un indice temporal con los datos del scope que el
campo nombre contenga "Catal" en cualquier sector del mismo
desde ya muchisimas gracias
Fabian
Databaselab2002@yahoo.com.ar
Se puede crear un indice temporal con operador $
ej index on clientes-> Nombre to Nombre for/while Nombre $ "Catal"
La idea es crear un indice temporal con los datos del scope que el
campo nombre contenga "Catal" en cualquier sector del mismo
desde ya muchisimas gracias
Fabian
Databaselab2002@yahoo.com.ar
- Manuel Valdenebro
- Posts: 706
- Joined: Thu Oct 06, 2005 9:57 pm
- Location: Málaga-España
Supongo que tenemos el fichero clientes.dbf indexado por el campo Nombre. Queremos buscar una palabra que esté en cualquier sitio del registro:
ERASE iTem.cdx
INDEX ON clientes->NOMBRE TO iTem FOR "Catal" $ clientes->NOMBRE
SET INDEX TO iTem, clientes
Esto será lento (mucho mas si está en red).
Lo que no comprendo es como en tu primer mensaje ponias un Scope en "Agrelo".
Un saludo
ERASE iTem.cdx
INDEX ON clientes->NOMBRE TO iTem FOR "Catal" $ clientes->NOMBRE
SET INDEX TO iTem, clientes
Esto será lento (mucho mas si está en red).
Lo que no comprendo es como en tu primer mensaje ponias un Scope en "Agrelo".
Un saludo