COBOL2002 言語 拡張仕様編


付録B.1 VOS3 COBOL85とCOBOL2002での仕様の相違

VOS3 COBOL85とCOBOL2002での仕様の相違について,次の一覧で示す。

表B‒1 VOS3 COBOL85とCOBOL2002の仕様の比較

大項目

小項目

VOS3 COBOL85

COBOL2002

LANGOPT=(D)オプション指定時

-JPN,V3JPNSpaceオプション指定時

表意定数SPACE(SPACES)

日本語項目および日本語編集項目に対する表意定数SPACE(SPACES)は,KEISコードの空白(X'A1A1')となる。

日本語項目および日本語編集項目に対する表意定数SPACE(SPACES)は,日本語空白(X'8140')となる。

日本語定数

カナ漢字定数

漢字文字列に変換できなかった場合,KEISコードの空白(X'A1A1')が仮定される。

このシステムではカナ漢字定数,KEIS定数,片仮名定数および,平仮名定数は未サポート。

KEIS定数

片仮名定数

平仮名定数

分離符

分離符として,日本語空白を用いることができる。

VOS3 COBOL85と同じ。

日本語文字集合中では,EBCDIKコードの空白(X'40')と日本語空白だけを分離符とする。

日本語文字集合中では,半角空白(X'20')と日本語空白だけを分離符とする。

日本語空白が分離符とみなされるのは,日本語文字集合中だけである。

VOS3 COBOL85と同じ。

日本語空白を表す16進定数値はX'4040',X'A1A1'のどちらでもよい。

日本語空白を表す16進定数値はX'2020',X'8140'のどちらでもよい。

条件式

(比較条件)

両方の作用対象が日本語の場合

日本語項目,日本語編集項目および日本語文字定数は,それぞれ英数字項目,英数字編集項目および文字定数と同様の文字作用対象の比較の規則に従って比較される。

VOS3 COBOL85と同じ。

作用対象のけた数が等しくない場合,短い方の作用対象の右側に,長い方の作用対象のけた数に等しくなるまで,KEISコードの空白(X'A1A1')があるものとみなして,作用対象のけた数が等しいときの規則に従って比較される。

作用対象のけた数が等しくない場合,短い方の作用対象の右側に,長い方の作用対象のけた数に等しくなるまで,日本語空白(X'8140')があるものとみなして,作用対象のけた数が等しいときの規則に従って比較される。

作用対象の一方の字類が日本語で,他方の字類が日本語でない場合

作用対象の一方は表意定数および集団項目でなければならない。

VOS3 COBOL85と同じ。

比較は,日本語作用対象を文字作用対象とみなした標準データ形式の文字位置に換算し,この文字位置の個数の大きさの文字作用対象として行われる。

なお,作用対象のけた数が等しくない場合,短い方の作用対象の右側に,長い方の作用対象のけた数に等しくなるまでEBCDIKコードの空白(X'40')があるものとみなして,作用対象のけた数が等しいときの規則に従って行われる。

比較は,日本語作用対象を文字作用対象とみなした標準データ形式の文字位置に換算し,この文字位置の個数の大きさの文字作用対象として行われる。なお,作用対象のけた数が等しくない場合,短い方の作用対象の右側に,長い方の作用対象のけた数に等しくなるまで半角空白(X'20')があるものとみなして,作用対象のけた数が等しいときの規則に従って行われる。

作用対象の一方に表意定数HIGH-VALUE,LOW-VALUEおよびZEROを指定してはならない。

一方に表意定数HIGH-VALUE,LOW-VALUEおよびZEROを指定してもよい。指定した場合の扱いは,次のとおりとなる。※1

  • 表意定数HIGH-VALUE:

    2バイトのX'FFFF'として扱う。

  • 表意定数LOW-VALUE:

    2バイトのX'0000'として扱う。

  • 表意定数ZERO:

    全角文字のゼロ(X'824F')として扱う。

条件式

(字類条件)

数字(numeric)検査

日本語項目および日本語編集項目を使用してはならない。

VOS3 COBOL85と同じ。

英字(alphabetic)検査

日本語項目および日本語編集項目を使用してはならない。

VOS3 COBOL85と同じ。

英小文字(alphabetic-lower)検査

日本語項目および日本語編集項目を使用してはならない。

VOS3 COBOL85と同じ。

英大文字(alphabetic-upper)検査

日本語項目および日本語編集項目を使用してはならない。

VOS3 COBOL85と同じ。

ブール(boolean)検査

日本語項目および日本語編集項目を使用してはならない。

VOS3 COBOL85と同じ。

字類名の検査

日本語項目および日本語編集項目を使用してはならない。

VOS3 COBOL85と同じ。

実行用計算機段落のPROGRAM COLLATING SEQUENCE句

関連する符号系名にSTANDARD-1およびSTANDARD-2を指定してはならない。

VOS3 COBOL85と同じ。

入出力管理段落のAPPLY FORMS-OVERLAY句

データ名に日本語項目を指定してはならない。

VOS3 COBOL85と同じ。

ALTERNATE RECORD KEY句

データ名1が日本語項目の場合,データ名1に指定された日本語項目を英数字項目として扱う。

VOS3 COBOL85と同じ。

FILE STATUS句

データ名1またはデータ名2に日本語項目を指定してはならない。

VOS3 COBOL85と同じ。

RECORD KEY句

データ名1が日本語項目の場合,データ名1に指定された日本語項目を英数字項目として扱う。

VOS3 COBOL85と同じ。

JUSTIFIED句

JUSTIFIED句が書かれている日本語項目および日本語編集項目を受け取り側作用対象に指定したとき,送り出し側作用対象の日本語項目および日本語編集項目の大きさが受け取り側作用対象の大きさより大きければ,左端から1文字単位に文字を切り捨て,小さければ左端の余りにKEISコードの空白(X'A1A1')を補って,右端をそろえてデータを収める。

JUSTIFIED句が書かれている日本語項目および日本語編集項目を受け取り側作用対象に指定したとき,送り出し側作用対象の日本語項目および日本語編集項目の大きさが受け取り側作用対象の大きさより大きければ,左端から1文字単位に文字を切り捨て,小さければ左端の余りに日本語空白(X'8140')を補って,右端をそろえてデータを収める。

PICTURE句(日本語編集項目)

文字「N」は,日本語文字1文字を示し,「B」は,日本語空白1文字を示す。それぞれ標準データ形式で2文字分(2バイト)の大きさを表す。

VOS3 COBOL85と同じ。

編集は,MOVE文でこの項目転記するときに行われる。文字「B」の部分には,KEISコードの空白(X'A1A1')が挿入される。

編集は,MOVE文でこの項目転記するときに行われる。文字「B」の部分には,日本語空白(X'8140')が挿入される。

VALUE句

定数2に日本語文字定数を指定した場合,THRUは指定できない。

VOS3 COBOL85と同じ。

条件変数のデータ項目が日本語項目または日本語編集項目の場合,定数2は日本語文字定数または表意定数SPACEでなければならない。定数が日本語文字定数および表意定数SPACE以外の場合,VALUE句の指定は無視される。

VOS3 COBOL85と同じ。

条件変数のデータ項目が英数字項目または英数字編集項目の場合,定数2および定数3は,文字定数または表意定数でなければならない。定数が文字定数および表意定数以外の場合,VALUE句の指定は無視される。

VOS3 COBOL85と同じ。

ACCEPT文

書き方1

一意名1に日本語項目または日本語編集項目を指定した場合,それぞれ英数字項目または英数字編集項目として扱う。

一意名1に日本語項目または日本語編集項目を指定した場合,それぞれ英数字項目または英数字編集項目として扱う。

日本語編集項目が指定された場合は,そのままで扱う。

書き方2

一意名2に日本語項目および日本語編集項目を指定してはならない。

VOS3 COBOL85と同じ。

CALL文

一意名1に日本語項目を指定してはならない。

VOS3 COBOL85と同じ。

定数1に日本語文字定数を指定してはならない。

VOS3 COBOL85と同じ。

CANCEL文

一意名1に日本語項目を指定してはならない。

VOS3 COBOL85と同じ。

定数1に日本語文字定数を指定してはならない。指定された場合,CANCEL文を無視する。

VOS3 COBOL85と同じ。

EVALUATE文

選択対象の組中の各選択対象は,次の規則に従って,選択主体の組中の同じ順序位置にある選択主体に対応していなければならない。

選択対象中に現れる一意名,定数または算術式は,選択主体の組中の対応する作用対象との比較ができるものでなければならない。なお,一意名および定数に日本語項目,日本語編集項目および日本語文字定数を指定したときの比較は,この表のVOS3 COBOL85の「条件式(比較条件)」の規則に従う。

VOS3 COBOL85と同じ。

なお,一意名および定数に日本語項目,日本語編集項目および日本語文字定数を指定したときの比較は,この表のCOBOL2002の「条件式(比較条件)」の規則に従う。

INITIALIZE文

REPLACING指定を書かないと,日本語項目および日本語編集項目には空白(X'A1A1')が設定される。この場合,初期化される各データ項目を受け取り側作用対象とし,空白を送り出し側作用対象の定数とする基本項目間のMOVE文であるかのように処理が行われる。

なお,MOVE文の規則は,この表のVOS3 COBOL85の「MOVE文」に従う。

REPLACING指定を書かないと,日本語項目および日本語編集項目には日本語空白(X'8140')が設定される。この場合,初期化される各データ項目を受け取り側作用対象とし,空白を送り出し側作用対象の定数とする基本項目間のMOVE文であるかのように処理が行われる。

なお,MOVE文の規則は,この表のCOBOL2002の「MOVE文」に従う。

REPLACING指定を書いた場合,日本語項目および日本語編集項目は初期化されない。

VOS3 COBOL85と同じ。

INSPECT文

一意名1に日本語項目または日本語編集項目を指定したとき,一意名3から一意名7までの一意名は,日本語項目または日本語編集項目でなければならない。一意名3から一意名7までのいずれかの一意名に日本語項目または日本語編集項目以外を指定した場合には,INSPECT文の指定は無視される。

VOS3 COBOL85と同じ。

一意名1の用途が明示的または暗黙的なDISPLAY(日本語項目または日本語編集項目を除く)であるならば,定数はすべて文字定数または表意定数でなければならない。

VOS3 COBOL85と同じ。

一意名1の用途が明示的または暗黙的なDISPLAY(日本語項目または日本語編集項目を除く)であるならば,一意名2を除くすべての一意名の用途は,明示的または暗黙的なDISPLAY(日本語項目または日本語編集項目を除く)でなければならない。

VOS3 COBOL85と同じ。

一意名1に日本語項目または日本語編集項目を指定したとき,定数はすべて日本語文字定数でなければならない。また,定数はALL指定のない表意定数SPACE(SPACES)でなければならない。

VOS3 COBOL85と同じ。

定数3または一意名5のデータ項目の日本語文字数は,定数1または一意名3のデータ項目の日本語文字数と同じでなければならない。定数3に表意定数を書くと,表意定数の日本語文字数は,定数1や一意名3のデータ項目の日本語文字数に等しいものとみなされる。

VOS3 COBOL85と同じ。

一意名1に日本語項目または日本語編集項目を指定したとき,定数に表意定数SPACE(SPACES)を書くと,KEISコードの空白(X'A1A1')として扱う。

一意名1に日本語項目または日本語編集項目を指定したとき,定数に表意定数SPACE(SPACES)を書くと,日本語空白(X'8140')として扱う。

MERGE文

COLLATING SEQUENCE句に指定した符号系名が,STANDARD-1指定またはSTANDARD-2指定の場合,MERGE文を無視する。

COLLATING SEQUENCE句に指定した符号系名に,STANDARD-1指定またはSTANDARD-2を指定してもよい。

ファイル名1のファイルが固定長レコードだけを含むとき,その固定長よりも少ない文字位置を含むファイル名2またはファイル名3のファイルのレコードは,ファイル名1のファイルに引き渡されるとき,固定長集団項目同士の転記として扱うため,レコードの最後の文字位置の右側が半角空白(X'40')で埋められる。

ファイル名1のファイルが固定長レコードだけを含むとき,その固定長よりも少ない文字位置を含むファイル名2またはファイル名3のファイルのレコードは,ファイル名1のファイルに引き渡されるとき,固定長集団項目同士の転記として扱うため,レコードの最後の文字位置の右側が半角空白(X'20')で埋められる。

ファイル名4のファイルが固定長レコードだけを含むとき,その固定長よりも少ない文字位置を含むファイル名1のファイルのレコードは,ファイル名4のファイルに引き渡されるとき,固定長集団項目同士の転記として扱うため,レコードの最後の文字位置の右側がEBCDIKコードの空白(X'40')で埋められる。

ファイル名4のファイルが固定長レコードだけを含むとき,その固定長よりも少ない文字位置を含むファイル名1のファイルのレコードは,ファイル名4のファイルに引き渡されるとき,固定長集団項目同士の転記として扱うため,レコードの最後の文字位置の右側が半角空白(X'20')で埋められる。

MOVE文

一意名1に日本語項目または日本語編集項目を指定したときは,一意名2は日本語項目,日本語編集項目または集団項目でなければならない。

VOS3 COBOL85と同じ。

一意名2に日本語項目または日本語編集項目を指定したときは,一意名1は日本語項目,日本語編集項目または集団項目でなければならない。

VOS3 COBOL85と同じ。

定数1に日本語文字定数を指定したときは,一意名2は日本語項目または日本語編集項目でなければならない。

VOS3 COBOL85と同じ。

一意名2の日本語項目または日本語編集項目で,一意名1が集団項目のとき,一意名2に対して空白づめが発生した場合,EBCDIKコードの空白(X'4040')が埋められる。

一意名2の日本語項目または日本語編集項目で,一意名1が集団項目のとき,一意名2に対して空白づめが発生した場合,半角空白(X'2020')が埋められる。

一意名1の日本語項目または日本語編集項目で,一意名2が集団項目のとき,一意名2に対して空白づめが発生した場合,EBCDIKコードの空白(X'4040')が埋められる。

一意名1の日本語項目または日本語編集項目で,一意名2が集団項目のとき,一意名2に対して空白づめが発生した場合,半角空白(X'2020')が埋められる。

一意名1および一意名2が日本語項目または日本語編集項目のとき,一意名2に対して空白づめが発生した場合,KEISコード(X'A1A1')が埋められる。

一意名1および一意名2が日本語項目または日本語編集項目のとき,一意名2に対して空白づめが発生した場合,日本語空白(X'8140')が埋められる。

受け取り側作用対象の字類が日本語の場合,送り出し側作用対象に表意定数HIGH-VALUE,LOW-VALUEおよびZEROを指定してはならない。※2

受け取り側作用対象の字類が日本語の場合,送り出し側作用対象に表意定数HIGH-VALUE,LOW-VALUEおよびZEROを指定してもよい。※1

  • 表意定数HIGH-VALUE:

    2バイトのX'FFFF'として扱う。

  • 表意定数LOW-VALUE:

    2バイトのX'0000'として扱う。

  • 表意定数ZERO:

    全角文字のゼロ(X'824F')として扱う。

READ文

