COBOL2002 言語 拡張仕様編

[目次][索引][前へ][次へ]

18.2.1 OLEオブジェクト参照データ項目(OLE2オートメーションインタフェース機能)

OLEオブジェクト参照データ項目は,インスタンス化されたOLEオブジェクトのポインタを格納するためのデータ領域である。

形式
[図データ]

構文規則
  1. レベル番号は,01〜49または77でなければならない。
  2. OLEオブジェクト参照データ項目は,作業場所節および連絡節に定義しなければならない。
  3. OLEオブジェクト参照データ項目は,EXTERNAL句やGLOBAL句を指定したレコード記述中に書いてもよい。
  4. OLEオブジェクト参照データ項目が独立した基本項目として定義された場合は,EXTERNAL句やGLOBAL句を指定できる。ただし,EXTERNAL句やGLOBAL句を指定できるのは,オブジェクト参照データ項目が作業場所節で定義されている場合だけである。
  5. OLEオブジェクト参照データ項目にVALUE句を指定してもよい。VALUE句には,表意定数ZEROとNULLが指定できる。
  6. OLEオブジェクト参照データ項目に関連する条件名が記述できる。ただし,条件名のVALUE句には表意定数ZEROとNULLだけが指定できる。
  7. USAGE句のOBJECT指定と同時にPICTURE句を指定してはならない。
  8. OLEオブジェクト参照データ項目を明示的に参照できる個所を次に示す。
    ・OLE2オートメーションインタフェース機能でのINVOKE文
    ・OLE2オートメーションインタフェース機能でのSET文
    ・OLEオブジェクト参照データ比較の条件式
    ・CONVERT-TO-VARIANT関数

一般規則
  1. OLEオブジェクト参照データ項目は内部的に4バイト(64bit版PC(x64) COBOL2002では8バイト)の領域が確保される。
  2. OLEオブジェクト参照データ項目には,生成されたインスタンスのOLEオブジェクトのポインタを格納できる。
  3. OLEオブジェクト参照データ項目にSYNCHRONIZED句の機能が適用された場合は,4バイト(64bit版PC(x64) COBOL2002では8バイト)境界に割り付けられる。
    SYNCHRONIZED句の機能が適用されない場合は,バイト境界に割り付けられる。
  4. OLEオブジェクト参照データ項目にOLEオブジェクトを格納するとき,すでに別のOLEオブジェクトが格納されている場合は,前に格納されたOLEオブジェクトを解放した後に格納される。