Hola Minoru.
Intentaré explicarlo lo mejor posible sobre el ejemplo que trabajas.
1) Agrega un módulo de datos:
Archivo->Nuevo->Modulo de datos. (vg.: Unit3)
2) Pone en él el
TIBConnection, el
TSQLTransaction y el
TSQLQuery.
3) Quitar los componentes de datos de los formularios.
4) Agregar el modulo de datos (Unit3) a la cláusula
uses de los forms en que vaya a ser requerido
5) Agregar un
TDataSource al form y asociar la propiedad
DataSet del
TDataSource al
TSQLQuery:
Luego vas a tener que indicar el origen en cada referencia a los datos de este modo:
Código Delphi
[-]
procedure TForm1.Button2Click(Sender: TObject);
begin
with DataModule1 do
begin
sqlq.Active:=False;
sqlq.sql.text:= 'SELECT CLIENTES.CODIGO,REPARACIONES.CODIGO, ...';
sqlq.Active:=True;
sqlq.FilterOptions := [foCaseInsensitive];
sqlq.Filter := 'NOMBRES=' + QuotedStr('*'+text1.text+'*');
sqlq.Filtered := true;
sqlq.First;
end;
end;
Y la llamada a Form2, sería solamente:
Código Delphi
[-]
procedure TForm1.DBGrid1DblClick(Sender: TObject);
begin
if not Assigned(Form2) then
Form2:= TForm2.Create(Self);
Form2.Show;
end;
Por último en Form2 agrega otro
TDataSource, enlazalo con el
TSQLQuery (igual que en 5) y reemplaza los
TEdit por
TDBEdit, poniendo en todos la propiedad
DataSource igual a
DataSource1 y en la propiedad
DataField el nombre de campo que corresponda.
Quedaría mas o menos así:
Espero haber sido claro, cualquier duda consulta nuevamente.
Saludos