Tengo una tabla con 950,000 registros, en esta tabla tengo los siguientes
campos:
CAMPO TIPO LONGITUD
CODIGO C 20
DESCRIPCION C 35
SERIE C 20
FECHA D 8
¿ Como puedo obtener todas las series de x producto y presentarlo en un grid
(TDBBROWSE).?
Estoy usando el SET FILTER TO, pero es muy lento
¿ Hay otra forma mas rapida ?
Les agradezco toda ayuda proporcionada.
Dios les bendiga.
Y les comunico que la empresa que requiere esta informacion ya compro la
licencia de xailer. (Se los recomende y ahora quieren el apoyo)
In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Hay algo mas rapido que set filter ?
-
- Mensajes: 19
- Registrado: Vie Abr 06, 2007 3:46 am
Hay algo mas rapido que set filter ?
Si te sirve de ayuda mi corto conocimiento, yo creo que debieras utilizar
Scope. Te obliga a tener un indice sobre el campo serie, pero se nota una
gran diferencia.
Saludos.
Paco V
"Pedro de Leon Rodas" <pedro_deleon@hotmail.com> wrote:
>Tengo una tabla con 950,000 registros, en esta tabla tengo los siguientes
>campos:
>CAMPO TIPO LONGITUD
>CODIGO C 20
>DESCRIPCION C 35
>SERIE C 20
>FECHA D 8
>
>¿ Como puedo obtener todas las series de x producto y presentarlo en un
grid
>(TDBBROWSE).?
>
>Estoy usando el SET FILTER TO, pero es muy lento
>¿ Hay otra forma mas rapida ?
>
>Les agradezco toda ayuda proporcionada.
>Dios les bendiga.
>
>
>Y les comunico que la empresa que requiere esta informacion ya compro la
>licencia de xailer. (Se los recomende y ahora quieren el apoyo)
>
>
>
Scope. Te obliga a tener un indice sobre el campo serie, pero se nota una
gran diferencia.
Saludos.
Paco V
"Pedro de Leon Rodas" <pedro_deleon@hotmail.com> wrote:
>Tengo una tabla con 950,000 registros, en esta tabla tengo los siguientes
>campos:
>CAMPO TIPO LONGITUD
>CODIGO C 20
>DESCRIPCION C 35
>SERIE C 20
>FECHA D 8
>
>¿ Como puedo obtener todas las series de x producto y presentarlo en un
grid
>(TDBBROWSE).?
>
>Estoy usando el SET FILTER TO, pero es muy lento
>¿ Hay otra forma mas rapida ?
>
>Les agradezco toda ayuda proporcionada.
>Dios les bendiga.
>
>
>Y les comunico que la empresa que requiere esta informacion ya compro la
>licencia de xailer. (Se los recomende y ahora quieren el apoyo)
>
>
>
Hay algo mas rapido que set filter ?
Pedro,
Prueba a crear un índice tipo CUSTOM con los registros que cumplen la
condición del filtro.
Saludos,
José Luis Capel
"Pedro de Leon Rodas" <pedro_deleon@hotmail.com> escribió en el mensaje de
noticias news:[email=467f4491@ozsrv2.ozlan.local...]467f4491@ozsrv2.ozlan.local...[/email]
> Tengo una tabla con 950,000 registros, en esta tabla tengo los siguientes
> campos:
> CAMPO TIPO LONGITUD
> CODIGO C 20
> DESCRIPCION C 35
> SERIE C 20
> FECHA D 8
>
> ¿ Como puedo obtener todas las series de x producto y presentarlo en un
> grid (TDBBROWSE).?
>
> Estoy usando el SET FILTER TO, pero es muy lento
> ¿ Hay otra forma mas rapida ?
>
> Les agradezco toda ayuda proporcionada.
> Dios les bendiga.
>
>
> Y les comunico que la empresa que requiere esta informacion ya compro la
> licencia de xailer. (Se los recomende y ahora quieren el apoyo)
>
>
>
Prueba a crear un índice tipo CUSTOM con los registros que cumplen la
condición del filtro.
Saludos,
José Luis Capel
"Pedro de Leon Rodas" <pedro_deleon@hotmail.com> escribió en el mensaje de
noticias news:[email=467f4491@ozsrv2.ozlan.local...]467f4491@ozsrv2.ozlan.local...[/email]
> Tengo una tabla con 950,000 registros, en esta tabla tengo los siguientes
> campos:
> CAMPO TIPO LONGITUD
> CODIGO C 20
> DESCRIPCION C 35
> SERIE C 20
> FECHA D 8
>
> ¿ Como puedo obtener todas las series de x producto y presentarlo en un
> grid (TDBBROWSE).?
>
> Estoy usando el SET FILTER TO, pero es muy lento
> ¿ Hay otra forma mas rapida ?
>
> Les agradezco toda ayuda proporcionada.
> Dios les bendiga.
>
>
> Y les comunico que la empresa que requiere esta informacion ya compro la
> licencia de xailer. (Se los recomende y ahora quieren el apoyo)
>
>
>
Hay algo mas rapido que set filter ?
Pedro:
Te cuento que a mi entender desde la época de Clipper (el cual aún
utilizo), los filtros son lentos en la mayoría de los casos en que
serían muy útiles.
Si bien mi ayuda no es del todo orientada a Xailer te cuento que cuando
tengo que obtener un grupo de registros que cumplan una determinada
condición y los quiero mostrar en un dbedit() o tdbbrowse lo que hago es
tratar de tener indices bien diseñados y utilizarlos para generar una
tabla auxiliar que contenga dichos registros. Si la frecuencia con que
deseas mostrar esos datos es muy alta, creo que la espera que tendrá el
usuario será menor de esta forma y mayor con set filter.
Saludos
Daniel.
Pedro de Leon Rodas escribió:
> Tengo una tabla con 950,000 registros, en esta tabla tengo los siguientes
> campos:
> CAMPO TIPO LONGITUD
> CODIGO C 20
> DESCRIPCION C 35
> SERIE C 20
> FECHA D 8
>
> ¿ Como puedo obtener todas las series de x producto y presentarlo en un grid
> (TDBBROWSE).?
>
> Estoy usando el SET FILTER TO, pero es muy lento
> ¿ Hay otra forma mas rapida ?
>
> Les agradezco toda ayuda proporcionada.
> Dios les bendiga.
>
>
> Y les comunico que la empresa que requiere esta informacion ya compro la
> licencia de xailer. (Se los recomende y ahora quieren el apoyo)
>
>
>
>
Te cuento que a mi entender desde la época de Clipper (el cual aún
utilizo), los filtros son lentos en la mayoría de los casos en que
serían muy útiles.
Si bien mi ayuda no es del todo orientada a Xailer te cuento que cuando
tengo que obtener un grupo de registros que cumplan una determinada
condición y los quiero mostrar en un dbedit() o tdbbrowse lo que hago es
tratar de tener indices bien diseñados y utilizarlos para generar una
tabla auxiliar que contenga dichos registros. Si la frecuencia con que
deseas mostrar esos datos es muy alta, creo que la espera que tendrá el
usuario será menor de esta forma y mayor con set filter.
Saludos
Daniel.
Pedro de Leon Rodas escribió:
> Tengo una tabla con 950,000 registros, en esta tabla tengo los siguientes
> campos:
> CAMPO TIPO LONGITUD
> CODIGO C 20
> DESCRIPCION C 35
> SERIE C 20
> FECHA D 8
>
> ¿ Como puedo obtener todas las series de x producto y presentarlo en un grid
> (TDBBROWSE).?
>
> Estoy usando el SET FILTER TO, pero es muy lento
> ¿ Hay otra forma mas rapida ?
>
> Les agradezco toda ayuda proporcionada.
> Dios les bendiga.
>
>
> Y les comunico que la empresa que requiere esta informacion ya compro la
> licencia de xailer. (Se los recomende y ahora quieren el apoyo)
>
>
>
>
-
- Mensajes: 620
- Registrado: Jue Mar 23, 2006 2:39 am
Hay algo mas rapido que set filter ?
Pedro:
Si utilizas el servidor local de ADS (gratuito), ADSLOC32.DLL los
filtros son miles de veces mas rapidos que los filtros hechos con
xHarbour normal.
Saludos
Rene Flores
http://www.ciber-tec.com
de Leon Rodas escribió:
> Tengo una tabla con 950,000 registros, en esta tabla tengo los siguientes
> campos:
> CAMPO TIPO LONGITUD
> CODIGO C 20
> DESCRIPCION C 35
> SERIE C 20
> FECHA D 8
>
> ¿ Como puedo obtener todas las series de x producto y presentarlo en un grid
> (TDBBROWSE).?
>
> Estoy usando el SET FILTER TO, pero es muy lento
> ¿ Hay otra forma mas rapida ?
>
> Les agradezco toda ayuda proporcionada.
> Dios les bendiga.
>
>
> Y les comunico que la empresa que requiere esta informacion ya compro la
> licencia de xailer. (Se los recomende y ahora quieren el apoyo)
>
>
>
Si utilizas el servidor local de ADS (gratuito), ADSLOC32.DLL los
filtros son miles de veces mas rapidos que los filtros hechos con
xHarbour normal.
Saludos
Rene Flores
http://www.ciber-tec.com
de Leon Rodas escribió:
> Tengo una tabla con 950,000 registros, en esta tabla tengo los siguientes
> campos:
> CAMPO TIPO LONGITUD
> CODIGO C 20
> DESCRIPCION C 35
> SERIE C 20
> FECHA D 8
>
> ¿ Como puedo obtener todas las series de x producto y presentarlo en un grid
> (TDBBROWSE).?
>
> Estoy usando el SET FILTER TO, pero es muy lento
> ¿ Hay otra forma mas rapida ?
>
> Les agradezco toda ayuda proporcionada.
> Dios les bendiga.
>
>
> Y les comunico que la empresa que requiere esta informacion ya compro la
> licencia de xailer. (Se los recomende y ahora quieren el apoyo)
>
>
>
Hay algo mas rapido que set filter ?
Pedro,
Si usas el RDD BMDBFCDX y SET OPTIMIZE ON crearás "bitmap filters"
(estáticos) que, si bien se tomarán su tiempo en crearse, te darán un
rendimiento perfecto en la navegación.
Saludos
Juan
"Pedro de Leon Rodas" <pedro_deleon@hotmail.com> escribió en el mensaje
news:[email=467f4491@ozsrv2.ozlan.local...]467f4491@ozsrv2.ozlan.local...[/email]
> Tengo una tabla con 950,000 registros, en esta tabla tengo los siguientes
> campos:
> CAMPO TIPO LONGITUD
> CODIGO C 20
> DESCRIPCION C 35
> SERIE C 20
> FECHA D 8
>
> ¿ Como puedo obtener todas las series de x producto y presentarlo en un
> grid (TDBBROWSE).?
>
> Estoy usando el SET FILTER TO, pero es muy lento
> ¿ Hay otra forma mas rapida ?
>
> Les agradezco toda ayuda proporcionada.
> Dios les bendiga.
>
>
> Y les comunico que la empresa que requiere esta informacion ya compro la
> licencia de xailer. (Se los recomende y ahora quieren el apoyo)
>
>
>
Si usas el RDD BMDBFCDX y SET OPTIMIZE ON crearás "bitmap filters"
(estáticos) que, si bien se tomarán su tiempo en crearse, te darán un
rendimiento perfecto en la navegación.
Saludos
Juan
"Pedro de Leon Rodas" <pedro_deleon@hotmail.com> escribió en el mensaje
news:[email=467f4491@ozsrv2.ozlan.local...]467f4491@ozsrv2.ozlan.local...[/email]
> Tengo una tabla con 950,000 registros, en esta tabla tengo los siguientes
> campos:
> CAMPO TIPO LONGITUD
> CODIGO C 20
> DESCRIPCION C 35
> SERIE C 20
> FECHA D 8
>
> ¿ Como puedo obtener todas las series de x producto y presentarlo en un
> grid (TDBBROWSE).?
>
> Estoy usando el SET FILTER TO, pero es muy lento
> ¿ Hay otra forma mas rapida ?
>
> Les agradezco toda ayuda proporcionada.
> Dios les bendiga.
>
>
> Y les comunico que la empresa que requiere esta informacion ya compro la
> licencia de xailer. (Se los recomende y ahora quieren el apoyo)
>
>
>
Hay algo mas rapido que set filter ?
Pedro:
Presta atencion a lo que te dice Paco, con un indice que te
permita encontrar el primer registro que cumple tu condicion un SetScope es
practicamente instantaneo para mostrate todos los registros que cumplan
dicha condicion.
TDbfDataSet:SetScope
Establece un nuevo Scope para el Tag activo.
Tipo
Sólo usable con TDataSet abierto
Parámetros
[<xTop>]
Si distinto de NIL se estable un 'Top Scope' con dicho valor
[<xBottom>]
Si distinto de NIL se estable un 'Bottom Scope' con dicho valor,
en caso contrario se usa el mismo valor que xTop
[<lGoFirst>]
Si verdadero se realiza un GoTop desués de establecer el scope
[<lRefresh>]
Si verdadero provoca un refresco de todos sus DataControls. Por
defecto falso
Valor Retorno
NIL
Este método se basa en la función OrdScope() típica de
Clipper/[x]Harbour.
Saludos.
"Paco V" <ssi@ono.com> escribió en el mensaje
news:467f609a$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>
> Si te sirve de ayuda mi corto conocimiento, yo creo que debieras utilizar
> Scope. Te obliga a tener un indice sobre el campo serie, pero se nota una
> gran diferencia.
> Saludos.
>
> Paco V
>
> "Pedro de Leon Rodas" <pedro_deleon@hotmail.com> wrote:
>>Tengo una tabla con 950,000 registros, en esta tabla tengo los siguientes
>
>>campos:
>>CAMPO TIPO LONGITUD
>>CODIGO C 20
>>DESCRIPCION C 35
>>SERIE C 20
>>FECHA D 8
>>
>>¿ Como puedo obtener todas las series de x producto y presentarlo en un
> grid
>>(TDBBROWSE).?
>>
>>Estoy usando el SET FILTER TO, pero es muy lento
>>¿ Hay otra forma mas rapida ?
>>
>>Les agradezco toda ayuda proporcionada.
>>Dios les bendiga.
>>
>>
>>Y les comunico que la empresa que requiere esta informacion ya compro la
>
>>licencia de xailer. (Se los recomende y ahora quieren el apoyo)
>>
>>
>>
>
Attached files
Presta atencion a lo que te dice Paco, con un indice que te
permita encontrar el primer registro que cumple tu condicion un SetScope es
practicamente instantaneo para mostrate todos los registros que cumplan
dicha condicion.
TDbfDataSet:SetScope
Establece un nuevo Scope para el Tag activo.
Tipo
Sólo usable con TDataSet abierto
Parámetros
[<xTop>]
Si distinto de NIL se estable un 'Top Scope' con dicho valor
[<xBottom>]
Si distinto de NIL se estable un 'Bottom Scope' con dicho valor,
en caso contrario se usa el mismo valor que xTop
[<lGoFirst>]
Si verdadero se realiza un GoTop desués de establecer el scope
[<lRefresh>]
Si verdadero provoca un refresco de todos sus DataControls. Por
defecto falso
Valor Retorno
NIL
Este método se basa en la función OrdScope() típica de
Clipper/[x]Harbour.
Saludos.
"Paco V" <ssi@ono.com> escribió en el mensaje
news:467f609a$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>
> Si te sirve de ayuda mi corto conocimiento, yo creo que debieras utilizar
> Scope. Te obliga a tener un indice sobre el campo serie, pero se nota una
> gran diferencia.
> Saludos.
>
> Paco V
>
> "Pedro de Leon Rodas" <pedro_deleon@hotmail.com> wrote:
>>Tengo una tabla con 950,000 registros, en esta tabla tengo los siguientes
>
>>campos:
>>CAMPO TIPO LONGITUD
>>CODIGO C 20
>>DESCRIPCION C 35
>>SERIE C 20
>>FECHA D 8
>>
>>¿ Como puedo obtener todas las series de x producto y presentarlo en un
> grid
>>(TDBBROWSE).?
>>
>>Estoy usando el SET FILTER TO, pero es muy lento
>>¿ Hay otra forma mas rapida ?
>>
>>Les agradezco toda ayuda proporcionada.
>>Dios les bendiga.
>>
>>
>>Y les comunico que la empresa que requiere esta informacion ya compro la
>
>>licencia de xailer. (Se los recomende y ahora quieren el apoyo)
>>
>>
>>
>
Attached files