REPORT zmatch.
TYPES: BEGIN OF ty_t001w,
werks TYPE t001w-werks,
sep TYPE c LENGTH 3,
name1 TYPE t001w-name1,
END OF ty_t001w.
DATA: t_t001w TYPE TABLE OF ty_t001w, "#EC NEEDED
w_t001w TYPE ty_t001w,
l_index TYPE sy-tabix. "#EC NEEDED
SELECTION-SCREEN BEGIN OF BLOCK b1.
PARAMETERS: p1 TYPE c LENGTH 4.
SELECT-OPTIONS: p2 FOR w_t001w-werks NO INTERVALS NO-EXTENSION.
SELECTION-SCREEN END OF BLOCK b1.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p1.
SELECT werks name1
INTO CORRESPONDING FIELDS OF TABLE t_t001w
FROM t001w
WHERE vtweg = '10'.
w_t001w-sep = ' - '.
MODIFY t_t001w FROM w_t001w TRANSPORTING sep WHERE sep IS INITIAL.
CALL FUNCTION 'POPUP_WITH_TABLE_DISPLAY'
EXPORTING
endpos_col = 70
endpos_row = 20
startpos_col = 43
startpos_row = 1
titletext = 'SELECIONAR O CENTRO'
IMPORTING
choise = l_index
TABLES
valuetab = t_t001w
EXCEPTIONS
break_off = 1
OTHERS = 2.
IF sy-subrc IS NOT INITIAL.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
IF l_index IS NOT INITIAL.
READ TABLE t_t001w INTO w_t001w INDEX l_index.
* MESSAGE w_t001w-name1 TYPE 'I'.
p1 = w_t001w-werks.
ENDIF.
START-OF-SELECTION.
* CLEAR: t_t001w, t_t001w[], w_t001w.
* SELECT werks name1
* INTO CORRESPONDING FIELDS OF TABLE t_t001w
* FROM t001w
* WHERE werks = p1.
* READ TABLE t_t001w INTO w_t001w INDEX 1.
WRITE: / w_t001w-name1.
END-OF-SELECTION.