REPORT zairs_main_a.
TYPE-POOLS icon.
INCLUDE zairs_a.
*&---------------------------------------------------------------------*
*& Include ZAIRS_A *
*&---------------------------------------------------------------------*
CLASS lcl_airplane DEFINITION.
PUBLIC SECTION.
CONSTANTS: pos_l TYPE i VALUE 30.
METHODS: set_attributes IMPORTING
im_name TYPE string
im_planetype TYPE sflight-planetype,
display_attribute.
CLASS-METHODS: display_n_o_airplanes.
PRIVATE SECTION.
DATA: name TYPE string,
planetype TYPE sflight-planetype.
CLASS-DATA: n_o_airplanes TYPE i.
ENDCLASS. "lcl_airplane DEFINITION
*----------------------------------------------------------------------*
* CLASS lcl_airplane IMPLEMENTATION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS lcl_airplane IMPLEMENTATION.
METHOD set_attributes.
name = im_name.
planetype = im_planetype.
n_o_airplanes = n_o_airplanes + 1.
ENDMETHOD. "set_attributes
METHOD display_attribute.
WRITE: / icon_dummy AS ICON,
/ 'Name of airplane: ', AT pos_l name,
/ 'Airplane type', AT pos_l planetype.
ENDMETHOD. "display_attribute
METHOD display_n_o_airplanes.
WRITE: /, / 'Total number of planes'(cal),
AT pos_l n_o_airplanes LEFT-JUSTIFIED.
ENDMETHOD. "display_n_o_airpalnes
ENDCLASS. "lcl_airplane IMPLEMENTATION
위 소스를 실행했는데 무엇이 잘못된는지 실행이 안됩니다.
뭐가 잘못됐는지 알려주시고 원인도 알려주시면 좋겠습니다.
2. 1번 내용 소스중에..
METHODS: set_attributes IMPORTING
im_name TYPE string
im_planetype TYPE sflight-planetype,
display_attribute.
위 내용은 set_attributes와 display_attribute를 호출하는데 set_attribute 매소드는
in_name과 im_planetype값을 입력받아 메소드를 호출한다고 이해하고 있는데 맞는가요?
댓글 4
-
e-abap
2008.11.05 20:49
클래스 정의만 하고 객체 생성해서 메소드 호출하는 소스는 없네요~ -
e-abap
2008.11.05 20:52
다음과 같은 소소들을 소스 맨아래에 추가해서 테스트 해보세요.
DATA L_O TYPE REF TO lcl_airplane.
START-OF-SELECTION.
CREATE OBJECT L_O.
CALL METHOD L_O->DISPLAY_ATTRIBUTE. -
앙리
2008.11.05 21:15
되네요. 답변 감사합니다.
SAP 교재소스인데 책에는 답변주신 내용이 않보여서...
lcl_airplay를 L_O로선언해서 그 L_O를 오브젝트로 만즐어서 DISPLAY_ATTRIBUTE를 메소드로 호출한것으로
이해가 되는 어떻게 저 소스만으로 내용이 출력이 되는지 이해가 잘 않되고 DISPLAY_ATTRIBUTE는 여기서
어떠한 역활을 하는지 알고 싶습니다. DISPLAY_ATTRIBUTE를 더블해서 어디로 연결이 되어 있는지 알고 싶어서 해봐도
변화가 전혀 없어서 이해가 쉽지 않네요.
-
앙리
2008.11.05 21:19
그리고 결과를 확인해보니
X표시아이콘
Name of airplan:
Airplane type:
나오는데 이렇게 나와야 정상인가요?
METHOD display_attribute.
WRITE: / icon_dummy AS ICON,
/ 'Name of airplane: ', AT pos_l name,
/ 'Airplane type', AT pos_l planetype.
ENDMETHOD. "display_attribute
METHOD display_n_o_airplanes.
WRITE: /, / 'Total number of planes'(cal),
AT pos_l n_o_airplanes LEFT-JUSTIFIED.
ENDMETHOD. "display_n_o_airpalnes
이 부분은 보면 더 출력이 되야 정상일것 같아보이는데..
답변부탁합니다.