‎2009 Mar 24 10:29 AM
Dear Experts,
1)
in this below shown example.
zcl_worker_as_doc is a global class and zinherit
is lokal class.
check_existence is a protected method of zcl_worker_as_doc
How can I call in this case zinherit's method
m2.
2)
Is this the common way to access classes protected
methods generally
DATA lv_matnr TYPE mara-matnr.
DATA ls_quee TYPE zdms_queue.*----------------------------------------------------------------------*
* CLASS zinherit DEFINITION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS zinherit DEFINITION INHERITING FROM zcl_worker_as_doc.
PUBLIC SECTION.
METHODS m2.
ENDCLASS. "zinherit DEFINITION*----------------------------------------------------------------------*
* CLASS zinherit IMPLEMENTATION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS zinherit IMPLEMENTATION.
METHOD m2.
DATA lv_kl TYPE REF TO zinherit.
CALL METHOD lv_kl->check_existence
EXPORTING
i_zdms_queue = ls_quee
IMPORTING
e_ref = lv_matnr.
ENDMETHOD. "m2
ENDCLASS. "zinherit IMPLEMENTATIONDATA lcl TYPE REF TO zinherit.
‎2009 Mar 24 11:23 AM
Singh,
I get the message:
Statement is not accessible
*& Report ZREP.
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zhakan.
DATA lv_matnr TYPE mara-matnr.
DATA ls_quee TYPE zdms_queue.
*----------------------------------------------------------------------*
* CLASS zinherit DEFINITION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS zinherit DEFINITION INHERITING FROM zcl_dms_worker_as_doc.
PUBLIC SECTION.
METHODS m2.
ENDCLASS. "zinherit DEFINITION
*----------------------------------------------------------------------*
* CLASS zinherit IMPLEMENTATION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS zinherit IMPLEMENTATION.
METHOD m2.
DATA lv_kl TYPE REF TO zinherit.
CALL METHOD lv_kl->check_existence
EXPORTING
i_zdms_queue = ls_quee
IMPORTING
e_ref = lv_matnr.
ENDMETHOD. "m2
ENDCLASS. "zinherit IMPLEMENTATION
DATA lcl TYPE REF TO zinherit.
Create Object lcl.
Call method LCL->m2.
‎2009 Mar 24 11:02 AM
DATA lcl TYPE REF TO zinherit.
Create Object lcl. " Create the instance of the class
Call method LCL->m2.
Regards,
Gurpreet
‎2009 Mar 24 11:23 AM
Singh,
I get the message:
Statement is not accessible
*& Report ZREP.
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zhakan.
DATA lv_matnr TYPE mara-matnr.
DATA ls_quee TYPE zdms_queue.
*----------------------------------------------------------------------*
* CLASS zinherit DEFINITION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS zinherit DEFINITION INHERITING FROM zcl_dms_worker_as_doc.
PUBLIC SECTION.
METHODS m2.
ENDCLASS. "zinherit DEFINITION
*----------------------------------------------------------------------*
* CLASS zinherit IMPLEMENTATION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS zinherit IMPLEMENTATION.
METHOD m2.
DATA lv_kl TYPE REF TO zinherit.
CALL METHOD lv_kl->check_existence
EXPORTING
i_zdms_queue = ls_quee
IMPORTING
e_ref = lv_matnr.
ENDMETHOD. "m2
ENDCLASS. "zinherit IMPLEMENTATION
DATA lcl TYPE REF TO zinherit.
Create Object lcl.
Call method LCL->m2.
‎2009 Mar 24 11:35 AM
Create the class instance and call the method after definition.
I tried it works.
DATA lv_matnr TYPE mara-matnr.
DATA ls_quee TYPE zdms_queue.
*----------------------------------------------------------------------*
* CLASS zinherit DEFINITION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS zinherit DEFINITION INHERITING FROM Zcl_dms_worker_as_doc.
PUBLIC SECTION.
METHODS m2.
ENDCLASS. "zinherit DEFINITION
DATA lcl TYPE REF TO zinherit.
Create Object lcl.
Call method LCL->m2.
*----------------------------------------------------------------------*
* CLASS zinherit IMPLEMENTATION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS zinherit IMPLEMENTATION.
METHOD m2.
DATA lv_kl TYPE REF TO zinherit.
CALL METHOD lv_kl->check_existence
EXPORTING
i_zdms_queue = ls_quee
IMPORTING
e_ref = lv_matnr.
ENDMETHOD. "m2
ENDCLASS. "zinherit IMPLEMENTATIONRegards,
Gurpreet
‎2009 Mar 24 11:38 AM