SAP Jobsuche bei DV-Treff


Suchen
Marcello93
vor 5 Jahre
Hallo zusammen,

ich bin Neuling im SAP Bereich und habe eine Frage zur Verkettung im Infoset.

Ich habe mit folgendem Befehl die Verkettung für ein Zusatzfeld definiert:

CONCATENA vbap-vbeln vbap-posnr into field separated by space.

Als Beispiel erhalte ich jetzt:

Auftrag 100 Pos 10 Feld: 100 10

Auftrag 100 Pos 20 Feld: 100 20

Von mir wird an dieser Stelle gewünscht, dass ich nur eine Zeile ausgebe.

Sprich:

Auftrag 100 10 20 30 40 usw.

Gibt es hier einen Trick für mein Infoset?

Gruß Marcel

wreichelt
vor 5 Jahre
Hallo Marcel,

eine ähnliche Frage hattest du ja zu dem Thema Lieferschein/Transportnummer.

Im Infoset ein langes Zusatzfeld (XFELD) definieren.

Clear xfeld.

xfeld = vbak-vbeln.

select * from vbap

where vbeln = vbak-vbeln.

If sy-subrc = 0.

concatenate xfeld with vbap-posnr.

endif.

endselect.

In Xfeld sollte dann stehen 4711 10 20 30 40

Gruß Wolfgang

Marcello93
vor 5 Jahre
Hallo Wolfgang,

das sieht soweit ganz gut aus. Aktuell bekomme ich bei meiner Ausgabe, wenn ein Auftrag 4 Positionen hat nur 4711 40 ausgegeben. Sprich immer die letzte Position des Auftrags.

Edit: Wie es aussieht, definiere ich das XFELD falsch.

Gruß Marcel

wreichelt
vor 5 Jahre
Hallo Marcel,

das Feld sollte mindestens 30 stellig sein.

concatenate xfeld = xfeld && vbap-posnr.

Gruß Wolfgang

Marcello93
vor 5 Jahre
Hallo Wolfgang,

wenn ich das alles so einbaue, erhalte ich folgende Meldung:

Der Satz mit "...VBAP-POSNR" am Ende wurde unerwartet abgeschlossen.

Gruß

wreichelt
vor 5 Jahre
Hallo Marcel,

die richtige Syntax für den Concatenate habe ich nicht zur Hand.

Einfach mal F1 drauf machen und Dir dazu Beispiele ansehen.

Gruß Wolfgang

Marcello93
vor 5 Jahre
Hallo Wolfgang,

wunderbar, mit etwas testen hat es funktioniert!

Ich danke!