Hallo Wolfgang,
ja, ich stelle mir vor, dass ich ein lokales Feld in der Query definiere (LASTVE), das wie die LIFNR in MSEG ist. Dann würde ich gern in der MSEG für die Bewegungsart (BWART) 101 die größte Materialbelegnummer (MBLNR) finden und die Lieferantennummer (LIFNR) als Wert für dieses lokale Feld in der Query zurückgeben.
Ich hab mich jetzt den ganzen Vormittag damit abgequält und die verrücktesten Fehlermeldungen erhalten. Der letzte Versuch sieht so aus und beschwert sich darüber, das die interne Tabelle GT_MSEG keine Kopfzeile hat (verstehe ich schon nicht, denn sie ist wie MSEG definiert und sollte eine haben?) und dass ich mit Index oder Key zugreifen soll. Ich will aber einfach nur den ersten Eintrag haben, da ich (hoffentlich) vorher absteigend sortiert habe.
Vermutlich seht Ihr am Code, dass ich kein ABAP-Profi bin...
Es wäre super, wenn mir jemand den Code korrigieren oder den richtigen effizienteren Ansatz zur Verfügung stellen könnte.
TABLES: MSEG.
DATA: GT_MSEG TYPE STANDARD TABLE OF MSEG.
SELECT MBLNR, LIFNR
FROM MSEG
into table @GT_MSEG
WHERE MATNR = @VBAK-ZZVUMATNR and BWART = 101
ORDER BY MBLNR DESCENDING.
READ TABLE GT_MSEG.
MOVE LIFNR TO LASTVE.
Danke!
Bearbeitet vom Benutzer
vor 2 Jahre
|
Grund: Nicht angegeben