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

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-10-2003
Giniromero Giniromero is offline
Miembro
 
Registrado: may 2003
Ubicación: Madrid
Posts: 296
Poder: 22
Giniromero Va por buen camino
DataSource en distinto Form que la tabla

Hola,

Tengo una aplicación en delphi 6, con Interbase 7 y dialecto 3.

Tengo todos mis DataSet en un DataModule.

El caso es que, del mainForm de mi programa, pulsando un botón, se muestra un nuevo form, form2, que me gestiona una tabla, esto es, nuevos registros, cancelar, aceptar modificaciones....

La tabla en cuestión está en el DataModule del que hablé antes, con todas las demás tablas.

Al tratar de asignarle el siguiente código, me daba error si lo ponía directamente en el onStateChange, del DataSource de dicha tabla, estado este dentro del DModule:

procedure TFrmDModule.SrcDataSet1StateChange(Sender: TObject);
begin
if (DataSet1.State = dsInsert) or (DataSet1.State =dsEdit) then begin
FrmForm2.BitAceptar.Enabled := True;
FrmForm2.BitCancelar.Enabled := True;
FrmForm2.BitNew.Enabled := False;
FrmForm2.BitBorrar.Enabled := False;
FrmForm2.BitSalir.Enabled := False;
end
else begin
FrmForm2.BitAceptar.Enabled := False;
FrmForm2.BitCancelar.Enabled := False;
FrmForm2.BitNew.Enabled := True;
FrmForm2.BitBorrar.Enabled := True;
FrmForm2.BitSalir.Enabled := True;

end;

end;

Pero no me da problemas si dicho datasource lo pongo en el Form2, en vez de en el DModule, con este mismo código en OnStateChange.

procedure TFrmForm2.SrcDataSet1StateChange(Sender: TObject);
begin
if (FrmDModule.DataSet1.State = dsInsert) or (FrmDModule.DataSet1.State =dsEdit) then begin
BitAceptar.Enabled := True;
BitCancelar.Enabled := True;
BitNew.Enabled := False;
BitBorrar.Enabled := False;
BitSalir.Enabled := False;
end
else begin
BitAceptar.Enabled := False;
BitCancelar.Enabled := False;
BitNew.Enabled := True;
BitBorrar.Enabled := True;
BitSalir.Enabled := True;

end;

end;


Mis dudas son,
1)¿por que me da error si pongo el datasource en el datamodule, junto a su tabla correspondiente?

2) poniendo así el código, voy a necesitar poner otro datasource en otra parte del programa, refiriendose a esta misma tabla, ¿puedo hacerlo?

Muchas gracias por todo de antemano,

Virginia
__________________
Sonrie al mundo, y el mundo te sonreirá :)
Responder Con Cita
 



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 18:51:48.


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