Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   donde poner los componentes dbxpress (https://www.clubdelphi.com/foros/showthread.php?t=8440)

wonder boy 22-03-2004 23:55:33

donde poner los componentes dbxpress
 
Hola amigos, estoy tratando de poner los componentes DBXpress en mi sistema. Se que el SQLCOnection va en el modulo de datos igual que los SQLDATaset's, ahora lo que no se es donde van los providers y los clientdataset's entiendo que almenos los clientdataset deben ir el los fomularios, para que solo se carguen los datos en memmoria cuando los necesito, pero los providers's?...

en fin, si alguien me puede orientar

pd offtopic: gracias cadetill por tu ayuda para iniciar este hilo

__cadetill 23-03-2004 00:29:00

Bueno, antes de nada, no hay de qué

Para el tema que nos ocupa y, como ya te comenté, no he trabajado demasiafo con DBExpress, pero tirando de lógica.... puedes poner tus Providers y ClientDataSets donde quieras, modulo de datos o formulario. Sólo has de tener presente una cosa, los datos se traerán al activar el ClientDataSet en cuestión, mientras, se quedarán en el servidor. Por lo tanto, si un dataset no lo necesitas, no lo actives. Activalo sólo cuando sea necesario (es decir, cuando utilices el formulario que "tira" de él)

Lo demás, situación de los componentes, es todo cuestión de gusto, estética y tipo de aplicación (en una MDI es más fácil controlarlo si los datasets entán en el mismo formulario)

Espero te sirva

guillotmarc 23-03-2004 09:38:29

Hola.

Como dice Cadetill, los Providers los puedes poner perfectamente en los modulos de datos. (Si pones los sqlQuerys en el modulo de datos, te recomiendo poner los Provider también allí, dejando en los formularios solamente los ClientDataset y los Datasource).

Saludos.

wonder boy 23-03-2004 13:47:37

Si, pero...
 
esta bien, pero al poner los providers en el modulo de datos me sucede que tengo el problemita que borland no se si ha solucionado, y es que cuando hago una herencia del datasource (por ejemplo), dos por tres se desengancha la propiedad DataSet y cuando llego a un cliente no anda pues no tiene origen de datos cargado en el datasource. Ahora, independientemente de eso, me gusto la idea de activar solo los que uso y tener todo en el modulo de datos, pero (siempre hay uno), ¡¡pregunto no?, no es mucho poner todo en el modulo de datos, ya que por c/tabla que use debo tener 3 componentes...

bueno, son solo ideas igualmente me quedo mas claro con sus apreciaciones, muchas gracias!!!

guillotmarc 23-03-2004 14:01:23

Hola.

No conozco el problema que comentas de la herencia, nunca me lo he encontrado. (Supongo que hablamos de herencia visual).

El problema de ponerlo todo en el modulo de datos, es que si tienes dos formularios del mismo tipo abiertos, los dos mostrarán los mismos datos ya que apuntarian al mismo clientdataset. (En cambio si el clientdataset está en el formulario, cada formulario podrá estar abierto en un registro distinto).

Saludos.

__cadetill 23-03-2004 15:25:51

Bueno, yo sí que me he encontrado con ese problema, pero nunca con tablas, sino con frames y conponentes allí puestos.

La solución, bueno, es de suponer que los formularios/DM bases, no son utilizados más que para la herencia, es decir, no los utilizas directamente desde ningún otro formulario/DM. Si no fuera así, te recomiendo que los que utilices, sencillamente crees otro heredado pero sin tocar nada.
Una vez lo tengas así, comprieba que en el base no tengas nada relacionado con otros formularios/DM y que estas relaciones se hagan sólo desde los hijos.

Yo lo tengo así como te he explicado y, de momento me funciona todo bien ;)


La franja horaria es GMT +2. Ahora son las 05:04:25.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi