Mein Versuch mit einem Join hat bisher nicht zum Erfolg geführt.
Ich habe die ganze Angelegenheit mal wie folgt zusammengeschustert.
Evtl. hat mir ja jemand ein Tip wie man das eleganter machen kann.
Delphi-Quellcode:
temps := treeview1.Selected.Text;
{ID vom Datensatz mit der Beszeichnung herausfinden}
queryanf.SQL.Clear;
queryanf.SQL.Text := '
select * from ANFORDERUNG where Bezeichnung=''
'+temps+'
''
';;
queryanf.Open;
id := queryanf.FieldByName('
ID').AsString;
{TAID aus der Referenztabelle rausziehen}
querytemp.SQL.Clear;
querytemp.SQL.Text := '
select * from temp ID=''
'+id+'
''
';;
querytemp.Open;
{Die einzelnen TAID abarbeiten}
while not querytemp.Eof
do begin
quanta := querytemp.RecordCount;
tempid := querytemp.FieldByName('
taid').AsString;
tempids := tempids +'
,'+tempid;
{nächster Datensatz in der Query}
querytemp.Next;
end;
quanta := length(tempids);
tempids := copy(tempids,2,quanta);
queryta.SQL.Text := '
select * from TEILAUFGABE where TAID in (''
'+tempids+'
''
)';;
queryta.Open;