http://e-abap.servebbs.net/zb/bbs/zboard.php?id=abaptip&no=276#
여기에 나와 있는 샘플 프로그램은 도무지 작동을 하질 않고
class CL_GUI_TIMER로 구현한 것은 셋팅+1초 이상부터 작동을 하는 희한한 버그가 있는 듯합니다.
SDN, GOOGLE다 뒤져봐도 답은 안 나오고..그나마 희망이 있는 방법은 위와 같인 parallel방식을 이용한 방법인것 같은데
아무래도 set user-command에서 fcode를 새로 셋팅해주는 부분이 먹히질 않습니다.
그래서 혹시나 하고
CALL METHOD CL_GUI_CFW=>SET_NEW_OK_CODE
EXPORTING
NEW_CODE = '&NTE'.
요런식으로 해봤는데도 안 먹히구요..저게 먹히기는 먹히는 것 같은데요..
참고로 alv는 클래스가 아닌 펑션(REUSE_ALV_LIST_DISPLAY)으로 구현했습니다..
댓글 3
-
activeman
2009.01.13 22:07
-
미영
2009.01.13 23:49
^^ 잘 배우고 갑니다...감사합니다..
-
양군
2009.01.14 01:15
activeman님 //
답변감사드립니다.
그런데 slis_selfield-refresh = 'X'로 해주면 목록이 refresh되는 건 알고 있습니다.
문제는 SET USER-COMMAND '&NTE'. 가 user_command를 trigger해야 하는데 되지 않는다는 거죠.
위 코드 그대로 복사해서 실행하면 계속 refresh되나요??
아래에 user_command 부분에 "P_SELFIELD-REFRESH = 'X'. " 부분을 넣어 주시면 되고요..
user_command 부분이 안먹힌다고 하셨는데 event 등록이 되었는지 확인해 보세요..
user_command가 이벤트로 등록이 되어야 실행이 됩니다.
즐밥하세요.
*&---------------------------------------------------------------------*
*& Form USER COMMAND
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_SLIS_EV_PF_STATUS_SET text
* -->P_C_STATUS_SET text
*----------------------------------------------------------------------*
FORM USER_COMMAND USING P_UCOMM LIKE SY-UCOMM
P_SELFIELD TYPE SLIS_SELFIELD.
READ TABLE IT_TAB INDEX P_SELFIELD-TABINDEX.
CASE P_UCOMM.
WHEN '&IC1'.
PERFORM CALL_TRANSACTION_MM03 USING IT_TAB-MATNR.
WHEN OTHERS.
CLEAR: P_UCOMM.
ENDCASE.
ENDCASE.
P_SELFIELD-REFRESH = 'X'. ==> 이부분이 refresh 자동으로 해주는 부분입니다.
ENDFORM. "USER_COMMAND