 |
Club Builder Foro de C++Builder en español
|
| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
_Willa Capt


Registrado: 28 Ago 2002Mensajes: 169Ubicación: Madrid ( España )
|
Publicado: Mie 03 Sep, 2008 4:01 pm Asunto: Componente TStringGrid o TDBGrid!! |
|
|
Me gustaria saber que diferencias o ventajas dispone el uso de uno u otro componente, sabiendo que si Asociamos el TDBGrid, el movimiento o desplazamiento en el registro es automático.
Ventajas e inconvenientes de usar uno u otro ?
TStringGrid o TDBGrid _________________ Saludos
~~~~~~~~
_Willa
~~~~~~~~
www.avancegame.com |
|
| Volver arriba |
|
 |
cecito Capt

Registrado: 25 Nov 2003Mensajes: 164Ubicación: Arequipa - Perú
|
Publicado: Jue 04 Sep, 2008 1:44 pm Asunto: |
|
|
La ventaja principal es que puedes mantener separada la lógica de "Datos" con la presentación, pero esto solo es evidente si así has diseñado tu aplicación osea en capas.
-Puedes manipular los datos del stringrid y hacerle modificaciones, inserciones y eliminaciones sin que esto se refleje en la tabla y si al final desides descartar todos las operaciones no tienes el temor de que tus datos ubiesen cambiado, ya que todo lo hacias de forma temporal.
-La desventaja es que tienes que pasar a mano los datos de tus tablas al stringgrid y viceversa.
Es mucho más trabajo, pero tienes al final tambien mucho más control sobre lo que sucede.
Un equivalente al stringgrid sería el listview, la ventaja principal que tiene es que posee un modo "virtual" en el cual no le copias todos los datos de la tabla, sino atravez de eventos te va solicitando los registros que en ese momento se van ha mostrar.
Para trabajar de esta forma debes tener siempre una tabla abierta con los datos a mostrar(como sucede con el dbdgrid), poner ownerdata=true,
especificar cuantos registros se posee con listview->Items->Count = tamaño, programar el evento OnData que se ejecutara cada vez que se requiera mostrar un nuevo registro.
Yo aprendi a usarlo de esta página http://bcbjournal.org/articles/vol4/0001/Fast_updates_with_virtual_list_views.htm.
Nos vemos  |
|
| Volver arriba |
|
 |
Touchsoftwares Master


Registrado: 16 Dic 2002Mensajes: 869Ubicación: MEXICO Playa del Carmen
|
Publicado: Jue 04 Sep, 2008 4:33 pm Asunto: |
|
|
Bueno, existe una solucion para hacer usar el tdbgrid, es quela plantilla de captra sea una tabla TEMPORAL, entocnes aprovechas las ventajas delTDBgrid pero sin enlazarla a tus datos reales, es decir, en el proceso de "guardado" tienes qeu hacer a "mano" los updates hacia la tabla detalles real en con ciclo for o while y luego vaciar el temporal _________________ Ing. Gabriel Góngora Navarrete
TouchSoftwares Inc
http://www.touchsoftwares.com |
|
| Volver arriba |
|
 |
_Willa Capt


Registrado: 28 Ago 2002Mensajes: 169Ubicación: Madrid ( España )
|
Publicado: Vie 12 Sep, 2008 12:46 pm Asunto: |
|
|
TDBGrid,
Yo me referia, la carga que tiene que ser para el sistema el asignar un
DataSet de una consulta de 1.000.000 de registros, el TDBGrid se
debe chupar la memoria como cosa fina..., por eso digo que al ser automático te ahorra el tener manipular registro a registro a la hora de visualizar, pero el uso de memoria es considerable sobre todo cuando manejamos una gran cantidad de registros en la consulta,
Por otra parte esta el StringGrid, el cual le podemos cargar en funcion de la necesidades "solo" el bloque de consulta que se visualiza en pantalla por lo que el ahorro de memoria es considerable, solo claro que esto supone un control sobre la parte o bloque de registro que se visualizan en cada momento.
Esto es mi modesta opinión si existe algun otro mecanismo de control o ahorro ... podian indicarlo!! _________________ Saludos
~~~~~~~~
_Willa
~~~~~~~~
www.avancegame.com |
|
| Volver arriba |
|
 |
Tor Master


Registrado: 22 Mar 2005Mensajes: 269Ubicación: obera, misiones, argentina
|
Publicado: Dom 14 Sep, 2008 11:12 pm Asunto: |
|
|
Hola, al igual que controlas la consulta para un TStringGrid también puedes controlar la consulta para un TDBGrid, si solo visualizas 40 registros no hace falta traer 10.000 de la bd, los TDBGrid son cuestionables cuando son usados con campos TDBLookupComboBox dentro del mismo. Creo que el usar TStringGrid o TDBGrid dependerá de cada situación.
saludos tor _________________ Un experto es aquel que ya ha cometido todos los errores posibles en una materia muy concreta.
(Niels Bohr) |
|
| Volver arriba |
|
 |
|
|
No puedes publicar temas nuevos en este foro No puedes responder a temas en este foro No puedes editar tus mensajes en este foro No puedes borrar tus mensajes en este foro No puedes votar en las encuestas de este foro
|
© 2002–2026 Club Builder · Funciona con phpBB.
|