selection screen 화면에서
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_background_id = 'ALV_BACKGROUND'
i_callback_program = sy-repid
i_callback_user_command = 'USER_COMMAND'
i_callback_pf_status_set = 'SET_PF_STATUS'
it_fieldcat = gt_fieldcat
it_sort = gt_sortcat
i_save = 'A' "A or U
is_layout = gt_layout
it_events = gt_events[]
IMPORTING
es_exit_caused_by_user = ls_exit_by_user
TABLES
t_outtab = gt_result_alv
EXCEPTIONS
program_error = 1
OTHERS = 2.
이용해서 화면에 리스트를 뿌려주고 상단의 기능키 동작을 아래처럼 하고싶은데요
CHECK ls_exit_by_user-back = 'X'.
CLEAR ls_exit_by_user.
LEAVE TO SCREEN 0.
CHECK ls_exit_by_user-exit = 'X'.
CLEAR ls_exit_by_user.
LEAVE TO SCREEN 0.
CHECK ls_exit_by_user-cancel = 'X'.
CLEAR ls_exit_by_user.
LEAVE PROGRAM.
back 는 되는데.. 나머지 exit 이나, cancel 은 반응이 없습니다.
어떻게 해야 하나요?
check는 참인 경우만 아래문장을 실행합니다.
그래서 아래와 같이 case문을 사용하거나 IF문을 사용하세요...
case 'X'.
when ls_exit_by_user-back.
CLEAR ls_exit_by_user.
LEAVE TO SCREEN 0.
when ls_exit_by_user-exit.
CLEAR ls_exit_by_user.
LEAVE TO SCREEN 0.
when ls_exit_by_user-cancel.
CLEAR ls_exit_by_user.
LEAVE PROGRAM.
endcase.