Berater senden Sie mir dieses Codebeispiel, wie etwas, das er erwartet, zu bekommen.Verschachtelte SQL-Abfrage für ABAP-Programm
SELECT m1~vbeln_im m1~vbelp_im m1~mblnr smbln
INTO CORRESPONDING FIELDS OF TABLE lt_mseg
FROM mseg AS m1
INNER JOIN mseg AS m2 ON m1~mblnr = m2~smbln
AND m1~mjahr = m2~sjahr
AND m1~zeile = m2~smblp
FOR ALL ENTRIES IN lt_vbfa
WHERE
AND m2~bwart = '102'
AND 0 = (select SUM((CASE
when SHKZG = 'S' THEN 1
when SHKZG = 'H' THEN -1
else 0
END) *MENGE) MENGE
into lt_mseg-summ
from mseg
where
VBELN_IM = m1~vbeln_im
and VBELP_IM = m1~vbelp_im
).
Das Problem - ich habe nicht gesehen, wie das in der aktuellen Syntax funktionieren sollte. Ich denke darüber nach, internes select zu trennen und es als Bedingung zu verwenden, um es zu main ... aber gibt es einen richtigen Weg, diese verschachtelte Konstruktion zu schreiben? P.S. Wie ich es verstehe - wenn verschachtelte Anweisung = 0, dann wird Hauptabfrage ausgeführt, das Problem hier - Fall in verschachtelter Anweisung, ist es sogar in ABAP möglich? Und Logik diktiert, dass diese Prüfung außerhalb der SQL-Hauptabfrage verwendet werden könnte. Aber ich bin ziemlich Neuling zu ABAP, also lasse ich einen Raum für andere mögliche Erklärungen.
Teilen (in Schritten): klar erklären, was ist Ihre Absicht + welches Problem haben Sie vor + was haben Sie bis getan. –
Wie ich es verstehe - wenn verschachtelte Anweisung = 0, dann wird Hauptabfrage ausgeführt, das Problem hier - Fall in verschachtelter Anweisung, ist es sogar in ABAP möglich? Und Logik diktiert, dass diese Prüfung außerhalb der SQL-Hauptabfrage verwendet werden könnte. Aber ich bin ziemlich Neuling zu ABAP, also lasse ich einen Raum für andere mögliche Erklärungen. – AlexanderK
Bearbeiten Sie Ihre Frage (fügen Sie diese Informationen Ihrem POST hinzu), damit andere helfen können! –