INTO指定のあるREAD文の実行結果は,次の規則をこの順に適用したものと等しい。※3

  • INTO指定のない同じREAD文の実行

  • 現在レコードがCORRESPONDING指定のないMOVE文の規則に従って,レコード領域から一意名1の領域へ転記される。現在のレコードの大きさは,RECORD句の規則で定める。暗黙的の転記はレコード領域を集団項目として扱う転記となる。

    なお,MOVE文の規則は,この表のVOS3 COBOL85の「MOVE文」に従う。

INTO指定のあるREAD文の実行結果は,次の規則をこの順に適用したものと等しい。※4

  • INTO指定のない同じREAD文の実行

  • 現在レコードがCORRESPONDING指定のないMOVE文の規則に従って,レコード領域から一意名1の領域へ転記される。現在のレコードの大きさは,RECORD句の規則で定める。暗黙的の転記はレコード領域を集団項目として扱う転記となる。

    なお,MOVE文の規則は,この表のCOBOL2002の「MOVE文」に従う。

RELEASE文

FROM指定のあるRELEASE文は,次に示す文の実行と等しい。

  • MOVE文の規則に従った文:

    MOVE 一意名1 TO レコード名1

    なお,レコード名1または一意名1に日本語項目および日本語編集項目を指定したときのMOVE文の規則は,この表のVOS3 COBOL85の「MOVE文」に従う。

  • それに続くFROM指定のない同じRELEASE文。

VOS3 COBOL85と同じ。

なお,レコード名1または一意名1に日本語項目および日本語編集項目を指定したときのMOVE文の規則は,この表のCOBOL2002の「MOVE文」に従う。

RETURN文

INTO指定のあるRETURN文の実行結果は,次の規則をこの順に適用したものと等しい。※3

  • INTO指定のない同じRETURN文の実行

  • 現在レコードがCORRESPONDING指定のないMOVE文の規則に従って,レコード領域から一意名1の領域へ転記される。現在のレコードの大きさは,RECORD句の規則で定める。暗黙的の転記はレコード領域を集団項目として扱う転記となる。なお,MOVE文の規則は,この表のVOS3 COBOL85の「MOVE文」に従う。

INTO指定のあるRETURN文の実行結果は,次の規則をこの順に適用したものと等しい。※4

  • INTO指定のない同じRETURN文の実行

  • 現在レコードがCORRESPONDING指定のないMOVE文の規則に従って,レコード領域から一意名1の領域へ転記される。現在のレコードの大きさは,RECORD句の規則で定める。暗黙的の転記はレコード領域を集団項目として扱う転記となる。なお,MOVE文の規則は,この表のCOBOL2002の「MOVE文」に従う。

REWRITE文

FROM指定のあるREWRITE文は,次に示す文の実行と等しい。

  • MOVE文の規則に従った文:MOVE 一意名1 TO レコード名1

    なお,レコード名1または一意名1に日本語項目および日本語編集項目を指定したときのMOVE文の規則は,この表のVOS3 COBOL85の「MOVE文」に従う。

  • それに続くFROM指定のない同じREWRITE文。

VOS3 COBOL85と同じ。

なお,レコード名1または一意名1に日本語項目および日本語編集項目を指定したときのMOVE文の規則は,この表のCOBOL2002の「MOVE文」に従う。

SEARCH文

書き方2のデータ名1,データ名2,一意名3,一意名4,定数1および定数2に日本語項目,日本語編集項目および日本語文字定数を指定したときの比較条件の規則は,この表のVOS3 COBOL85の「条件式(比較条件)」に従う。

書き方2のデータ名1,データ名2,一意名3,一意名4,定数1および定数2に日本語項目,日本語編集項目および日本語文字定数を指定したときの比較条件の規則は,この表のCOBOL2002の「条件式(比較条件)」に従う。

SORT文

COLLATING SEQUENCE句に指定した符号系名が,STANDARD-1指定またはSTANDARD-2指定の場合,MERGE文を無視する。

COLLATING SEQUENCE句に指定した符号系名に,STANDARD-1指定またはSTANDARD-2を指定してもよい。

ファイル名1のファイルが固定長レコードだけを含むとき,その固定長よりも少ない文字位置を含むファイル名2またはファイル名3のファイルのレコードは,ファイル名1のファイルに引き渡されるとき,固定長集団項目同士の転記として扱うため,レコードの最後の文字位置の右側がEBCDIKコードの空白(X'40')で埋められる。

ファイル名1のファイルが固定長レコードだけを含むとき,その固定長よりも少ない文字位置を含むファイル名2またはファイル名3のファイルのレコードは,ファイル名1のファイルに引き渡されるとき,固定長集団項目同士の転記として扱うため,レコードの最後の文字位置の右側が半角空白(X'20')で埋められる。

ファイル名4のファイルが固定長レコードだけを含むとき,その固定長よりも少ない文字位置を含むファイル名1のファイルのレコードは,ファイル名4のファイルに引き渡されるとき,固定長集団項目同士の転記として扱うため,レコードの最後の文字位置の右側がEBCDIKコードの空白(X'40')で埋められる。

ファイル名4のファイルが固定長レコードだけを含むとき,その固定長よりも少ない文字位置を含むファイル名1のファイルのレコードは,ファイル名4のファイルに引き渡されるとき,固定長集団項目同士の転記として扱うため,レコードの最後の文字位置の右側が半角空白(X'20')で埋められる。

START文

索引ファイルの場合,KEY指定を書くとき,データ名1はファイル名1に関連する主レコードキーまたは副レコードキーとして指定されたデータ項目でなければならない。なお,データ名1に日本語項目および日本語編集項目を指定したときの規則は,この表のVOS3 COBOL85の「RECORD KEY句」および「ALTERNATE RECORD KEY句」に従う。

VOS3 COBOL85と同じ。

なお,データ名1に日本語項目および日本語編集項目を指定したときの規則は,この表のCOBOL2002の「RECORD KEY句」および「ALTERNATE RECORD KEY句」に従う。

STRING文

一意名3に日本語項目を指定したとき,定数はすべて日本語文字定数または表意定数SPACE(SPACES)でなければならない。

VOS3 COBOL85と同じ。

一意名3の用途が明示的または暗黙的なDISPLAY(日本語項目を除く)であるならば,定数はすべて文字定数または表意定数でなければならない。

VOS3 COBOL85と同じ。

一意名3に日本語項目を指定した場合,一意名4を除くすべての一意名は日本語項目を指定しなければならない。

VOS3 COBOL85と同じ。

一意名3の用途が明示的または暗黙的なDISPLAY(日本語項目を除く)であるならば,一意名4を除くすべての一意名の用途は,明示的または暗黙的なDISPLAY(日本語項目を除く)でなければならない。

VOS3 COBOL85と同じ。

一意名3に日本語項目を指定した場合,定数に表意定数SPACE(SPACES)を指定すると,1文字のKEISコードの空白(X'A1A1')として扱う。

一意名3に日本語項目を指定した場合,定数に表意定数SPACE(SPACES)を指定すると,1文字の日本語空白(X'8140')として扱う。

一意名3に日本語編集項目を指定してはならない。

VOS3 COBOL85と同じ。

STRING文の実行で,定数1の文字列または一意名1のデータ項目の内容が,英数字と英数字の間の転記の規則に従って,一意名3のデータ項目に転送される。ただし,空白づめは行われない。なお,一意名4を除く一意名および定数の字類がすべて日本語のデータ項目の場合の規則は,この表のVOS3 COBOL85の「MOVE文」に従う。

VOS3 COBOL85と同じ。

なお,一意名4を除く一意名および定数の字類がすべて日本語のデータ項目の場合の規則は,この表のCOBOL2002の「MOVE文」に従う。

UNSTRING文

一意名1に日本語項目または日本語編集項目を指定したとき,定数はすべて日本語文字定数または表意定数SPACE(SPACES)でなければならない。

VOS3 COBOL85と同じ。

一意名1の用途が明示的または暗黙的なDISPLAY(日本語項目または日本語編集項目を除く)であるならば,定数はすべて文字定数または表意定数でなければならない。

VOS3 COBOL85と同じ。

一意名1に日本語項目または日本語編集項目を指定した場合,一意名2,一意名3および一意名5はすべて日本語項目または日本語編集項目を指定しなければならない。

VOS3 COBOL85と同じ。

一意名1に日本語項目または日本語編集項目を指定した場合,一意名4は日本語項目を指定しなければならない。

VOS3 COBOL85と同じ。

一意名1の用途が明示的または暗黙的なDISPLAY(日本語項目または日本語編集項目を除く)であるならば,一意名2,一意名3,一意名4および一意名5の用途は,明示的または暗黙的なDISPLAY(日本語項目または日本語編集項目を除く)でなければならない。

VOS3 COBOL85と同じ。

一意名1に日本語項目または日本語編集項目を指定した場合,定数に表意定数SPACE(SPACES)を指定すると,1文字のKEISコードの空白(X'A1A1')として扱う。

一意名1に日本語項目または日本語編集項目を指定した場合,定数に表意定数SPACE(SPACES)を指定すると,1文字の日本語空白(X'8140')として扱う。

WRITE文

FROM指定のあるWRITE文は,次に示す文の実行と等しい。

  • MOVE文の規則に従った文:MOVE 一意名1 TO レコード名1

    なお,レコード名1または一意名1に日本語項目および日本語編集項目を指定したときのMOVE文の規則は,この表のVOS3 COBOL85の「MOVE文」に従う。

  • それに続くFROM指定のない同じWRITE文。

VOS3 COBOL85と同じ。

なお,レコード名1または一意名1に日本語項目および日本語編集項目を指定したときのMOVE文の規則は,この表のCOBOL2002の「MOVE文」に従う。

拡張仕様

16進文字定数※5

16進文字定数を指定したVALUE句を,日本語項目および日本語編集項目に指定してはならない。

VOS3 COBOL85と同じ。

PASSWORD句,RECORD句およびALTERNATE RECORD句

データ名2に日本語項目を指定してはならない。

COBOL2002ではPASSWORD句を覚え書きとみなす。

APPLY PAGE-DEFINE句

データ名1に日本語項目を指定してはならない。

COBOL2002ではAPPLY PAGE-DEFINE句を覚え書きとみなす。

EXAMINE文とTALLY特殊レジスタ

  • 一意名1に日本語項目および日本語編集項目を指定してはならない。

  • 定数1〜定数4は,1文字からなる文字定数か,符号のない1けたの整数か,またはALL定数,記号文字以外の表意定数でなければならない。日本語文字定数は,指定してはならない。

VOS3 COBOL85と同じ。

MOVE文(日付と時刻用)

WHEN-COMPILED

CURRENT-DATE

TIME-OF-DAY

一意名に日本語項目および日本語編集項目を指定してはならない。

VOS3 COBOL85と同じ。

TRANSFORM文

  • 一意名1〜一意名3に日本語項目を指定してはならない。

  • 定数2および定数3に日本語文字定数を指定してはならない。

VOS3 COBOL85と同じ。

CURRENT-DATE関数

一意名1に日本語項目および日本語編集項目を指定してはならない。

VOS3 COBOL85と同じ。

WHEN-COMPILED関数

一意名1に日本語項目および日本語編集項目を指定してはならない。

VOS3 COBOL85と同じ。

ENTRY文

定数に日本語文字定数を指定してはならない。

VOS3 COBOL85と同じ。

報告書作成機能

CONTROL句

データ名1に日本語項目および日本語編集項目を指定したときの比較の規則は,この表のVOS3 COBOL85の「条件式(比較条件)」に従う。

データ名1に日本語項目および日本語編集項目を指定したときの比較の規則は,この表のCOBOL2002の「条件式(比較条件)」に従う。

特殊入出力装置の取扱い

JIS標準ファイル

(PICTURE句)

文字列に日本語および日本語編集を指定してはならない。

JIS標準ファイルは未サポート。

直接,DAM相対,索引順ファイルの取扱い

ACTUAL KEY句

トラック識別子

VOS3 COBOL85は,ACTUAL KEYのデータ名の先頭4バイトを2進形式のトラック識別子とみなす。利用者はこれを5けた(PIC S9(5))の2進形式の整数項目として定義しておかなければならない。このため,LANGOPT=(D)指定時,トラック識別子として日本語項目および日本語編集項目を指定した場合の実行結果は保証しない。

ACTUAL KEY句は未サポート。

レコード識別子

ACTUAL KEYのデータ名のトラック識別子を除いた残りの部分がレコード識別子であり,その大きさは1〜255バイトでなければならない。レコード識別子はPICTURE(形式)句やUSAGE(用途)句などでどのように記述されていても,VOS3 COBOL85は,割り当てたバイト数をもつ英数字項目とみなして処理する。

キーの一致,不一致の判定は,英数字項目同士の比較条件の規則に従って行う。

NOMINAL KEY句

DAM相対ファイル

データ名に日本語項目および日本語編集項目を指定してはならない。

NOMINAL KEY句は未サポート。

索引順ファイル

データ名に日本語項目および日本語編集項目を指定してはならない。

データベース機能

サブスキーマ記述項

データ名1〜データ名3およびデータ名6に日本語項目を指定してはならない。

VOS3 COBOL85と同じ。

CONNECT文

データ名1に日本語項目を指定してはならない。

VOS3 COBOL85と同じ。

DISCONNECT文

データ名1に日本語項目を指定してはならない。

VOS3 COBOL85と同じ。

ERASE文

データ名1に日本語項目を指定してはならない。

VOS3 COBOL85と同じ。

FETCH文

データ名1,データ名2およびデータ名3に日本語項目を指定してはならない。

VOS3 COBOL85と同じ。

FIND文

データ名に日本語項目を指定してはならない。

VOS3 COBOL85と同じ。

FINISH文

データ名1およびデータ名2に日本語項目を指定してはならない。

VOS3 COBOL85と同じ。

GET文

データ名1,データ名2およびデータ名3に日本語項目を指定してはならない。

VOS3 COBOL85と同じ。

MODIFY文

データ名1およびデータ名2に日本語項目を指定してはならない。

VOS3 COBOL85と同じ。

NULLIFY文

データ名に日本語項目を指定してはならない。

VOS3 COBOL85と同じ。

RECONNECT文

データ名に日本語項目を指定してはならない。

VOS3 COBOL85と同じ。

STORE文

データ名1,データ名2およびデータ名3に日本語項目を指定してはならない。

VOS3 COBOL85と同じ。

注※1

COBOL2002では,日本語の表意定数として,次に示すものが対象である。

  • ZERO(ZEROS/ZEROES)

  • SPACE(SPACES)

  • HIGH-VALUE(HIGH-VALUES)

  • LOW-VALUE(LOW-VALUES)

注※2

VOS3 COBOL85では,日本語の表意定数としてSPACE(SPACES)だけが対象である。

注※3

INTOに指定されたデータ名が日本語項目の場合でも集団項目の転記となるため,日本語項目の右端に空白を補う場合は,半角空白(X'4040')となる。

注※4

INTOに指定されたデータ名が日本語項目の場合でも集団項目の転記となるため,日本語項目の右端に空白を補う場合は,半角空白(X'2020')となる。

注※5

COBOL2002では,16進英数字定数となる。