alv list에 체크박스를 넣기위해 catalog에 아래와 같이 넣고
if gs_fieldcat-fieldname = 'OK_FLAG'.
gs_fieldcat-checkbox = 'X'.
endif.
실행후 체크박스를 클릭하면
CLASS lcl_event_handler IMPLEMENTATION.의
아래 부분의 로직을 탑니다.
*& Data change한 후
METHOD handle_data_changed_finished. => 1)
PERFORM data_changed_finished USING e_modified
et_good_cells.
ENDMETHOD. "HANDLE_DATA_CHANGED_FINISHED
그런데 1)로 갈땐 이미 화면상에는 이미 체크박스가 변해 있는데요..
해당 row의 체크박스를 클릭할때 체크박스가 변하기 전의 로직을
알고 싶은데요..
다시 말씀드리면 행을 클릭할때의 이벤트를 말합니다..
디버깅을 걸어도 1)로만 가고 다른곳을 타지 않는것 같은데요..
고수님들의 의견을 부탁드립니다..
handle_data_changed_finished 는 적힌 그대로 데이터가 변경 된 후에 실행되는 이벤트 입니다.(인터널 테이블에 값이 변경된후에 실행되
는 이벤트 입니다.) 그러니까 값이 당연히 변경 되어 있겠지요..
se24에서 CL_GUI_ALV_GRID event에 보시면 DATA_CHANGED 가 있습니다... 이걸 한번 사용해 보십시요.
이것은 데이터가 변경된후 실행되는 이벤트 입니다.
그리고 se24에서 각 이벤트, 속성, 메소드가 어떤 역할을 하는지 한번 찾아보세요..프로그램 하시는데 많은 도움이
될겁니다..
즐밥하세요..