ページの先頭行へ戻る
NetCOBOL for .NET V8.0 メッセージ集
FUJITSU Software

2.5.189 JMN5735I-S

デリゲートの"NEW"を呼び出す@2@で,USING指定の第1パラメタ@1@が解決できません.
@2@を無効とします.

引数の説明

@1@:

エラーの原因となった利用者語.

@2@:

INVOKE文.

      000001 IDENTIFICATION DIVISION.
      000002 DELEGATE-ID.   D5735.
      000003 ENVIRONMENT    DIVISION.
      000004 DATA           DIVISION.
      000005 LINKAGE         SECTION.
      000006 01 LK1         PIC S9(9) COMP-5.
      000007 01 LK2         PIC S9(9) COMP-5.
      000008 01 LK3         PIC S9(9) COMP-5.
      000009 PROCEDURE      DIVISION USING BY VALUE LK1
      000010                               BY VALUE LK2
      000011                         RETURNING      LK3.
      000012 END DELEGATE   D5735.
    
      000001 IDENTIFICATION DIVISION.
      000002 PROGRAM-ID.    P5735.
      000003 ENVIRONMENT    DIVISION.
      000004 CONFIGURATION   SECTION.
      000005 REPOSITORY.
      000006     DELEGATE D5735.
      000007 DATA           DIVISION.
      000008 WORKING-STORAGE SECTION.
      000009 01 WOBRDT      OBJECT REFERENCE D5735.
      000010 01 WANS        BINARY-LONG.
      000011 PROCEDURE      DIVISION.
      000012     INVOKE D5735 "NEW" USING BY VALUE MATH
      000013                              BY VALUE "Max"
      000014                        RETURNING WOBRDT
      000015 END PROGRAM    P5735.
    

P5735.cob (12) : JMN5735I-S デリゲートの"NEW"を呼び出すINVOKE文で,USING指定の第1パラメタMATHが解決できません.INVOKE文を無効とします.

詳細な説明

デリゲートのNEWメソッド(コンストラクタ)の呼出しは通常と異なるINVOKE文を使用します.

このINVOKE文は,通常のINVOKE文と異なり,次の規則があります.

  • BY指定はBY VALUEしか指定できない.また,BY指定を省略した場合,BY VALUEが指定されたと見なす.

  • USING指定に記述するパラメタの数は2つでなければならない.

  • USING指定に記述した1つ目のパラメタは,クラス名,オブジェクト参照項目または,定義済みオブジェクト一意名SELFでなければならない.

  • USING指定に記述した2つ目のパラメタは,文字定数,日本語定数またはメソッド指定子で宣言した名前でなければならない.

デリゲートのNEWメソッド(コンストラクタ)の1つ目のパラメタには,生成したデリゲートオブジェクトを介してメソッドを呼び出す際に実際に使用するオブジェクト参照項目またはクラスの型を指定する必要があります.

このINVOKE文の詳細については,“COBOL 文法書”の“11.8.3.9 INVOKE文”を参照してください.