例題
[C5570.cob] 000001 IDENTIFICATION DIVISION. 000002 CLASS-ID. C5570. 000003 ENVIRONMENT DIVISION. 000004 CONFIGURATION SECTION. 000005 REPOSITORY. 000006 CLASS FJBASE 000007 CLASS BNDTBL-CL AS "*COB-BINDTABLE". 000008 IDENTIFICATION DIVISION. 000009 OBJECT. 000010 PROCEDURE DIVISION. 000011 IDENTIFICATION DIVISION. 000012 METHOD-ID. M5570. 000013 DATA DIVISION. 000014 WORKING-STORAGE SECTION. 000015 01 WOBR1 OBJECT REFERENCE. 000016 01 WOBR2 OBJECT REFERENCE BNDTBL-CL. 000017 PROCEDURE DIVISION. 000018 SET WOBR1 TO WOBR2 AS FJBASE. 000019 END METHOD M5570. 000020 END OBJECT. 000021 END CLASS C5570.
C5570.cob 18: JMN5570I-S 特殊クラスのクラス名,または,アーリバインド特殊クラスおよび*COM(*OLE)を除く特殊クラスを参照するオブジェクト参照一意名に,オブジェクト指定子を指定することはできません.
詳細な説明
オブジェクト指定子は,ASの前に指定した一意名の型を,ASの後に指定した型に読み替える指定です.
特殊オブジェクト(特殊クラスを参照するオブジェクト)は,COBOLのオブジェクト以外のオブジェクトであり,基本的には,これらにオブジェクト指定子は適用できません.ただし,以下のクラスを参照する特殊オブジェクトの場合は,オブジェクト指定子による修飾が可能です.
環境部のリポジトリ段落のクラス指定子の定数の値が,次のいずれかであるクラス:
"*COM" (または"*OLE")
"*COM:COMサーバ名:COMクラス名" (COMサーバ名=型ライブラリとの対応付けに使用する任意の名前, COMクラス名=dispinterface名またはcoclass名)