Force changed data refresh in REUSE_ALV_GRID_DISPLAY

Problem: you are using REUSE_ALV_GRID_DISPLAY to display and modify data, but when a user hits a button the modified data is not visible in your program.

Solution: to force REUSE_ALV_GRID_DISPLAY to send newly entered data to your report use below code.

  DATA:
    lo_grid TYPE REF TO cl_gui_alv_grid.
 
  IF lo_grid IS NOT BOUND.
    CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
      IMPORTING
        e_grid = lo_grid.
  ENDIF.
  IF lo_grid IS BOUND.
    CALL METHOD lo_grid->check_changed_data.
  ENDIF.
  DATA:
    lo_grid TYPE REF TO cl_gui_alv_grid.

  IF lo_grid IS NOT BOUND.
    CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
      IMPORTING
        e_grid = lo_grid.
  ENDIF.
  IF lo_grid IS BOUND.
    CALL METHOD lo_grid->check_changed_data.
  ENDIF.

Now, newly entered data will be visible in the internal table sent to the REUSE_ALV_GRID_DISPLAY function.

Komentowanie jest zakończone.