Error en hola mundo con objetos

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • pflerman
    Junior Member
    • jul
    • 17

    #1

    Error en hola mundo con objetos

    Me dá el error

    STATEMENT IS NOT ACCESSIBLE

    en la linea de CREATE OBJECT

    Alguien me puede decir porque ???

    MUchas gracias

    CLASS pablo DEFINITION.
    PUBLIC SECTION.
    METHODS: get_cont EXPORTING value(val) TYPE i,
    inc_cont,
    set_cont IMPORTING value(val) TYPE i.
    PRIVATE SECTION.
    DATA: cont TYPE i.
    ENDCLASS. "pablo

    *----------------------------------------------------------------------*
    * CLASS cont IMPLEMENTATION
    *----------------------------------------------------------------------*
    *
    *----------------------------------------------------------------------*
    CLASS pablo IMPLEMENTATION.
    METHOD get_cont.
    val = cont.
    ENDMETHOD. "get_cont
    METHOD inc_cont.
    ADD 1 TO cont.
    ENDMETHOD. "inc_cont
    METHOD set_cont.
    cont = val.
    ENDMETHOD. "set_cont
    ENDCLASS. "pablo IMPLEMENTATION

    break abap.

    DATA: obj TYPE REF TO pablo.
    DATA: i TYPE i VALUE 0.


    CREATE OBJECT obj.

    CALL METHOD obj->set_cont
    EXPORTING
    val = i.

    DO 5 TIMES.
    CALL METHOD obj->inc_cont.
    ENDDO.

    CALL METHOD obj->get_cont
    IMPORTING
    i = val.

    WRITE /i.
  • mystic_soul
    Member
    • sep
    • 76

    #2
    No entiendo mucho del tema pero para mi, la parte de:

    DATA: obj TYPE REF TO pablo.
    DATA: i TYPE i VALUE 0.


    CREATE OBJECT obj.

    CALL METHOD obj->set_cont
    EXPORTING
    val = i.

    DO 5 TIMES.
    CALL METHOD obj->inc_cont.
    ENDDO.

    CALL METHOD obj->get_cont
    IMPORTING
    i = val.

    WRITE /i.

    deberia ir en un start-of-selection o algo por el estilo. Intenta ponerlo asi..

    class nombre definition.
    ...
    ..
    endclass.

    class nombre implementation.
    ...
    ..
    endclass.

    start-of-selection.
    data: cl_nombre type ref to nombre.
    ...
    create object o_nombre type cl_nombre.

    Espero que te haya ayudado!

    Comentario

    • Mauricio Hidalgo
      Senior Member
      • may
      • 481

      #3
      Es correcta la respuesta. Antes del Create object, pone el evento START-OF-SELECTION.

      Comentario

      • pflerman
        Junior Member
        • jul
        • 17

        #4
        Muchas gracias,,, el problema era el
        START-OF-SELECTION.
        saludos

        Comentario

        Trabajando...