Scanergebnis in mehrere Felder verteilen

In manchen Fällen enthält der zu scannende Barcode Informationen, die in SAP in verschiedene Felder übertragen werden sollen, etwa neben einer Materialnummer auch die Menge und eine Belegnummer. In diesem Fall kann mit dem Tool Input Assistent ein zusätzliches Eingabefeld definiert und mit einem kleinen Inputscript der Split des Scanergebnis und die Verteilung auf mehrere Felder erfolgen.

Nachfolgend die Vorgehensweise zur Definition eines Eingabefeldes und nachträglichem Aufsplitten der Eingabe in verschiedene Felder.

Zunächst definieren Sie auf dem Dynpro, auf dem die Eingabe des Barcodes erfolgen soll, ein Eingabefeld mit dem Befehl
inputfield (0,5) "Barcode" (0,15) Size="20" Name="Barcode"

Dann setzen Sie den Cursor in dieses Feld (nur damit gleich ohne manuelle Positionierung gescannt werden kann)
setcursor (0,50)

Dann definieren Sie einen neuen Button, der das Input-Script barcodesplit.txt ausführt (Achtung, muss im Scriptverzeichnis stehen !)
Pushbutton (0,80) "Split" Process="barcodesplit.txt"

Das Input-Script barcodesplit.txt sollte dann etwa wie folgt aussehen:
//
// Barcodesplit.txt - Input Script zum Splitten eines Barcodes und
// füllen mehrere Felder
//

set F[Materialschein] "&[Barcode](5-12)"
set F[Werk] "&[Barcode](1-4)"
set F[Lagerort] "&[Barcode](17-20)"

Mit dem set-Befehl versorgen Sie die normalen Felder der Maske aus dem zuvor mit dem Befehl inputfield definierten Eingabefeld. Durch die Angabe der jeweiligen Offsets werden nur die entsprechenden Teile des Eingabefeldes übernommen.

2017-03-10T12:51:00+00:00