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

Statement is not accessible

0 Likes
583

Im trying to create an instance of a simple object with a constructor with a importing parameter. I am getting the error Statement is not accessible while trying to compile. What am I doing wrong. See code be low.

REPORT z_pjs_program.

----


  • CLASS lcl_waitlist DEFINITION

----


*

----


CLASS lcl_waitlist DEFINITION.

PUBLIC SECTION.

METHODS constructor IMPORTING im_number TYPE n.

PROTECTED SECTION.

DATA: list_nbr TYPE n.

ENDCLASS. "lcl_waitlist DEFINITION

----


  • CLASS lcl_waitlist IMPLEMENTATION

----


*

----


CLASS lcl_waitlist IMPLEMENTATION.

METHOD constructor.

me->list_nbr = im_number.

ENDMETHOD. "constructor

ENDCLASS. "lcl_waitlist IMPLEMENTATION

DATA: o_list1 TYPE REF TO lcl_waitlist.

CREATE OBJECT o_list1

EXPORTING

im_number = 1.

1 ACCEPTED SOLUTION
Read only

RichHeilman
Developer Advocate
Developer Advocate
0 Likes
514

Yes, this is a little quirk, you need to put the implementation at the end of the program, or use the START-OF-SELECTION statement.



REPORT z_pjs_program.

----------------------------------------------------------------------

CLASS lcl_waitlist DEFINITION 
----------------------------------------------------------------------
*
----------------------------------------------------------------------
CLASS lcl_waitlist DEFINITION.
PUBLIC SECTION.
METHODS constructor IMPORTING im_number TYPE n.
PROTECTED SECTION.
DATA: list_nbr TYPE n.

ENDCLASS. "lcl_waitlist DEFINITION
----------------------------------------------------------------------

CLASS lcl_waitlist IMPLEMENTATION 
----------------------------------------------------------------------
*
----------------------------------------------------------------------
CLASS lcl_waitlist IMPLEMENTATION.
METHOD constructor.
me->list_nbr = im_number.
ENDMETHOD. "constructor
ENDCLASS. "lcl_waitlist IMPLEMENTATION


DATA: o_list1 TYPE REF TO lcl_waitlist.


START-OF-SELECTION          "<<<< add this here


CREATE OBJECT o_list1
EXPORTING
im_number = 1.

Or put the implemenation at the end.



REPORT z_pjs_program.

----------------------------------------------------------------------

CLASS lcl_waitlist DEFINITION 
----------------------------------------------------------------------
*
----------------------------------------------------------------------
CLASS lcl_waitlist DEFINITION.
PUBLIC SECTION.
METHODS constructor IMPORTING im_number TYPE n.
PROTECTED SECTION.
DATA: list_nbr TYPE n.

ENDCLASS. "lcl_waitlist DEFINITION


DATA: o_list1 TYPE REF TO lcl_waitlist.

CREATE OBJECT o_list1
EXPORTING
im_number = 1.



----------------------------------------------------------------------

CLASS lcl_waitlist IMPLEMENTATION 
----------------------------------------------------------------------
*
----------------------------------------------------------------------
CLASS lcl_waitlist IMPLEMENTATION.
METHOD constructor.
me->list_nbr = im_number.
ENDMETHOD. "constructor
ENDCLASS. "lcl_waitlist IMPLEMENTATION


Regards,

Rich Heilman

2 REPLIES 2
Read only

RichHeilman
Developer Advocate
Developer Advocate
0 Likes
515

Yes, this is a little quirk, you need to put the implementation at the end of the program, or use the START-OF-SELECTION statement.



REPORT z_pjs_program.

----------------------------------------------------------------------

CLASS lcl_waitlist DEFINITION 
----------------------------------------------------------------------
*
----------------------------------------------------------------------
CLASS lcl_waitlist DEFINITION.
PUBLIC SECTION.
METHODS constructor IMPORTING im_number TYPE n.
PROTECTED SECTION.
DATA: list_nbr TYPE n.

ENDCLASS. "lcl_waitlist DEFINITION
----------------------------------------------------------------------

CLASS lcl_waitlist IMPLEMENTATION 
----------------------------------------------------------------------
*
----------------------------------------------------------------------
CLASS lcl_waitlist IMPLEMENTATION.
METHOD constructor.
me->list_nbr = im_number.
ENDMETHOD. "constructor
ENDCLASS. "lcl_waitlist IMPLEMENTATION


DATA: o_list1 TYPE REF TO lcl_waitlist.


START-OF-SELECTION          "<<<< add this here


CREATE OBJECT o_list1
EXPORTING
im_number = 1.

Or put the implemenation at the end.



REPORT z_pjs_program.

----------------------------------------------------------------------

CLASS lcl_waitlist DEFINITION 
----------------------------------------------------------------------
*
----------------------------------------------------------------------
CLASS lcl_waitlist DEFINITION.
PUBLIC SECTION.
METHODS constructor IMPORTING im_number TYPE n.
PROTECTED SECTION.
DATA: list_nbr TYPE n.

ENDCLASS. "lcl_waitlist DEFINITION


DATA: o_list1 TYPE REF TO lcl_waitlist.

CREATE OBJECT o_list1
EXPORTING
im_number = 1.



----------------------------------------------------------------------

CLASS lcl_waitlist IMPLEMENTATION 
----------------------------------------------------------------------
*
----------------------------------------------------------------------
CLASS lcl_waitlist IMPLEMENTATION.
METHOD constructor.
me->list_nbr = im_number.
ENDMETHOD. "constructor
ENDCLASS. "lcl_waitlist IMPLEMENTATION


Regards,

Rich Heilman

Read only

0 Likes
514

Thanks Rich, that did it. Appreciate the help!