Code: Alles auswählen.
SELECT ekko~lifnr ekpo~matnr eket~eindt ekpo~menge ekbe~budat
ekbe~menge ekpo~ebelp ekko~ebeln
FROM ekko JOIN ekpo
ON ekko~ebeln EQ ekpo~ebeln
LEFT JOIN ekbe
ON ekpo~ebeln EQ ekbe~ebeln
AND ekpo~ebelp EQ ekbe~ebelp
LEFT JOIN eket
ON ekpo~ebeln EQ eket~ebeln
AND ekpo~ebelp EQ eket~ebelp
INTO TABLE tab_records
WHERE ekko~bstyp EQ 'F'
* AND ekko~ebeln = '4500000020'
ORDER BY ekpo~matnr eket~eindt ekko~lifnr.
DELETE ADJACENT DUPLICATES
FROM tab_records
COMPARING ebelp.
Open SQLMelanie_P hat geschrieben:Nun ja, ich dachte ich müsste doppelte Einträge löschen, da ja immer alles mit allem mit dem Join verbunden wird. Allerdings bin ich mir da dank deines Hinweises nicht mehr so sicher. Ist auch das erste Mal, dass ich sowas mit Open SQL mache, da bin ich für jede Hilfe dankbar!
Zurück zum eigentlichen Problem. Ich habe gerade festgestellt, dass das Problem auch besteht, wenn ich innerhalb der Hintergrundausführung sage "sofort ausführen". Bisher hatte ich immer "einplanen" gewählt. Das Textfile hat unabhängig vom Select-Statement immer die Länge 2.990 und es stehen auch immer dieselben Daten drin. Bin für jeden Hinweis dankbar!
Open SQLMelanie_P hat geschrieben:Nun ja, ich dachte ich müsste doppelte Einträge löschen, da ja immer alles mit allem mit dem Join verbunden wird. Allerdings bin ich mir da dank deines Hinweises nicht mehr so sicher. Ist auch das erste Mal, dass ich sowas mit Open SQL mache, da bin ich für jede Hilfe dankbar!
Zurück zum eigentlichen Problem. Ich habe gerade festgestellt, dass das Problem auch besteht, wenn ich innerhalb der Hintergrundausführung sage "sofort ausführen". Bisher hatte ich immer "einplanen" gewählt. Das Textfile hat unabhängig vom Select-Statement immer die Länge 2.990 und es stehen auch immer dieselben Daten drin. Bin für jeden Hinweis dankbar!
Selbstverständlich selektiere ich nicht immer das Gleiche! Bei Hintergrundverarbeitung hat die Datei, egal ob ich nun alle Bestellungen auslese oder nur eine EBELN, immer die Länge 2.990 und es stehen immer die gleichen Daten drin. Wenn ich mit F8 innerhalb des ABAP-Editors ausführe, ändert sich selbstverständlich bei verschiedenen WHERE-Bedingungen die Länge der Datei und auch die Daten. Bei der Hintergrundverarbeitung nicht!Wenn immer das gleiche selektiert wird, ist es völlig normal, dass auch immer das gleiche in der Datei steht. Alles andere würde mich wundern
Du bekommt alle Positionen aller Bestellungen. Die Left-Joins sorgen ja nur dafür, dass die Daten angereichert werden, zusätzliche Zeilen entstehen dadurch nicht. Ich vermute mal, dass durch den DELETE die Datenmenge extrem schrumpft, was aber wahrscheinlich in diesem Fall nicht im Sinne des Erfinders ist.Melanie_P hat geschrieben:Nun ja, ich dachte ich müsste doppelte Einträge löschen, da ja immer alles mit allem mit dem Join verbunden wird.
Hmm, das Ergebnis von Online und Batch sollten eigentlich übereinstimmen, da gibt es keinen Unterschied, der mir einfallen würde...Zurück zum eigentlichen Problem. Ich habe gerade festgestellt, dass das Problem auch besteht, wenn ich innerhalb der Hintergrundausführung sage "sofort ausführen". Bisher hatte ich immer "einplanen" gewählt.
Was heisst "unabhängig von Select-Statement"? Das Statement liefert in jedem Lauf des Reports exakt die gleichen Zeilen zurück (es sei denn jemand erfasst Bestellungen oder schmeisst sie weg). Der Select wird in Deinem Fall ja nicht "von aussen" beeinflusst, z.B. über Parameter.Das Textfile hat unabhängig vom Select-Statement immer die Länge 2.990 und es stehen auch immer dieselben Daten drin. Bin für jeden Hinweis dankbar!