function cloneQuery(ibQuery:TIBQuery):TClientDataSet;
var
Campo :string;
i :integer;
tabla : TClientDataSet;
begin
tabla:= TClientDataSet.Create(nil); tabla.ProviderName := '';
tabla.PacketRecords := -1;
tabla.StoreDefs := true;
tabla.Options := tabla.Options + [poAllowCommandText];
tabla.CommandText := ibQuery.SQL.Text;
tabla.Open; with ibQuery do
begin
Open;
while not EOF do begin
tabla.Append;
for i := 0 to FieldCount-1 do
begin
Campo := Fields[i].FieldName;
tabla[Campo] := ibQuery[Campo];
end;
tabla.Post;
Next;
end;
Close;
end;
tabla.Close;
result := tabla;
end;