Koristim TIBDataSet, u stvaru kontrol koja ne napravljena na TIBDataSet (dodati neki parakmetri, dodana interna transakcija, mogućnost select, orerder, join dijelova...)
Svi qry-i su mi na datamodulu, na njih su zakačene datastt-ovi i na ove grid-ovi
Pokušao sam napraviti otvaranje u zasebnim thread-ovima, ali ne prolazi...
Code:
tm=class(TThread)
private
fq: TIBDataSetNew;
protected
procedure Execute; override;
public
constructor Create(qry: TIBDataSetNew);
end;
constructor tm.Create(qry: TIBDataSetNew);
begin
fq := qry;
inherited Create(true);
Resume;
end;
procedure tm.Execute;
begin
if (fq <> nil) and not(fq.Active) then begin
fq.Open;
end;
end;
tm=class(TThread)
private
fq: TIBDataSetNew;
protected
procedure Execute; override;
public
constructor Create(qry: TIBDataSetNew);
end;
constructor tm.Create(qry: TIBDataSetNew);
begin
fq := qry;
inherited Create(true);
Resume;
end;
procedure tm.Execute;
begin
if (fq <> nil) and not(fq.Active) then begin
fq.Open;
end;
end;
i u main formi gumb:
Code:
procedure TForm1.Button1Click(Sender: TObject);
begin
if not ibd.Connected then ibd.Open;
tm.Create(q1);
tm.Create(q2);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if not ibd.Connected then ibd.Open;
tm.Create(q1);
tm.Create(q2);
end;
Što ne valja? Ponekad otvori oba qry-a, ponekad u jedno prikaže samo 1 field od njih 20-tak, poneka otvori samo jedan qry....