AYUDA FILTROS,SCOPES ME ESTAN VOLVIENDO LOCO

AYUDA FILTROS,SCOPES ME ESTAN VOLVIENDO LOCO

Postby Databaselab2002 » Wed Nov 30, 2005 3:08 am

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. o tiene algun ejemplo sencillo
Utilizo indices cdx simples sin tags


desde ya muchisimas gracias
databaselab2002@yahoo.com


#include "FiveWin.ch"
#include "ord.ch"


//----------------------------------------------------------------------------//

function Main()


request dbfcdx // requerimento dos indices CDX
rddsetdefault("dbfcdx")
dbsetdriver("dbfcdx")

USE MD
set index to MDL
Set scope TO "ALICIA","ALICIA"
SET FILTER to "ZUC"$MD->PER_NOMBRE
DBGOTOP()






***********************************************************

LIST PER_NOMBRE,LOC_DESCRI en clipper me funciona
Browse() Fivewin no me funciona me filtra la base total
* USE

return nil
Databaselab2002
 
Posts: 142
Joined: Sun Oct 09, 2005 1:36 am

Postby Jaime Irurzun » Fri Dec 09, 2005 12:52 am

Hola,

Aparentemente creo que debería funcionar, pero por si acaso prueba a meter un dbGoTop() después del Scope y antes del filtro.
Jaime Irurzun
 
Posts: 6
Joined: Thu Oct 06, 2005 8:01 pm

Re: AYUDA FILTROS,SCOPES ME ESTAN VOLVIENDO LOCO

Postby Francisco Horta » Fri Dec 09, 2005 5:07 pm

databaselab2002,

yo quiero hacer lo mismo, tengo una dbf con cdx indexado por fecha, hago un scope por rango de fechas y todo ok, pero si uso un filtro para dentro de ses rango mostrar ciertos registros, NO ME FUNCIONA, me lee toda la dbf, ya puse gotop antes y despues y naaa
creo que no hay solucion, estoy pensadno barrer la dbf con los scope y meter en un array los de la 2da condicion y ponerlo en otro browse..
Salu2
Paco
Francisco Horta
 
Posts: 845
Joined: Sun Oct 09, 2005 5:36 pm
Location: la laguna, mexico.

Postby jlcapel » Fri Dec 09, 2005 5:26 pm

Francisco,

¿Y por que no te creas una función que genere el filtro a pelo sobre un índice CUSTOM?

Es prácticamente igual de rápido que un SetFilter y tienes la eficacia de un tag más en tu índice (o lo haces aparte, en un IDX por ejemplo).

Saludos,
José Luis Capel
User avatar
jlcapel
 
Posts: 229
Joined: Wed Oct 12, 2005 5:32 pm
Location: Valencia - España

Postby Marcelo Via Giglio » Fri Dec 09, 2005 10:25 pm

Holas,

yo tengo eso funcionando con tablas ADT no he probado con DBFCDX, ademas utilizando los filtos de ADS

Solo comentario

Marcelo
Marcelo Via Giglio
 
Posts: 1065
Joined: Fri Oct 07, 2005 3:33 pm
Location: Cochabamba - Bolivia

Postby Francisco Horta » Fri Dec 09, 2005 11:09 pm

jose luis,
ya me quedo, use 2 tags diferentes, en el primero hago el filtro principal y en el segundo tag hago el filtro secundario, la llave del primero es: FECHA+EXTENSION y la del segundo es: EXTENSION+FECHA en el primero filtro el rango de fecha con todas las extension, y si me seleccionan alguna extension dentro de ese rango, cambio al segundo tag con las fecha seleccionadas, hago el scope nuevamente y listo !!
gracias a todos los que respondieron
Salu2
Francisco Horta
 
Posts: 845
Joined: Sun Oct 09, 2005 5:36 pm
Location: la laguna, mexico.

Postby jlaguilars » Fri Dec 09, 2005 11:57 pm

Perdon; es posible usar los indice tipo IDX en xHarbour?

Sí es afirmativo, me ahorrare mucho trabajo

Saludos

José Luis


jlcapel wrote:Francisco,

¿Y por que no te creas una función que genere el filtro a pelo sobre un índice CUSTOM?

Es prácticamente igual de rápido que un SetFilter y tienes la eficacia de un tag más en tu índice (o lo haces aparte, en un IDX por ejemplo).

Saludos,
José Luis Capel
User avatar
jlaguilars
 
Posts: 15
Joined: Tue Oct 25, 2005 3:48 pm
Location: Tabasco, México

Postby jlcapel » Sat Dec 10, 2005 7:52 am

José Luis,

Claro que se pueden usar índices IDX en (x)harbour!!

Saludos,
José Luis Capel
www.capelblog.com
User avatar
jlcapel
 
Posts: 229
Joined: Wed Oct 12, 2005 5:32 pm
Location: Valencia - España

Postby Vagner » Wed Dec 14, 2005 3:19 pm

Hola,
Se usa o xHarbour

USE MD
set index to MDL
Set scope TO "ALICIA","ALICIA"

DBGOTOP()

OrdWildSeek("*ZUC*")
Do Whil !Eof() .and. OrdWildSeek("*ZUC*",.T.)
LogFile("Teste.Log",{PER_NOMBRE })
Enddo
Abraços
Vagner Wirts
São Paulo-Brasil
User avatar
Vagner
 
Posts: 31
Joined: Wed Oct 26, 2005 12:45 pm
Location: São Paulo-Brasil


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 90 guests