Refrescar un ALV luego de una Ejecuación de proceso que modifica la tabla interna

Cuando en un ALV tenemos algún botón que ejecute un Batch Input o algún, proceso al Salvar y la información de la tabla interna del ALV debe refrescarse, para reflejar el proceso ejecutado, podemos usar este peqúeño truco.

 

*&———————————————————————*
*&      Form  PF_USER_COMMAND
*&———————————————————————*
FORM user_command1 USING p_okcode LIKE sy-ucomm        "ok-code
                       w_selfield TYPE slis_selfield. "estruct. de linea
* Se selecciona que el ALV se actualice al mostrarse.

w_selfield-refresh = ‘X’.

CASE p_okcode.

  WHEN ‘&DATA_SAVE’.
    PERFORM arma_datos_bapi_1.
      IF g_cant_error IS INITIAL. "ROGI08102008
        PERFORM ejecutar_bapi1.
      ENDIF.                      "ROGI08102008
ENDCASE.

ENDFORM.                    " PF_STATUS

En el USER_COMMAND Form agregamos lo que esta en negrita, esto hace que al ejecutar un botón del ALV se refresque la tabla interna, por lo tanto podemos directamente modificar la tabla interna a nuestro gusto que se vera refrejado en el ALV.

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: