Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

protected components

Former Member
0 Likes
625

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 IMPLEMENTATION

DATA lcl TYPE REF TO zinherit.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
593

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.

4 REPLIES 4
Read only

Former Member
0 Likes
593
DATA lcl TYPE REF TO zinherit.

Create Object lcl.                        " Create the instance of the class

Call method LCL->m2.

Regards,

Gurpreet

Read only

Former Member
0 Likes
594

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.

Read only

0 Likes
593

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 IMPLEMENTATION

Regards,

Gurpreet

Read only

Former Member
0 Likes
593

singh I love you