CLASS LCL_APPLICATION DEFINITION DEFERRED.
DATA: GV_APPLICATION TYPE REF TO LCL_APPLICATION.
CLASS LCL_APPLICATION DEFINITION.
PUBLIC SECTION.
METHODS:
HANDLE_DOUBLE_CLICK
FOR EVENT DOUBLE_CLICK
OF CL_GUI_ALV_GRID
IMPORTING E_ROW
E_COLUMN.
ENDCLASS. "LCL_APPLICATION DEFINITION
CLASS LCL_APPLICATION IMPLEMENTATION.
METHOD: HANDLE_DOUBLE_CLICK.
PERFORM GRID_DBL_CLICK USING E_ROW
E_COLUMN.
ENDMETHOD. "handle_double_click
ENDCLASS. "LCL_EVENT_RECEIVER IMPLEMENTATION
-----------------------------------------------------------------------------------------
위와 같이 선언하고, 아래와 같이 사용하려고 할때,
FORM GRID_CREATE_EVENT .
CREATE OBJECT GV_APPLICATION.
SET HANDLER GV_APPLICATION->HANDLE_DOUBLE_CLICK FOR G_GRID.
ENDFORM.
-----------------------------------------------------------------------------------------
Components of classes declared using "CLASS LCL_APPLICATION DEFINITION
DEFERRED" can only be accessed after you have defined the class (CLASS
LCL_APPLICATION DEFINITION). possible.
이런 덤프가 떨어집니다.
어떤 해결 방법이 있을까요...?
CLASS LCL_APPLICATION DEFINITION DEFERRED. 부분을 주석처리하시고
CLASS 정의가 끝난 다음에 DATA 선언부분만 추가하세요.
CLASS LCL_APPLICATION DEFINITION.
~
ENDCLASS.
CLASS LCL_APPLICATION IMPLEMENTATION.
~
ENDCLASS.
DATA: GV_APPLICATION TYPE REF TO LCL_APPLICATION.