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)
-   -   Aislamiento de Modulos de Datos en Aplicaciones MDI (https://www.clubdelphi.com/foros/showthread.php?t=4452)

apicito 16-10-2003 11:45:50

Aislamiento de Modulos de Datos en Aplicaciones MDI
 
En una aplicación MDI es aconsejable utilizar modulos de datos?
Digo esto porque creo (seguramente en mi ignorancia) que si se abren simultanemente dos instancias del mismo formulario MDIChild, que está conectado a un modulo de datos, las acciones sobre una transacción puden afectar al estado de los dataset de ambos formularios. Es decir, imaginemos una dormulario MDIChild de introducción de fichas con dos fichas en modo de inserción y conectadas a una transacción que residen en el mismo modulo de datos: si hago rollback de la transacción no me afectará a ambas fichas?
Utilizo Firibird e Ibo.

guillotmarc 16-10-2003 14:00:20

Hola.

En efecto, las dos instancias del formulario, atacarán al mismo dataset del datamodule que comparten, de forma que los cambios hechos en un formulario se trasladarán al otro.

Tienes dos opciones :

A) Los datasets que no deben ser compartidos, los pones sobre el formulario y no en el datamodule.

B) Creas un datamodule para cada formulario, de forma que al crear una instancia de un formulario, creas una instancia del datamodule correspondiente. Ahora tienes que enlazar los campos del formulario, con el dataset del datamodule recien creado. Usualmente se suele hacer poniendo un TDatasource en el formulario y enlazando los campos con él. Una vez creada una nueva instancia del formulario y del datamodule, se asigna la propiedad Dataset del Datasource en el formulario, a el Dataset correspondiente en el nuevo Datamodule.

Espero que se entienda la opción B). Yo por comodidad trabajo con la A), pero tengo amigos que trabajan con B) sin problemas.

Saludos.

apicito 16-10-2003 15:14:07

Gracias.
Yo estoy utilizando la opcion A, pero como en el foro siempre se habla de que es mejor la utilización de modulos de datos...

__cadetill 16-10-2003 17:37:52

Cita:

Posteado originalmente por apicito
Yo estoy utilizando la opcion A, pero como en el foro siempre se habla de que es mejor la utilización de modulos de datos...
Pero es que esto es dependiendo de cómo diseñes tu aplicación. Por ejemplo, yo, cuando hago aplicaciones MDI, normalmente los formularios MDIChild me sirven como visualizadores de datos (en una rejilla) y, cuando quiero hacer modificaciones/inserciones de datos, abro una pantalla Modal, por lo que no será posible añadir/modificar desde 2 formularios a la vez

No obstante, la opción B me gusta más que la A :D (sobre gustos, colores)

apicito 17-10-2003 09:08:10

Necesito poder abrir simultaneamente dos versiones para hacer intercambio de datos entre ellas, por ello lo de incluir los datasets en el formulario.
Gracias por la aclaración.


La franja horaria es GMT +2. Ahora son las 20:42:21.

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