ALV에 필드 카타로그를 추가한 경우 바로 적용이 안되는 경우가 있습니다.
이때는 다음 프로그램을 이용해 버퍼를 CLEAR 해야 합니다.
*&---------------------------------------------------------------------*
*& Report BALVBUFDEL *
*& *
*&---------------------------------------------------------------------*
*& *
*& *
*&---------------------------------------------------------------------*
REPORT BCALV_BUFFFER_DEL_SHARED.
TABLES: EUINFO.
types: stat_s_data type RSEXPOBUF,
stat_t_data type stat_s_data occurs 0.
data: gt_stat_data type stat_t_data,
ls_stat_data type stat_s_data,
l_obj_key type RSOBJKEY.
CALL FUNCTION 'SBUF_OBJ_SHOW_OBJECT'
EXPORTING
BUFF_ID = 0
SHOW_FREE = ' '
SHOW_OBJECT = 'X'
TABLES
STAT_DATA = gt_stat_data
* EXCEPTIONS
* C_FUNC_ERROR = 1
* OTHERS = 2
.
IF SY-SUBRC = 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
loop at gt_stat_data into ls_stat_data.
if ls_stat_data-obj_key(2) cs '%F'.
l_obj_key = ls_stat_data-obj_key+2.
delete from shared buffer euinfo(%F) id l_obj_key.
endif.
endloop.
MESSAGE S000(0K) WITH TEXT-004.
ENDIF.