La opción correcta sería como te comentó Roman, mediante propiedades:
Código Delphi
[-]
TForm1 = class(TForm);
public
DataSetForm: TIBDataSet read FDataSetForm write FDataSetForm;
end;
Procedure TForm1.ButtonClick(Sender: TObject);
begin
Form2 := TForm2.Create(Self);
Form2.DataSetForm := IBDataSet1;
end;
Procedure TForm2.ButtonClick(Sender: TObject);
var
Aux : Integer;
begin
Aux := DataSetForm.FieldByName('CAMPO1').Value;
Form3 := TForm3.Create(Owner); Form3.DataSetForm := DataSetForm;
end;
Procedure TForm3.ButtonClick(Sender: TObject);
var
Aux : Integer;
begin
Aux := DataSetForm.FieldByName('CAMPO1').Value;
end;
Si sólo vas a necesitar un campo de la tabla sería mejor pasar sólo el valor del campo y no el dataset.
saludos!!