Ver Mensaje Individual
  #4  
Antiguo 19-02-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Reputación: 29
Lepe Va por buen camino
Como solemos decir por aqui: "a lo hecho, pecho", si has tomado la decisión de poner los controles en el form no voy a darte otra alternativa (y menos aún cuando yo hago lo mismo que tú ).

Si yo hago un Frame es para usarlo en Forms distintos, mostrando datos de diferentes Datasets en cada instancia del frame.

Si el frame necesita el dataset de otra ventana, hago esto:
Código Delphi [-]
Frame1 = class(Tframe)
...
private
  FDataset:TIBDataset;
public
  property Dataset: TIBDataset read FDataset write SetDataset;
end;

implementation

procedure TFrame1.SetDataset(Value:TIBDataset);
begin
  if Value <> FDataset then 
  begin
     FDataset:= Value;
     Reabrir las consultas locales del frame
  end;

Ahora en dentro del form, para asignarle un Dataset de ese frame:
Código Delphi [-]
procedure TFrmReservas.Button1Click(....);
begin
   Frame1.Dataset := IBDataset1;
end;

Con esto se puede modificar fácilmente el dataset de cada Frame en tiempo de ejecución. (aunque no sé si lo necesitarás, me parece que no)

Realmente la propiedad "Dataset" es un puntero al IBDataset1 de la ventana de Reservas, pero está declarado dentro del frame, no tengo que hacer un "uses UnitReservas" dentro del Frame.

El error que comentas no lo visto en mi vida. Según Google tiene que ver con ADO, (puesto que no lo he usado nunca), y dices que usas IB... me deja más perplejo.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita