簡體   English   中英

聲明不可訪問

[英]Statement not accessible

在我寫CALL METHOD lclref->lcm .第 49 行中有錯誤CALL METHOD lclref->lcm . 我該如何解決?

REPORT ZPRACTICE_TILL_NOW.

include zlc.
include zinc.

START-OF-SELECTION.
create OBJECT lclref.
CALL METHOD lclref->lcm .

首先包括:

class zlcl DEFINITION.
  PUBLIC SECTION.
  METHODS: lcm.
  ENDCLASS.

  CLASS zlcl IMPLEMENTATION.
    method lcm.
    new-LINE.
    WRITE: 'method called '.
    ENDMETHOD.
    ENDCLASS.

第二個包括:

*&---------------------------------------------------------------------*
*&  Include           ZINC
*&---------------------------------------------------------------------*

    data lclref TYPE REF TO zlcl.

錯誤“語句不可訪問”是因為 lclref 是一個對象。 調用引用到類的對象的方法(在本例中為 object -> lclref 和 class ->zlcl )。

你可以直接指定對象和方法。

因此,更正后的代碼將是:lclref->lcm。

玩得開心。

*&---------------------------------------------------------------------*
*&  Include           ZINC
*&---------------------------------------------------------------------*

    data lclref TYPE REF TO zlcl.

你確定第一個 INCLUDE 是鋅嗎

class zlcl DEFINITION.
  PUBLIC SECTION.
  METHODS: lcm.
  ENDCLASS.

  CLASS zlcl IMPLEMENTATION.
    method lcm.
    new-LINE.
    WRITE: 'method called '.
    ENDMETHOD.
    ENDCLASS.

當我嘗試使用您的代碼時,我沒有收到任何錯誤。 請檢查您的 INCLUDE 哪個是第一個?

我不知道你的 SAP 版本如果支持你可以使用內聯聲明。 你可以看到下面的例子。 無需額外的數據聲明

DATA(lo_lcl) = new zlcl( ).
lo_lcl->lcm( ).

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM