Ver Mensaje Individual
  #24  
Antiguo 28-10-2006
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Reputación: 26
vtdeleon Va por buen camino
Saludos

Cita:
Empezado por roman
No dudo que tengas razón, pero para ganancia del debate sería interesante conocer en qué casos la gente prefiere poner los datasets en los formularios.
Te escribiré de mi manera en particular.

Creo que Lepe ha dado un punto de el por qué uso dataset en los Forms
Cita:
Empezado por Lepe
Ahora mismo por necesidad del cliente, quiere tener varias ventanas abiertas de cliente, y en cada ventana quiere tener un cliente distinto. En esta situación no se pueden compartir los objetos TTable en un solo Datamodule, hay que poner las tablas y los datasources sobre el mismo Form, abrirlos al crear la ventana y cerrarlos al salir.
Por lo regular desarrollo en FB, utilizando MDO y solo MDODataset (Ds). Cada formulario puede requerir uno que otro campo (uno, dos o todos), por tanto suelo tener "Ds" que solo traigan los campos y registros necesarios para mi consulta o transacción. Y preguntaras ¿Por qué no poner todo esos "Ds" en un Datamodulo?, pues para el simple hecho de no confundirme, no tener nombres similares o parecidos, además de tener todo centrado.

Pongamos un Ej. de un "Ds" que no dejaría solo en un Datamodulo: Tabla Empleados (Sis. Nóminas).

En este necesitamos un Formulario de registro de Empleados, para lo cual necesitaremos todos los campos de la tabla Empleado; otro formulario solo para consultar quienes cumplen año en un determinado Mes; otro para consultar sus ingresos y/o prestaciones; y así sucesivamente. Como puedes ver, los dos últimos formularios solo necesitan ciertos campos, no todos.

Cita:
Empezado por Lepe
Lo cierto es que uso un Datamodule general para configurar la conexión, objeto database, tablas y consultas que si se comparten con varias ventanas, (por ejemplo un listado de clientes ordenado alfabéticamente, etc), y todos ellos si se mantienen abiertos durante toda la ejecución del programa.
En un Datamodulo suelo agregar MDODatabase, Transaction, ciertos objetos no visuales como el TImageList y rara vez un "Ds" como la tabla de Usuario (por decir uno fácil).

El mantenimiento seria duro, engorroso, devastador; Cambiar de DB descomunal. No existe un Sistema Ideal.

Con respecto al tiempo en que duraría la aplicación en iniciar, esto es relativo.

Dataset en Datamodulo: Cada vez que se inicia la aplicación tarde un poco mas en estar "ready" porque esta creando los Objetos que se encuentran el en Datamodulo. Ganando un poco mas de rapidez cada vez que creas un formulario.

Dataset en Forms: Viceversa.

PD: :rooleyes: Quede claro que es la manera en como lo veo, Personal. Y como es así, podría tener un punto de vista o algunos conceptos erróneos, por lo que podría cambiar si es para mejorar .

Pd: No soy muy bueno expositor.
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita