Thema: Delphi Problem mit Inner Join

Einzelnen Beitrag anzeigen

Benutzerbild von Jens Hartmann
Jens Hartmann

Registriert seit: 11. Jan 2009
Ort: Wilnsdorf
1.439 Beiträge
 
Delphi XE2 Professional
 
#5

AW: Problem mit Inner Join

  Alt 25. Jul 2014, 22:09
Zitat von baumina:
laut deiner Tabellendefinition gibt's das Feld Ansprechpartnernummer nicht in der Tabelle Anlagen.
Doch, ich habe nur nicht alle Felder aufgeführt. Es gibt noch viel mehr Felder. Das von Dir angesprochene war aber in diesem Fall nicht wichtig.

Zitat von Dejan Vu:
Zum testen, wie der Feldname wirklich heißt, füge testweise ein 'Anlagen.*' an die Feldliste an.
Hatte ich bereits und ich hab mir die Feldnamen mit

  ShowMessage(DataModule1.qrySystemData.FieldList.Text); anzeigen lassen. Das Feld heißt auch Anlagennummer, darauf zugreifen konnte ich trotzdem nicht. Ich habe das Problem aber gelöst. Es scheint folgendes zu sein.

Feldnamen wie z.B. "Bezeichnung", welche in der Abfrage in mehreren Tabellen vorkommen, werden im Ergebnis der Feldnamen mit dem Tabellennamen davor dargestellt. z.B. ANLAGENTYP.Bezeichnung

Also kann der Zugriff wie folgt erfolgen...

Zentrale := DataModule1.qrySystemData.FieldByName('ANLAGENTYP.Bezeichnung').AsString; Feldnamen wie der aktuelle Fehlergrund "Anlagennummer", welche in keiner weiteren Tabelle der Abfrage auftaucht, werden im Ergebnis der Feldnamen nur mit dem Feldname dargestellt -> "Anlagennummer"

Also kann der Zugriff nicht so...

AnlagenNr := DataModule1.qrySystemData.FieldByName('ANLAGEN.Anlagennummer').AsInteger; erfolgen, sondern ...

AnlagenNr := DataModule1.qrySystemData.FieldByName('Anlagennummer').AsInteger; Entgegen meiner Definition in der SQL-Abfrage, wird der vorgestellte Tabellennamen nur wenn erforderlich verwendet.

Danke trotzdem nochmal und Gruß Jens
Jens Hartmann
Das Leben selber ist zu kurz, also nutze jeden Tag wie er kommt.
  Mit Zitat antworten Zitat