Hallo,
ich hoffe die Überschrift verwirrt nicht allzu sehr.
Ich hole aus der Tabelle aa_task die nicht erledigten Aufgaben heraus. Aufgrund der hier ermittelten shop_nr möchte ich den dazugehörigen Namen aus dem Feld shop_name aus der Tabelle aa-shopdaten holen.
Das funktioniert aber nicht.
Dies funktioniert normal
Delphi-Quellcode:
procedure TForm1.list_task;
begin
Query_ContactCard.SQL.Text := 'Select * from `aa_tasks` where `taskstate` <> ''Erledigt'' order by `shopnr` DESC;'; Query_ContactCard.Open;
Query_ContactCard.FieldByName('id').AsString;
Lv_task.Items.Clear;
while not Query_Contactcard.Eof do
begin
LI := lv_task.Items.Add;
LI.Caption := '';
LI.SubItems.Add(Query_ContactCard.FieldByName('done').AsString);
LI.SubItems.Add(Query_ContactCard.FieldByName('shopnr').AsString);
LI.SubItems.Add(Query_ContactCard.FieldByName('task').AsString);
Query_ContactCard.Next;
end;
end;
Hier versuche ich das oben beschriebene, es kommt aber ein Fehler, weil das Feld "shop_name" nicht gefunden wurde, das Feld ist aber in der Tabelle aa_shopdaten vorhanden.
Ich hole die shopnr in die Variable
TmpStr anhand derer ich dann den shopnamen holen will. Wo ist mein Fehler?
Delphi-Quellcode:
procedure TForm1.BtnReadTasksClick(Sender: TObject);
var
TmpStr:string;
begin
Query_ContactCard.SQL.Text := 'Select * from `aa_tasks` where `taskstate` <> ''Erledigt'' order by `shopnr` DESC;'; //IN
Query_ContactCard.Open;
Query_ContactCard.FieldByName('id').AsString;
Lv_task.Items.Clear;
while not Query_Contactcard.Eof do
begin
TmpStr:='';
LI := lv_task.Items.Add;
LI.Caption := '';
LI.SubItems.Add('');
LI.SubItems.Add(Query_ContactCard.FieldByName('shopnr').AsString);
tmpstr:=Query_ContactCard.FieldByName('shopnr').AsString;
// Showmessage(tmpstr);
LI.SubItems.Add(Query_ContactCard.FieldByName('shop_name').AsString);
Query_ContactCard.SQL.Text := 'Select * from `aa_tasks` where `taskstate` <> ''Erledigt'' order by `shopnr` DESC;';
Query_ContactCard.Open;
LI.SubItems.Add(Query_ContactCard.FieldByName('task').AsString);
Query_ContactCard.SQL.Text := 'Select * from `aa_shopdaten` where `shop_name` = '+ TmpStr +';';
Query_ContactCard.Open;
Query_ContactCard.Next;
end;
end;
Gruß René