![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Hola
Pues mira, me ha picado la curiosidad y tenía que probarlo. Pongo en un formulario una conexión TDBGrid o TcxGrid -> TDataSource -> TClientDataSet -> TDataSetProvider -> TTable El TTable configurado como: - DataBaseName = DBDEMOS - TableName = customer.db El TClientDataSet como: - PacketRecords = 10 El TDBGrid o TcxGrid lo suficientemente pequeños como para que no quepan más de 10 registros. Pongo un TEdit (para sacar el resultado de la prueba) y un TButton con el siguiente código:
Resultado de la prueba: - con TDBGrid: me marca 10 registros - con TcxGrid: me marca 55 registros Como suponía, el TcxGrid va pidiendo registros al TClientDataSet hasta llegar a Eof, por lo que NO se comportan de la misma manera. Uno depende directamente del DataSet y el otro "pasa" del DataSet pidiéndole todos los datos. |
|
#2
|
||||
|
||||
|
Cita:
![]() |
|
#3
|
|||
|
|||
|
Se ha generado una buena discusion al respecto;
Pero finalmente la experiencia muestra una notable diferencia en velocidad de respuesta, entre Quantum y el grid usamos. CRdbgrid (de DEVART -antes corelab-) "carga" hasta 20 veces mas rapido en una ventana que muestra 20 registros de un tabla en MySQL que contiene 247,000; que la misma pantalla usando Quantum. Ahora bien, CRdbgrid usa los filtros hasta que el usuario los "confirma" y segun vi Quantum va "filtrando" la informacion conforme se teclea el filtro); las ordenaciones son mas rapidas en quantum que en CRdbgrid, pero no mucho.... |
|
#4
|
|||
|
|||
|
Hola
Cita:
![]() |
|
#5
|
|||
|
|||
|
Cita:
Pero el problema de la carga inicial de los registros, veo que es cosa totalmente aparte. |
|
#6
|
||||
|
||||
|
Cita:
Cita:
En el case de ADO, que es el que más manejo, se puede configurar la fuente de datos para funcionar en modo Server-side (cursor en el lado servidor), con esto consigues que el Grid estandard de Delphi, no cargue todos los registros al abrir, sino que los vaya cargando a medida que los va necesitando. En este caso, los datos se piden bajo demanda, pero lo hace el DBGrid de forma automática. La sorpresa es que la misma configuración la "enganchas" al Grid de las Quantum, y al abrir se recorre TODO el Dataset y carga todos los datos. ![]() ![]() Es decir, el Grid de las Quantum, hace "algo más" que el estandard. Se puede corregir con la propiedad que hemos comentado, pero el funcionamiento es distinto.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
|
#7
|
|||
|
|||
|
Hola Neftali
Cita:
|
|
#8
|
|||
|
|||
|
Hola
Hombre, normal, pero es que entonces estás forzando a que los paquetes de registros tengas que requerirlos tú por código mediante el método GetNextPacket. Es decir, un TDBGrid tampoco podrá llegar a tener nunca todos los registros del dataset si no es explícitamente mediante código, cosa que no pasa si esta propiedad está activada. En fin, que algunos vemos el vaso medio lleno y otros medio vacío ![]() |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| ondrawcolumncell en QuantumGrid | Willo | Varios | 7 | 09-09-2008 23:24:55 |
| Quantumgrid Devèxpresss | Leonardo | Varios | 5 | 07-02-2008 16:38:41 |
| Traducción del QuantumGrid 3.x extraviada | courtois | Varios | 1 | 06-06-2007 11:11:53 |
| Problemas al instalar el DevExpress QuantumGrid | jcapitan | Varios | 2 | 03-08-2006 07:50:57 |
| Recursos en Castellano de QuantumGrid? | DANY | OOP | 6 | 14-07-2005 15:26:36 |
|