Ich werde heute mit Arbeit erschlagen, also Coding dazwischenschreiben geht leider nicht. Aber ein paar Tipps kann ich dir geben:mip hat geschrieben:SELECT a~audat
a~vbeln
a~vbtyp
a~waerk
a~netwr
a~ernam
a~kunnr
b~parvw
b~adrnr
INTO corresponding fields of table itab
FROM vbak as a
INNER JOIN vbpa as b ON a~vbeln = b~vbeln
AND a~kunnr = b~kunnr.
Code: Alles auswählen.
*****SELECT*****
SELECT a.BelegNr,
b1.ParVW AS ParVW_RE,
c1.AdrNr AS Adr_RE,
c1.Name AS Name_RE,
b2.ParVW AS ParVW_YE,
c2.AdrNr AS Adr_YE,
c2.Name AS Name_YE
FROM vbak AS a
LEFT OUTER JOIN vbpa AS b1
ON b1.BelegNr = a.BelegNr
AND b1.ParVW = 'YE'
INNER JOIN kna1 AS c1
ON c1.AdrNr = b1.AdrNr
LEFT OUTER JOIN vbpa AS b2
ON b2.BelegNr = a.BelegNr
AND b2.ParVW = 'YE'
INNER JOIN kna1 AS c2
ON c2.AdrNr = b2.AdrNr
WHERE a.BelegNr = 103
Da hat sich bei Ereglam wohl der Fehlerteufel eingeschlichen:mip hat geschrieben:Hallo,
leider klappt dies so nicht. Als Ergebnis erhält man z.B. für die Belegnummer 103 folgende Zeile:
BelegNr ParVW_RE Adr_RE Name_RE ParVW_YE Adr_YE Name_YE
103 YE 1013 Tausend-Dr. YE 1013 Tausend-Dr.
richtig wäre:
103 RE 1020 Tausen-Zwanzig YE 1013 Tausend-Dr.
Code: Alles auswählen.
LEFT OUTER JOIN vbpa AS b1
ON b1.BelegNr = a.BelegNr
* ParVW von YE auf RE geändert
AND b1.ParVW = 'RE'
INNER JOIN kna1 AS c1
ON c1.AdrNr = b1.AdrNr
LEFT OUTER JOIN vbpa AS b2
ON b2.BelegNr = a.BelegNr
AND b2.ParVW = 'YE'
INNER JOIN kna1 AS c2
ON c2.AdrNr = b2.AdrNr
Wie ist VBPA gefüllt? Du greifst ohne POSNR auf VBPA zu obohl POSNR zum Schlüssel gehört.mip hat geschrieben: Bei 116 wird auch mit den Left Outer Joins kein Ergebnis gebracht.
JHM hat geschrieben:...
Da hat sich bei Ereglam wohl der Fehlerteufel eingeschlichen:Code: Alles auswählen.
LEFT OUTER JOIN vbpa AS b1 ON b1.BelegNr = a.BelegNr * ParVW von YE auf RE geändert AND b1.ParVW = 'RE' INNER JOIN kna1 AS c1 ON c1.AdrNr = b1.AdrNr LEFT OUTER JOIN vbpa AS b2 ON b2.BelegNr = a.BelegNr AND b2.ParVW = 'YE' INNER JOIN kna1 AS c2 ON c2.AdrNr = b2.AdrNr
stimme ich zu (hatte vor leider irgendwie nicht darauf geachtet... *pfeif*)JHM hat geschrieben: ...Gibt es einen Eintrag in KNA1 zur AdrNr?
Wieso greifst du mit der AdressNummer auf die KNA1zu?
Key ist KUNNR. Wird eine abweichende Adresse manuell erfasst, wird die manuelle Adresse in ADRNR abgespeichert. In solch einem Fall hat die ADRNR keine Verknüofung mit der KNA1.