Danke für antwort, leider habe ich nicht verstanden,khb hat geschrieben:Hallo,
also entweder gibst du die BWA aus T1 vor dem move-corresponding aus (denn dadurch überschreibst du die Felder wieder) oder du nutzt ein 2. field-symbol, in das du die Daten aus t2 schiebst.
lg khb
*-----------------------------------------------------------------------khb hat geschrieben:klar, kann ich machen. Kannst Du deinen Code posten (mit der write-Ausgabe?
Danke,khb hat geschrieben:okay, dann statt der write-Ausgabe die sätze in eine 3. Tabelle schreiben und diese dann im ALV ausgeben.
Kannst du nicht BWART 101 und 261 in einem Select ermitteln? Da fehlt ein wenig das Hintergrundwissen was du genau ausgeben willst.autohandel7 hat geschrieben: in t1 habe ich 3 materialnummer , und bewegungsart 101
in t2 habe ich 4 materialnummer, und bewegungsart 261
ich mochte die beide tabelen verbinden mit key materialnummer von t1
Kann es denn mehr als einen Satz zu einem Material in t1 geben? Also zwei 101 Buchungen zu einem Material.autohandel7 hat geschrieben: im ergebnis sol sein: nur materialen von t1 mit ergenzung von t2
Code: Alles auswählen.
* Neue Where Bedingung, da du nicht die 261 mit verarbeiten willst:
Loop At t1 ASSIGNING <wa1> WHERE bwart = 101.
READ TABLE t2 INTO wa2 with TABLE KEY matnr = <wa1>-matnr.
if sy-subrc = 0.
* move-corresponding wa2 TO <wa1>. Durch den Move überschreibst du die Werte in t1, du willst aber einen neuen Satz
APPEND wa2 to t1. "Wenn beide Tabellen den gleichen Typ haben, kann die gelesene Zeile einfach angehangen werden
else.
endif.
ENDLOOP.
* Jetzt noch sortieren, da in T1 zuerst die 101-Sätze stehen und dann erst die 261-Sätze:
SORT t1 BY matnr bwart.
Danke für Antwort,khb hat geschrieben:Du überschreibst wahrscheinlich. deine Inhalte in der Tabelle. Poste doch nur mal das Coding vom Füllen der internen Tabellen
JHM hat geschrieben:Kannst du nicht BWART 101 und 261 in einem Select ermitteln? Da fehlt ein wenig das Hintergrundwissen was du genau ausgeben willst.autohandel7 hat geschrieben: in t1 habe ich 3 materialnummer , und bewegungsart 101
in t2 habe ich 4 materialnummer, und bewegungsart 261
ich mochte die beide tabelen verbinden mit key materialnummer von t1
Kann es denn mehr als einen Satz zu einem Material in t1 geben? Also zwei 101 Buchungen zu einem Material.autohandel7 hat geschrieben: im ergebnis sol sein: nur materialen von t1 mit ergenzung von t2
Kann es mehr als eine 261 Buchung zu einem Material in t2 geben?
Das Coding sollte deine beiden Tabellen verknüpfen, ist aber nach meiner Glaskugel wahrscheinlich der falsche Weg. Für eine genauere Diagnose musst du aber mehr Infos liefern.Code: Alles auswählen.
* Neue Where Bedingung, da du nicht die 261 mit verarbeiten willst: Loop At t1 ASSIGNING <wa1> WHERE bwart = 101. READ TABLE t2 INTO wa2 with TABLE KEY matnr = <wa1>-matnr. if sy-subrc = 0. * move-corresponding wa2 TO <wa1>. Durch den Move überschreibst du die Werte in t1, du willst aber einen neuen Satz APPEND wa2 to t1. "Wenn beide Tabellen den gleichen Typ haben, kann die gelesene Zeile einfach angehangen werden else. endif. ENDLOOP. * Jetzt noch sortieren, da in T1 zuerst die 101-Sätze stehen und dann erst die 261-Sätze: SORT t1 BY matnr bwart.
Soweit reicht meine Glaskugel nicht. Zeig etwas Coding und man kann evtl. helfen.autohandel7 hat geschrieben: schon besser, leider alle sätze doppelt, weisst du warum?
Guten Tag,JHM hat geschrieben:Soweit reicht meine Glaskugel nicht. Zeig etwas Coding und man kann evtl. helfen.autohandel7 hat geschrieben: schon besser, leider alle sätze doppelt, weisst du warum?
Hast du mal im Debugger geschaut, was da ab geht?