Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-10-2003
Avatar de apicito
apicito apicito is offline
Miembro
 
Registrado: may 2003
Ubicación: Ourense
Posts: 341
Poder: 22
apicito Va por buen camino
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.
Responder Con Cita
  #2  
Antiguo 16-10-2003
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 24
guillotmarc Va por buen camino
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.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #3  
Antiguo 16-10-2003
Avatar de apicito
apicito apicito is offline
Miembro
 
Registrado: may 2003
Ubicación: Ourense
Posts: 341
Poder: 22
apicito Va por buen camino
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...
Responder Con Cita
  #4  
Antiguo 16-10-2003
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
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 (sobre gustos, colores)
Responder Con Cita
  #5  
Antiguo 17-10-2003
Avatar de apicito
apicito apicito is offline
Miembro
 
Registrado: may 2003
Ubicación: Ourense
Posts: 341
Poder: 22
apicito Va por buen camino
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.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 07:48:51.


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
Copyright 1996-2007 Club Delphi