Hallo Markus,
es geht in Grunde nur darum die 'treffer-Tabelle' mit den gesuchten wert zu füllen.
Ich habe es mit einer Erweiterungsimplementierung am Ende von "FORM SEARCH_XBLNR" im Rep. RFEBBU10 gelöst.
hier eine Möglichkeit mit "FIND REGEX" die gesuchte Nummer in "SVWZ+/INV/110011189/0 2.8.2" als Treffer zu erzielen:
DATA:
lv_length TYPE i,
lv_matched TYPE string,
lv_offset TYPE i.
CONSTANTS: l_verwzwck TYPE string VALUE '[\d]{9}[/][\d]{1}'.
loop at speicher.
CONCATENATE puffer speicher-zeile INTO puffer.
IF sy-subrc NE 0. EXIT. ENDIF.
ENDLOOP.
"Enthält die Zeile den Suchbegriff Bsp. 110011189/0?
FIND REGEX l_verwzwck IN puffer
MATCH OFFSET lv_offset
MATCH LENGTH lv_length.
IF sy-subrc = 0.
lv_matched = puffer+lv_offset(lv_length).
treffer-nummer = lv_matched.
APPEND treffer.
endif.
Damit müsste es gehen
.
Grüße
RobbyTobby
es geht in Grunde nur darum die 'treffer-Tabelle' mit den gesuchten wert zu füllen.
Ich habe es mit einer Erweiterungsimplementierung am Ende von "FORM SEARCH_XBLNR" im Rep. RFEBBU10 gelöst.
hier eine Möglichkeit mit "FIND REGEX" die gesuchte Nummer in "SVWZ+/INV/110011189/0 2.8.2" als Treffer zu erzielen:
DATA:
lv_length TYPE i,
lv_matched TYPE string,
lv_offset TYPE i.
CONSTANTS: l_verwzwck TYPE string VALUE '[\d]{9}[/][\d]{1}'.
loop at speicher.
CONCATENATE puffer speicher-zeile INTO puffer.
IF sy-subrc NE 0. EXIT. ENDIF.
ENDLOOP.
"Enthält die Zeile den Suchbegriff Bsp. 110011189/0?
FIND REGEX l_verwzwck IN puffer
MATCH OFFSET lv_offset
MATCH LENGTH lv_length.
IF sy-subrc = 0.
lv_matched = puffer+lv_offset(lv_length).
treffer-nummer = lv_matched.
APPEND treffer.
endif.
Damit müsste es gehen

Grüße
RobbyTobby