Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-07-2004
brandolin brandolin is offline
Miembro
 
Registrado: jul 2003
Ubicación: Mendoza
Posts: 324
Poder: 21
brandolin Va por buen camino
Si algunos formularios del sistema los tengo asi, pero en algunos la cantidad de Tablas, Querys, Store Procedure, etc, etc son demasiados para tenerlos en el mismo form. Ademas migre parte del codigo en el data module para que sea mas legible. (¿creo que para eso estan, o estoy equivocado?)

Ademas tengo otro DataModule principal que tiene la conexion a la base de datos, etc, etc.

¿Alguien sabe como hacer para que esto funcione? ¿Donde debo crear el data module?, etc, etc. Gracias
Responder Con Cita
  #2  
Antiguo 06-07-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
El problema viene dado fundamentalmente por ser una aplicación Mdi.

En el Modulo de datos debes de colocar solamente la conexión a la base de datos y la sesión.

Porque al ser una aplicación Mdi, el mismo usuario podria abrir la misma factura 2 veces ó 3 desde formularios distintos, entonces cada formulario debe tener su componente Ttable o Tquery quedando centralizada la conexión con la BD y la sesión, aunque también sería conveniente que dijeras que tipo de tablas estás manejando.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 06-07-2004
brandolin brandolin is offline
Miembro
 
Registrado: jul 2003
Ubicación: Mendoza
Posts: 324
Poder: 21
brandolin Va por buen camino
Estoy manejando los componentes IBX + Firebird 1.5.

Esta bien si coloco los IBDataSEt, etc, etc en el form pero se complicaria mucho el diseño y la claridad. No hay forma de que ese DataModule sea privado al form y se habra una copia de el para cada form ?

Gracias por todo
Responder Con Cita
  #4  
Antiguo 06-07-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por brandolin
No hay forma de que ese DataModule sea privado al form y se habra una copia de el para cada form ?
Puer sí. Créa una copia distinta cada vez que crees el formulario. Por ejemplo en el evento OnCreate del formulario. De hecho puedes poner al data module como una variable privada del formulario:

Código Delphi [-]
uses
  UnidadDataModuleFacturas;

type
  TfrmFactura = class(TForm)
    procedure FormCreate(Sender: TObject);

  private
    DataModule: TDataModuleFacturas;
  end;

implementation

procedure TfrmFactura.FormCreate(Sender: TObject);
begin
  DataModule := TDataModuleFacturas.Create(Self);
end;

// Saludos
Responder Con Cita
  #5  
Antiguo 06-07-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Yo pondría un Modulo de datos para la conexión a la BD y alguna cosa más de tipo genérico, luego lo más lógico es que cada formulario lleve sus IbTables, queries.....

Porque crear un Modulo de datos por cada formulario me parece excesivo, pero si lo haces así puede funcionar sin ningún problema.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #6  
Antiguo 06-07-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por marcoszorrilla
Porque crear un Modulo de datos por cada formulario me parece excesivo
Sí, a mi también me parece un exceso pero él insistía

// Saludos
Responder Con Cita
  #7  
Antiguo 06-07-2004
brandolin brandolin is offline
Miembro
 
Registrado: jul 2003
Ubicación: Mendoza
Posts: 324
Poder: 21
brandolin Va por buen camino
Roman y otros: Gracias por sus opiniones. la verdad es que ya opino lo mismo pero como el sistema es bastante grande quiero darle un poco de claridad en el codigo fuente y migrar algunos controles de datos, inicializaciones, etc, etc a los data modules.

Creo que se veria un poco mas claro. No obstante ya habia probado la respuesta que da Roman y el comportamiento sigue igual.

Voy a ver como puedo acomodar las cosas para que funciones decentementes. Gracias
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 03:23:09.


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