SELECT DISTINCT m~matnr
FROM ( mvke AS m JOIN cdhdr AS c ON m~matnr = c~objectid+9(9)
INTO lv_matnr
WHERE m~vkorg = '0815'
APPEND lv_matnr TO lt_matnr.
CLEAR lv_matnr.
ENDSELECT.
c~objectid+9(9) gibt eine Fehlermeldung beim Aktivieren "Es gibt keine Komponente mit dem Namen objectid+9(9)" .
Das stimmt, aber hat jemand eine Idee wie man den shift in das join Statement integrieren könnte.
Die Alternative wäre in 2 itabs zu selektieren und diese dann zu vergleichen, das würde ich gern vermeiden.
Danke und Grüße
Michael
Zuletzt geändert von MichaelK am 22.05.2015 11:26, insgesamt 1-mal geändert.
Soweit mir bekannt ist funktionieren weder Substrings noch Shifts in OpenSQL.
Du kannst also entweder, wie von dir beschrieben, die notwendigen Einschränkungen vorher im ABAP-Code machen, oder du führst das Statement per EXEC SQL nativ aus. Dann kannst du auch mit SUBSTR arbeiten. Hiervon würde ich dir aber dringend abraten, da dein Statement dann nur datenbankspezifisch ausgeführt werden kann.
Grüße,
kiaa
Folgende Benutzer bedankten sich beim Autor kiaa für den Beitrag: MichaelK