Ich habe hier in der Arbeit ein Problem mit unserem MS-SQL 2005 Server und ich blicke nicht durch. Die SQ-Sprache ist mir noch ein Rätsel - ich habe noch nicht sehr lange damit zu tun. Es ist ein wenig schwierig zu erklären, da ich ja nicht weiß, was ich suche, aber ich versuche es mal:
Ich habe eine Abfrage, in der viele, viele JOIN Statements vorkommen. Die Abfrage im Original funktioniert. Ich muss aber noch ein Feld aus einer Tabelle, die noch nicht in der Abfrage ist, hinzufügen und ein Feld daraus auswerten.
Für unser ERP-System sind diese Abfragen in sogenannten *.rpt-Dateien gespeichert. Der Inhalt meiner Ursprünglichen sieht so aus:
Code: Alles auswählen
[Header]
Name=Eingangsrechnungsbuch
DESC=Journal
Category=11
Type=0
[FIELDS]
Field1=rebEinRechnung.ID;REBNr;REBNr;0
Field2=rebEinRechnung.fkAdresse;fkAdresse;fkAdresse;0
Field3=rebEinRechnung.RENr;RENr;RENr;0
Field4=rebEinRechnung.REDatum;REDatum;REDatum;1
Field5=rebEinRechnung.Bezeichnung;Bezeichnung;Bezeichnung;0
Field6=rebEinRechnung.Skonto;Skonto;Skonto;0
Field7=rebEinRechnung.Skontodatum;Skontodatum;Skontodatum;0
Field8=rebEinRechnung.Netto;Netto;Netto;3
Field9=rebEinRechnung.Brutto;Brutto;Brutto;3
Field10=rebEinRechnung.Nettofaelligkeit;Nettofaelligkeit;Nettofaelligkeit;1
Field11=rebEinReStatus.Name;Status;Status;0
Field12=adrAdressen.Name;ADR_Name;ADR_Name;0
Field13=adrAdressen.Zusatz;ADR_Zusatz;ADR_Zusatz;0
Field14=rebEinRechnung.Eingangsdatum;Eingangsdatum;Eingangsdatum;0
[TABLES]
Table1=((rebEinRechnung;INNER JOIN rebEinReStatus ON rebEinRechnung.fkEinReStatus = rebEinReStatus.pkEinReStatus) LEFT JOIN adrAdressen ON rebEinRechnung.fkAdresse = adrAdressen.AdrNrGes) LEFT JOIN rebBuchung ON rebEinRechnung.pkER = rebBuchung.fkER
[Orders]
Order1=rebEinRechnung.Eingangsdatum
[Links]
Formular=ERB_Journal.rpf
Ich habe "oben" bei "Fields" schon
Code: Alles auswählen
Field15=rebGrunddaten.fkProjNr
Der Abschnitt "[Tables]" dürfte dem SQL-Statement entsprechen, dann das kann ich mir im System anzeigen lassen. Das würde im Original so aussehen:
Code: Alles auswählen
SELECT rebEinRechnung.ID AS REBNr, rebEinRechnung.fkAdresse AS fkAdresse, rebEinRechnung.RENr AS RENr, rebEinRechnung.REDatum AS REDatum, rebEinRechnung.Bezeichnung AS Bezeichnung, rebEinRechnung.Skonto AS Skonto, rebEinRechnung.Skontodatum AS Skontodatum, rebEinRechnung.Netto AS Netto, rebEinRechnung.Brutto AS Brutto, rebEinRechnung.Nettofaelligkeit AS Nettofaelligkeit, rebEinReStatus.Name AS STATUS, adrAdressen.Name AS ADR_Name, adrAdressen.Zusatz AS ADR_Zusatz, rebEinRechnung.Eingangsdatum AS Eingangsdatum,
rebGrunddaten.fkProjNr AS ProjNr
FROM ((rebEinRechnung INNER JOIN rebEinReStatus ON rebEinRechnung.fkEinReStatus = rebEinReStatus.pkEinReStatus) LEFT JOIN adrAdressen ON rebEinRechnung.fkAdresse = adrAdressen.AdrNrGes) LEFT JOIN rebBuchung ON rebEinRechnung.pkER = rebBuchung.fkER ORDER BY REBNr
Ich hoffe, ihr könnt mir helfen! Vielen Dank schon mal für die Mühen.