Danke.sap_enthusiast hat geschrieben: ↑17.05.2022 14:44Hi ABAPlerv
vlt das hilft weiter:
https://www.berater-wiki.de/Funktionsba ... ALUES_READ
sap_enthusiast
Code: Alles auswählen.
SELECT "irgendwelche Felder aus 2 verschiedenen Tabellen
FROM TabelleA
INNER JOIN TabelleB
ON ......
INTO CORRESPONDING FIELDS OF TABLE lt_tab.
LOOP AT lt_tab .ASSIGNING <fs>.
SELECT SINGLE "Irgendwelche Felder aus einer anderen Tabelle C
FROM TabelleC INTO <fs>-feldC .
SELECT SINGLE "Irgendwelche Felder aus einer anderen Tabelle D
FROM TabelleD INTO <fs>-feldD .
SELECT SINGLE "Irgendwelche Felder aus einer anderen Tabelle E
FROM TabelleE INTO <fs>-feldE .
usw..
ENDLOOP.
Code: Alles auswählen.
SELECT vbeln, posnr, matnr
FROM vbap
FOR ALL ENTRIES IN @lt_sdnr
WHERE vbeln = @lt_sdnr-vbeln AND
posnr = @lt_sdnr-posnr
INTO TABLE @DATA(lt_data).
Code: Alles auswählen.
LOOP AT itab ASSIGNING FIELD-SYMBOL(<fs>).
READ TABLE.....
oder
TRY.
<fs>-feldx = itab2[ feldy = <fs>-feldy ]-feldx.
CATCH cx_root.
ENDTRY.
ENDLOOP.
sap_enthusiast hat geschrieben: ↑17.05.2022 15:38Einerseits kannst einfach JOIN nehmen und die ansehen wie das dein Ergebnis beeinflusst.
Andererseits versuch folgendes:
(als beispiel)FOR ALL ENTRIES ermöglicht eine Sammel-AbfrageCode: Alles auswählen.
SELECT vbeln, posnr, matnr FROM vbap FOR ALL ENTRIES IN @lt_sdnr WHERE vbeln = @lt_sdnr-vbeln AND posnr = @lt_sdnr-posnr INTO TABLE @DATA(lt_data).
danach solltest du in einem Loop eventuell mit READ TABLE oder per direkter Zuweisung die Daten mit eindeutigen ID Feldern suchen und übertragen:
Mehr fällt mir nicht ein.Code: Alles auswählen.
LOOP AT itab ASSIGNING FIELD-SYMBOL(<fs>). READ TABLE..... oder TRY. <fs>-feldx = itab2[ feldy = <fs>-feldy ]-feldx. CATCH cx_root. ENDTRY. ENDLOOP.
Viel Erfolg!
Code: Alles auswählen.
DATA: lt_vbap TYPE STANDARD TABLE OF vbap.
SELECT vbeln FROM
vbak
INTO CORRESPONDING FIELDS OF TABLE @lt_vbap
UP TO 50 ROWS.
SELECT vbeln, posnr FROM vbap
FOR ALL ENTRIES IN @lt_vbap
WHERE vbeln = @lt_vbap-vbeln
INTO CORRESPONDING FIELDS OF TABLE @lt_vbap.
LOOP AT lt_vbap ASSIGNING FIELD-SYMBOL(<fs>).
WRITE: / <fs>-vbeln && | / | && <fs>-posnr.
ENDLOOP.
das ist nicht der richtige Baustein für einen Report mit Selektionsbild!sap_enthusiast hat geschrieben: ↑17.05.2022 14:44Hi ABAPlerv
vlt das hilft weiter:
https://www.berater-wiki.de/Funktionsba ... ALUES_READ
sap_enthusiast
Danke Enno!ewx hat geschrieben: ↑17.05.2022 19:04das ist nicht der richtige Baustein für einen Report mit Selektionsbild!sap_enthusiast hat geschrieben: ↑17.05.2022 14:44Hi ABAPlerv
vlt das hilft weiter:
https://www.berater-wiki.de/Funktionsba ... ALUES_READ
sap_enthusiast
Richtig ist der Baustein mit dem für den vorgesehenen Zweck leicht irritierendem Namen RS_REFRESH_FROM_SELECTOPTIONS.
Hier ein Code-Beispiel:
http://zevolving.com/2015/07/oo-abap-se ... ctoptions/
Doch. so pauschal kann man das eigentlich schon sagen.sap_enthusiast hat geschrieben: ↑20.05.2022 07:52so pauschal kann man nicht sagen, es kommt auf die Situation drauf an.
Nee - kann man nicht. Wenn der LOOP aus lediglich ein paar Zeilen besteht: So what? Wenn es aufwändiger ist, die relevanten Kombinationen für den SELECT zu ermitteln und einem das im LOOP geschenkt wird, dann im LOOP ( aber gerne Ergebnisse puffern falls mehrfach verwendbar ). Und ich kenne noch diverse andere Situationen, wo ich das lieber innerhalb des LOOPs als außerhalb verwende.ewx hat geschrieben: ↑20.05.2022 09:19Doch. so pauschal kann man das eigentlich schon sagen.sap_enthusiast hat geschrieben: ↑20.05.2022 07:52so pauschal kann man nicht sagen, es kommt auf die Situation drauf an.
stehen lassen.
Also doch pauschal... 😋