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)
-   -   Mejora No Visual para un TDataModule (https://www.clubdelphi.com/foros/showthread.php?t=96615)

darkamerico 23-02-2024 17:38:36

Mejora No Visual para un TDataModule
 
Saludos amigos,
Os pongo en situación, muchas veces una aplicación se extiende tanto que los componentes TQuery, TDataSource, etc. se apilan por montones en un data module, lo cual obliga a crear un segundo, un tercer datamodule y anidarlos con el componente TConnection para trabajar, lo cual aparte de ser incomodo, se hace complicado de mantener con el tiempo.

Intenté reemplazar los TDataModule con TForm, con la idea de poder utilizar componentes containers como TTabControls para agrupar los componentes de acceso a datos, pero son incompatibles por ser no visuales, ahora bien, quizás exista por ahí algún componente TTabControl o similar que sea capaz de albergar componentes TConnection, TQuery, etc. dentro de un TDataModule.

Seria una mejora muy interesante integrar esta funcionalidad de forma nativa en un TDataModule, dotarlos de la capacidad de tener componentes containers como: TPanel, TTabControl, etc.

Atte
Americo Torres

Casimiro Notevi 24-02-2024 11:47:56

Puedes crear tantos datamodules como necesites, en lugar de tener uno con muchos componentes.

juanelo 24-02-2024 20:00:34

Cita:

Empezado por Casimiro Notevi (Mensaje 554585)
Puedes crear tantos datamodules como necesites, en lugar de tener uno con muchos componentes.

Aunque no soy partidario de colocar "muchos" componentes en un datamodule, no deja de tener sentido y practticidad la idea del compañero darkamerico

Casimiro Notevi 25-02-2024 01:23:53

Imagino que se podría hacer algo así como una especie de componente que fuese una lista de componentes :rolleyes:

darkamerico 26-02-2024 02:17:21

Esta idea no es nueva
 
Saludos compañeros y amigos, me he percatado en mis investigaciones que diversos desarrolladores tenian una idea parecida ya desde hace tiempo, quizas desarrollar un componente paralelo a un TDataModule y unos cuantos componentes agrupadores como tabs, paneles, y otros (solo design time) podrían ser muy útiles para mejorar la ordenación lógica de los componentes de acceso a datos.

Lanzo el reto a aquellos con las capacidades suficientes para realizar esta tarea.

Un fuerte abrazo a todos

marco3k 03-05-2024 15:53:00

Data Module separados
 
Cita:

Empezado por darkamerico (Mensaje 554577)
Saludos amigos,
Os pongo en situación, muchas veces una aplicación se extiende tanto que los componentes TQuery, TDataSource, etc. se apilan por montones en un data module, lo cual obliga a crear un segundo, un tercer datamodule y anidarlos con el componente TConnection para trabajar, lo cual aparte de ser incomodo, se hace complicado de mantener con el tiempo.


Como te dice casimiro, puedes tener varios datamodules, yo me estructuro una aplicacion de escritorio en 3 carpetas: acceso a datos (aqui creo un data module con componentes tibquery), logica (aqui creo un data module con componentes tdatasetprovider y tclientdataset que llama a su componente de acceso a datos), interfaz (aqui creo los formularios que va usar el sistema pero que son heredados de una clase form personalizada y que llama a su componente logica). Lo anterior lo aplico para cada tabla, es decir no tienes que meter todos los componentes a un solo data module, debes estructurarlo para que sea ordenado y fácil de manejarlo.


Cita:

Seria una mejora muy interesante integrar esta funcionalidad de forma nativa en un TDataModule, dotarlos de la capacidad de tener componentes containers como: TPanel, TTabControl, etc.
Puedes crear compenentes personalizados y anadirlo como una ficha de delphi, yo tengo creado componentes de botones, edits, dtpicker y varios mas. Tambien tengo clase formularios que heredo cada vez que creo un nuevo formulario. Es decir lo que tu pides ya existe desde hace tiempo, no es algo que se deba reinventar.


Mira hace años aprendí esto de estructurar una aplicación de delphi gracias a la pagina delphiallimite, que aun funciona, googlealo y encontraras esto para que te sea de guía en tus desarrollos.



Suerte


La franja horaria es GMT +2. Ahora son las 17:25:43.

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