Crear Matchcode (Search Help) con una tabla interna.

En un momento dado me pidieron hacer un reporte donde el matchode del campo lgort, traía todos los lgort (almacenes) de todos los centros y el requerimiento era solamente los de un determinado centro.

Descubrí que se puede realizar un matchode dinamicamente con una tabla interna nuestra directamente desde el código.

Código:

At selection-screen on value-request for s_lgort-low.
Select LGORT LGOBE
from T001L
into table it_lgort
where werks = ‘2000’.

CALL FUNCTION ‘F4IF_INT_TABLE_VALUE_REQUEST’
EXPORTING
RETFIELD = ‘LGORT’
WINDOW_TITLE = ‘Depósitos’
VALUE_ORG = ‘S’
TABLES
VALUE_TAB = it_lgort
RETURN_TAB = it_ret
EXCEPTIONS
PARAMETER_ERROR = 1
NO_VALUES_FOUND = 2
OTHERS = 3.

IF SY-SUBRC = 0.
read table it_ret index 1.
move it_ret-fieldval to S_lgort-low.
ENDIF.

Esto muestra el almacén, la descripción del mismo, y al elejir uno nos lleva al select option la opción elejida.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: