品質管理 docs: 凡例統一(◎△×) + 予約語205語再評価 + 説明列コード例削除

This commit is contained in:
qiuqiuqiu
2026-06-30 22:27:53 +08:00
parent baa5be54d2
commit 02dd36e094
2 changed files with 276 additions and 280 deletions
@@ -1,22 +1,16 @@
# COBOLキーワード網羅定義書
## 凡例
- ◎: 使用中 / 対象
- ○: 定義あり・未使用
- △: 未定義
- 出典: COBOL言語解説書_IBM_zOS_V65.md / IBM Enterprise COBOL 標準予約語 / 実装時の実績フィードバック
---
> 出典: COBOL言語解説書_IBM_zOS_V65.md / IBM Enterprise COBOL 標準予約語 / 実装時の実績フィードバック
## 1. COBOL予約語一覧(全205語)
### A
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 1 | ACCEPT | 高頻度 | 予約語(文) | システム日付・時刻・ユーザ入力の受取り。DATE/DAY/TIME/DAY-OF-WEEK等のFROM句でシステム情報を取得。 | PROCEDURE DIVISION | ACCEPT文(FROM DATE/TIME/DAY/DAY-OF-WEEK |
| 2 | ACCESS | 低頻度 | 予約語(句) | ファイルのアクセスモード指定(ACCESS MODE IS SEQUENTIAL/RANDOM/DYNAMIC)。 | ENVIRONMENT DIVISION, FILE-CONTROL | ACCESS MODE句 |
| 3 | ADD | 高頻度 | 予約語(文) | 加算。ROUNDED、SIZE ERROR、CORRESPONDING句をサポート。`ADD identifier TO identifier [ROUNDED]` 等。 | PROCEDURE DIVISION | ADD文(TO/GIVING/CORRESPONDING/ROUNDED/SIZE ERROR |
| 3 | ADD | 高頻度 | 予約語(文) |加算。ROUNDED、SIZE ERROR、CORRESPONDING句をサポート。| PROCEDURE DIVISION | ADD文(TO/GIVING/CORRESPONDING/ROUNDED/SIZE ERROR |
| 4 | AFTER | 高頻度 | 予約語(句) | WRITE文の改行制御(AFTER ADVANCING)。INSPECT文の位置指定(AFTER identifier)。 | PROCEDURE DIVISION | WRITE文(AFTER ADVANCING句)、INSPECT文 |
| 5 | ALL | 高頻度 | FIGURATIVE CONSTANT / 予約語 | FIGURATIVE CONSTANTとしてリテラル文字列の繰り返し。INSPECT文のALL指定。関数ALL組み込み指定。 | PROCEDURE DIVISION, DATA DIVISION | INSPECT文、REPLACING句、FIGURATIVE CONSTANT |
| 6 | ALPHABETIC | 高頻度 | 予約語(クラス条件) | クラス条件で使用。英字(A-Z, a-z, スペース)のみで構成されているかの判定。 | PROCEDURE DIVISION | クラス条件(IF ALPHABETIC |
@@ -24,37 +18,37 @@
| 8 | ALSO | 高頻度 | 予約語(句) | EVALUATE文の複数条件指定(ALSO subject)。 | PROCEDURE DIVISION | EVALUATE文 |
| 9 | AND | 高頻度 | 予約語(論理演算子) | 複合条件の論理積(AND条件)。 | PROCEDURE DIVISION | 条件式 |
| 10 | ANY | 高頻度 | 予約語 | SEARCH ALLのWHEN条件内での使用等。 | PROCEDURE DIVISION | SEARCH文 |
| 11 | APPLY | 高頻度 | 予約語(句) | I-O-CONTROL段落でWRITE-ONLY等の適用を指定。`APPLY WRITE-ONLY ON file-name`| ENVIRONMENT DIVISION, I-O-CONTROL | I-O-CONTROL段落 |
| 11 | APPLY | 高頻度 | 予約語(句) |I-O-CONTROL段落でWRITE-ONLY等の適用を指定。| ENVIRONMENT DIVISION, I-O-CONTROL | I-O-CONTROL段落 |
| 12 | ASCENDING | 高頻度 | 予約語(句) | SORT/MERGEの昇順キー指定。OCCURSのASCENDING KEY指定。 | PROCEDURE DIVISION, DATA DIVISION | SORT文、MERGE文、OCCURS句 |
| 13 | ASSIGN | 高頻度 | 予約語(句) | SELECT文でファイルと外部名を関連付け。`SELECT file-name ASSIGN TO assignment-name`| ENVIRONMENT DIVISION, FILE-CONTROL | SELECT文 |
| 13 | ASSIGN | 高頻度 | 予約語(句) |SELECT文でファイルと外部名を関連付け。| ENVIRONMENT DIVISION, FILE-CONTROL | SELECT文 |
| 14 | AT | 高頻度 | 予約語(句) | READ文のAT END句。WRITE文のAT END-OF-PAGE句。SEARCH文のAT END句。 | PROCEDURE DIVISION | READ文、WRITE文、SEARCH文 |
| 15 | AUTHOR | 低頻度 | 予約語(段落) | IDENTIFICATION DIVISIONの段落(ドキュメント用)。現行COBOLでは省略可能。 | IDENTIFICATION DIVISION | IDENTIFICATION DIVISION段落 |
| 16 | BINARY | 高頻度 | USAGE句 / 予約語 | 2進形式の内部表現(COMP/COMP-4/BINARY)。`USAGE BINARY`または`COMP`| DATA DIVISION | USAGE句、PICTURE句 |
| 16 | BINARY | 高頻度 | USAGE句 / 予約語 |2進形式の内部表現(COMP/COMP-4/BINARY)。| DATA DIVISION | USAGE句、PICTURE句 |
### B
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 17 | BLOCK | 高頻度 | 予約語(句) | FDの物理ブロックサイズ指定。`BLOCK CONTAINS integer RECORDS/CHARACTERS`| DATA DIVISION, FILE SECTION | FD句(BLOCK CONTAINS |
| 17 | BLOCK | 高頻度 | 予約語(句) |FDの物理ブロックサイズ指定。| DATA DIVISION, FILE SECTION | FD句(BLOCK CONTAINS |
| 18 | BY | 高頻度 | 予約語(句) | PERFORM VARYINGの増分指定(BY identifier)。CALL文の引数渡し(BY REFERENCE/CONTENT/VALUE)。MULTIPLY/DIVIDE文の演算子。 | PROCEDURE DIVISION | PERFORM文、CALL文、MULTIPLY文、DIVIDE文 |
### C
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 19 | CALL | 高頻度 | 予約語(文) | サブプログラム呼出。`CALL literal/identifier USING data-name RETURNING identifier [ON EXCEPTION imperative]`| PROCEDURE DIVISION | CALL文(USING/RETURNING/ON EXCEPTION/ON OVERFLOW |
| 19 | CALL | 高頻度 | 予約語(文) |サブプログラム呼出。| PROCEDURE DIVISION | CALL文(USING/RETURNING/ON EXCEPTION/ON OVERFLOW |
| 20 | CHARACTER | 低頻度 | 予約語 | OBJECT-COMPUTER段落のMEMORY SIZE単位指定。特殊文字語。 | ENVIRONMENT DIVISION | OBJECT-COMPUTER段落 |
| 21 | CHARACTERS | 高頻度 | 予約語(句) | BLOCK/RECORD CONTAINSの単位。INSPECT文の対象指定(CHARACTERS)。 | DATA DIVISION, PROCEDURE DIVISION | FD句、INSPECT文 |
| 22 | CLOSE | 高頻度 | 予約語(文) | ファイルのクローズ。`CLOSE file-name [WITH LOCK/NO REWIND/REEL/FOR REMOVAL]`| PROCEDURE DIVISION | CLOSE文(WITH LOCK/NO REWIND/REEL/FOR REMOVAL |
| 22 | CLOSE | 高頻度 | 予約語(文) |ファイルのクローズ。| PROCEDURE DIVISION | CLOSE文(WITH LOCK/NO REWIND/REEL/FOR REMOVAL |
| 23 | COMP | 高頻度 | USAGE句 | 2進形式内部表現(USAGE COMP = USAGE BINARY = USAGE COMP-4)。 | DATA DIVISION | USAGE句 |
| 24 | COMP-3 | 高頻度 | USAGE句 | パック10進形式内部表現。`USAGE COMP-3`| DATA DIVISION | USAGE句 |
| 24 | COMP-3 | 高頻度 | USAGE句 |パック10進形式内部表現。| DATA DIVISION | USAGE句 |
| 25 | COMP-4 | 低頻度 | USAGE句 | COMPと同義(2進形式)。環境によってCOMP(2進)とCOMP-4(ネイティブ2進)が異なる場合あり。 | DATA DIVISION | USAGE句 |
| 26 | COMPUTE | 高頻度 | 予約語(文) | 計算代入。複数の算術演算を組合せ可能。`COMPUTE identifier [ROUNDED] = arithmetic-expression [ON SIZE ERROR]`| PROCEDURE DIVISION | COMPUTE文(ROUNDED/SIZE ERROR |
| 26 | COMPUTE | 高頻度 | 予約語(文) |計算代入。複数の算術演算を組合せ可能。| PROCEDURE DIVISION | COMPUTE文(ROUNDED/SIZE ERROR |
| 27 | CONDITION | 低頻度 | 予約語 | 条件名(Condition-name)の定義内で使用。 | DATA DIVISION | 条件名(88レベル) |
| 28 | CONFIGURATION | 高頻度 | 予約語(節) | ENVIRONMENT DIVISIONの構成節。`CONFIGURATION SECTION.`| ENVIRONMENT DIVISION | CONFIGURATION SECTION |
| 28 | CONFIGURATION | 高頻度 | 予約語(節) |ENVIRONMENT DIVISIONの構成節。| ENVIRONMENT DIVISION | CONFIGURATION SECTION |
| 29 | CONTAINS | 高頻度 | 予約語(句) | FDのBLOCK CONTAINS/RECORD CONTAINS句で使用。 | DATA DIVISION, FILE SECTION | FD句 |
| 30 | CONTINUE | 高頻度 | 予約語(文) | 無操作(no operation)文。条件文の何もしない分岐に使用。 | PROCEDURE DIVISION | CONTINUE文 |
| 31 | CONVERTING | 低頻度 | 予約語(句) | INSPECT文の文字変換指定。`INSPECT identifier CONVERTING identifier TO identifier`| PROCEDURE DIVISION | INSPECT文 |
| 31 | CONVERTING | 低頻度 | 予約語(句) |INSPECT文の文字変換指定。| PROCEDURE DIVISION | INSPECT文 |
| 32 | COPY | 高頻度 | 予約語(文) | COPYライブラリからソーステキストを組み込み。疑似テキストによる置換機能。 | ソース記述(任意の場所) | COPY文(コンパイラ指示文) |
| 33 | CORR | 高頻度 | 予約語(CORRESPONDINGの短縮形) | CORRESPONDING句の短縮形。ADD CORR / MOVE CORR / SUBTRACT CORR。 | PROCEDURE DIVISION | ADD文、MOVE文、SUBTRACT文 |
| 34 | COUNT | 低頻度 | 予約語(句) | UNSTRING文のCOUNT IN句で使用。文字数の計数。 | PROCEDURE DIVISION | UNSTRING文 |
@@ -62,61 +56,61 @@
### D
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 36 | DATA | 高頻度 | 予約語(区分) | DATA DIVISIONヘッダ。データ区分の開始。 | DATA DIVISION | DATA DIVISION |
| 37 | DATE | 低頻度 | 予約語(句)/ 特殊レジスタ関連 | ACCEPT文のFROM DATE句(PIC 9(6) YYMMDD)。特殊レジスタではないがシステム日付情報。 | PROCEDURE DIVISION | ACCEPT文 |
| 38 | DATE-COMPILED | 低頻度 | 予約語(段落) | IDENTIFICATION DIVISIONの段落(ドキュメント用)。 | IDENTIFICATION DIVISION | IDENTIFICATION DIVISION段落 |
| 39 | DATE-WRITTEN | 低頻度 | 予約語(段落) | IDENTIFICATION DIVISIONの段落(ドキュメント用)。 | IDENTIFICATION DIVISION | IDENTIFICATION DIVISION段落 |
| 40 | DECLARATIVES | 低頻度 | 予約語(宣言部) | 例外処理やデバッグ処理を記述する特殊な手続き領域。`DECLARATIVES. ... END DECLARATIVES.`| PROCEDURE DIVISION | DECLARATIVES |
| 41 | DELETE | 高頻度 | 予約語(文) | 索引ファイル/相対ファイルからのレコード削除。`DELETE file-name RECORD [INVALID KEY imperative]`| PROCEDURE DIVISION | DELETE文(INVALID KEY |
| 40 | DECLARATIVES | 低頻度 | 予約語(宣言部) |例外処理やデバッグ処理を記述する特殊な手続き領域。| PROCEDURE DIVISION | DECLARATIVES |
| 41 | DELETE | 高頻度 | 予約語(文) |索引ファイル/相対ファイルからのレコード削除。| PROCEDURE DIVISION | DELETE文(INVALID KEY |
| 42 | DELIMITED | 高頻度 | 予約語(句) | STRING文(DELIMITED BY)およびUNSTRING文(DELIMITED BY)で区切り文字指定。 | PROCEDURE DIVISION | STRING文、UNSTRING文 |
| 43 | DELIMITER | 低頻度 | 予約語(句) | UNSTRING文のDELIMITER IN句で使用。実際の区切り文字を格納。 | PROCEDURE DIVISION | UNSTRING文 |
| 44 | DEPENDING | 高頻度 | 予約語(句) | OCCURS DEPENDING ON(可変長表)。GO TO DEPENDING ON(条件付制御移行)。 | DATA DIVISION, PROCEDURE DIVISION | OCCURS句、GO TO文 |
| 45 | DESCENDING | 低頻度 | 予約語(句) | SORT/MERGEの降順キー指定。OCCURSのDESCENDING KEY。 | PROCEDURE DIVISION, DATA DIVISION | SORT文、MERGE文、OCCURS句 |
| 46 | DISPLAY | 高頻度 | USAGE句 / 予約語(文) | USAGE DISPLAY(標準表示形式)。DISPLAY文(出力装置への転送)。`DISPLAY identifier UPON mnemonic-name WITH NO ADVANCING`| DATA DIVISION, PROCEDURE DIVISION | USAGE句、DISPLAY文(UPON/WITH NO ADVANCING |
| 46 | DISPLAY | 高頻度 | USAGE句 / 予約語(文) |USAGE DISPLAY(標準表示形式)。DISPLAY文(出力装置への転送)。| DATA DIVISION, PROCEDURE DIVISION | USAGE句、DISPLAY文(UPON/WITH NO ADVANCING |
| 47 | DISPLAY-1 | 高頻度 | USAGE句 | DBCSデータの内部表現。USAGE DISPLAY-1は2バイトDBCS文字用。 | DATA DIVISION | USAGE句 |
| 48 | DIVIDE | 高頻度 | 予約語(文) | 除算。商と余りを計算。`DIVIDE identifier INTO identifier [REMAINDER identifier]`| PROCEDURE DIVISION | DIVIDE文(INTO/BY/GIVING/REMAINDER/ROUNDED |
| 48 | DIVIDE | 高頻度 | 予約語(文) |除算。商と余りを計算。| PROCEDURE DIVISION | DIVIDE文(INTO/BY/GIVING/REMAINDER/ROUNDED |
| 49 | DIVISION | 高頻度 | 予約語 | IDENTIFICATION/ENVIRONMENT/DATA/PROCEDURE各DIVISIONヘッダで使用。 | 各DIVISIONヘッダ | 区分ヘッダ |
| 50 | DOWN | 高頻度 | 予約語(句) | SET文の索引値減少。`SET index-name DOWN BY integer`| PROCEDURE DIVISION | SET文 |
| 50 | DOWN | 高頻度 | 予約語(句) |SET文の索引値減少。| PROCEDURE DIVISION | SET文 |
| 51 | DYNAMIC | 低頻度 | 予約語(句) | ACCESS MODE DYNAMIC(動的アクセスモード)。 | ENVIRONMENT DIVISION, FILE-CONTROL | ACCESS MODE句 |
### E
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 52 | EJECT | 高頻度 | 予約語(コンパイラ指示文) | ソース一覧の改ページ指示。`EJECT`| ソース記述 | EJECT文 |
| 53 | ELSE | 高頻度 | 予約語(句) | IF文の否定分岐。`IF condition THEN ... ELSE ... END-IF`条件付きコンパイルの>>ELSE。 | PROCEDURE DIVISION | IF文、条件付きコンパイル |
| 52 | EJECT | 高頻度 | 予約語(コンパイラ指示文) |ソース一覧の改ページ指示。| ソース記述 | EJECT文 |
| 53 | ELSE | 高頻度 | 予約語(句) |IF文の否定分岐。条件付きコンパイルの>>ELSE。| PROCEDURE DIVISION | IF文、条件付きコンパイル |
| 54 | END | 高頻度 | 予約語 | 各種END-xxx文の構成要素。END-IF, END-PERFORM, END-EVALUATE等。 | PROCEDURE DIVISION | END-xxxスコープターミネータ |
| 55 | END-ADD | 低頻度 | 予約語(スコープターミネータ) | ADD文の明示的終端。`END-ADD`| PROCEDURE DIVISION | ADD文 |
| 56 | END-CALL | 高頻度 | 予約語(スコープターミネータ) | CALL文の明示的終端。`END-CALL`| PROCEDURE DIVISION | CALL文 |
| 57 | END-COMPUTE | 高頻度 | 予約語(スコープターミネータ) | COMPUTE文の明示的終端。`END-COMPUTE`| PROCEDURE DIVISION | COMPUTE文 |
| 58 | END-DIVIDE | 低頻度 | 予約語(スコープターミネータ) | DIVIDE文の明示的終端。`END-DIVIDE`| PROCEDURE DIVISION | DIVIDE文 |
| 59 | END-EVALUATE | 高頻度 | 予約語(スコープターミネータ) | EVALUATE文の明示的終端。`END-EVALUATE`| PROCEDURE DIVISION | EVALUATE文 |
| 60 | END-EXEC | 高頻度 | 予約語 | EXEC SQL / EXEC CICSの終端。`END-EXEC.`| PROCEDURE DIVISION | EXEC SQL / EXEC CICS |
| 61 | END-IF | 高頻度 | 予約語(スコープターミネータ) | IF文の明示的終端。`END-IF`| PROCEDURE DIVISION | IF文 |
| 62 | END-PERFORM | 高頻度 | 予約語(スコープターミネータ) | インラインPERFORM文の明示的終端。`END-PERFORM`| PROCEDURE DIVISION | PERFORM文 |
| 63 | END-READ | 高頻度 | 予約語(スコープターミネータ) | READ文の明示的終端。`END-READ`| PROCEDURE DIVISION | READ文 |
| 64 | END-SEARCH | 高頻度 | 予約語(スコープターミネータ) | SEARCH文の明示的終端。`END-SEARCH`| PROCEDURE DIVISION | SEARCH文 |
| 65 | END-STRING | 低頻度 | 予約語(スコープターミネータ) | STRING文の明示的終端。`END-STRING`| PROCEDURE DIVISION | STRING文 |
| 66 | END-SUBTRACT | 低頻度 | 予約語(スコープターミネータ) | SUBTRACT文の明示的終端。`END-SUBTRACT`| PROCEDURE DIVISION | SUBTRACT文 |
| 67 | END-UNSTRING | 低頻度 | 予約語(スコープターミネータ) | UNSTRING文の明示的終端。`END-UNSTRING`| PROCEDURE DIVISION | UNSTRING文 |
| 55 | END-ADD | 低頻度 | 予約語(スコープターミネータ) |ADD文の明示的終端。| PROCEDURE DIVISION | ADD文 |
| 56 | END-CALL | 高頻度 | 予約語(スコープターミネータ) |CALL文の明示的終端。| PROCEDURE DIVISION | CALL文 |
| 57 | END-COMPUTE | 高頻度 | 予約語(スコープターミネータ) |COMPUTE文の明示的終端。| PROCEDURE DIVISION | COMPUTE文 |
| 58 | END-DIVIDE | 低頻度 | 予約語(スコープターミネータ) |DIVIDE文の明示的終端。| PROCEDURE DIVISION | DIVIDE文 |
| 59 | END-EVALUATE | 高頻度 | 予約語(スコープターミネータ) |EVALUATE文の明示的終端。| PROCEDURE DIVISION | EVALUATE文 |
| 60 | END-EXEC | 高頻度 | 予約語 |EXEC SQL / EXEC CICSの終端。| PROCEDURE DIVISION | EXEC SQL / EXEC CICS |
| 61 | END-IF | 高頻度 | 予約語(スコープターミネータ) |IF文の明示的終端。| PROCEDURE DIVISION | IF文 |
| 62 | END-PERFORM | 高頻度 | 予約語(スコープターミネータ) |インラインPERFORM文の明示的終端。| PROCEDURE DIVISION | PERFORM文 |
| 63 | END-READ | 高頻度 | 予約語(スコープターミネータ) |READ文の明示的終端。| PROCEDURE DIVISION | READ文 |
| 64 | END-SEARCH | 高頻度 | 予約語(スコープターミネータ) |SEARCH文の明示的終端。| PROCEDURE DIVISION | SEARCH文 |
| 65 | END-STRING | 低頻度 | 予約語(スコープターミネータ) |STRING文の明示的終端。| PROCEDURE DIVISION | STRING文 |
| 66 | END-SUBTRACT | 低頻度 | 予約語(スコープターミネータ) |SUBTRACT文の明示的終端。| PROCEDURE DIVISION | SUBTRACT文 |
| 67 | END-UNSTRING | 低頻度 | 予約語(スコープターミネータ) |UNSTRING文の明示的終端。| PROCEDURE DIVISION | UNSTRING文 |
| 68 | ENVIRONMENT | 高頻度 | 予約語(区分) | ENVIRONMENT DIVISIONヘッダ。環境区分の開始。 | ENVIRONMENT DIVISION | ENVIRONMENT DIVISION |
| 69 | ERROR | 高頻度 | 予約語(句) | 例外処理指定。SIZE ERROR句、ON ERROR句、USE AFTER ERROR。 | PROCEDURE DIVISION | ADD/COMPUTE等のSIZE ERROR句、CALL ON ERROR句、USE文 |
| 70 | EVALUATE | 高頻度 | 予約語(文) | 多分岐(COBOLのswitch/case相当)。`EVALUATE subject ALSO subject WHEN condition imperative END-EVALUATE`| PROCEDURE DIVISION | EVALUATE文(ALSO/WHEN/WHEN OTHER |
| 71 | EXEC | 高頻度 | 予約語 | EXEC SQL / EXEC CICSの開始。埋込みSQL/CICS文。2用法:`EXEC SQL ... END-EXEC`DB2アクセス)、`EXEC CICS ... END-EXEC`CICSオンラインコマンド)。 | PROCEDURE DIVISION | EXEC SQL文、EXEC CICS文 |
| 70 | EVALUATE | 高頻度 | 予約語(文) |多分岐(COBOLのswitch/case相当)。| PROCEDURE DIVISION | EVALUATE文(ALSO/WHEN/WHEN OTHER |
| 71 | EXEC | 高頻度 | 予約語 |EXEC SQL / EXEC CICSの開始。埋込みSQL/CICS文。2用法:DB2アクセス)、(CICSオンラインコマンド)。| PROCEDURE DIVISION | EXEC SQL文、EXEC CICS文 |
| 72 | EXCEPTION | 低頻度 | 予約語(句) | CALL文のON EXCEPTION句。USE AFTER EXCEPTION。 | PROCEDURE DIVISION | CALL文、USE文 |
| 73 | EXECUTE | 低頻度 | 予約語(文) | 他言語プログラム呼出し(非推奨/IBM拡張)。 | PROCEDURE DIVISION | EXECUTE文 |
| 74 | EXIT | 高頻度 | 予約語(文) | 手続きの共通終了点。6形態:`EXIT`(段落/節の共通終点。最も伝統的な用法)、`EXIT PROGRAM`(呼出元復帰)、`EXIT METHOD`(メソッド終了)、`EXIT PARAGRAPH`(段落終了)、`EXIT SECTION`(節終了)、`EXIT PERFORM [CYCLE]`PERFORM脱出)。 | PROCEDURE DIVISION | EXIT文, EXIT PROGRAM文, EXIT PARAGRAPH文, EXIT SECTION文, EXIT PERFORM文, EXIT METHOD文 |
| 74 | EXIT | 高頻度 | 予約語(文) |手続きの共通終了点。6形態:(段落/節の共通終点。最も伝統的な用法)、(呼出元復帰)、(メソッド終了)、(段落終了)、(節終了)、PERFORM脱出)。| PROCEDURE DIVISION | EXIT文, EXIT PROGRAM文, EXIT PARAGRAPH文, EXIT SECTION文, EXIT PERFORM文, EXIT METHOD文 |
### F
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 75 | FALSE | 低頻度 | 予約語(条件値) | 条件の偽値。SET condition-name TO FALSEの形で使用可能(ただしTRUEの方が一般的)。 | PROCEDURE DIVISION | SET文(条件名) |
| 76 | FD | 高頻度 | レベル指示子 | ファイル記述(File Description)のレベル指示子。DATA DIVISION FILE SECTIONでファイル構造を定義。`FD file-name ...`| DATA DIVISION, FILE SECTION | FD(ファイル記述) |
| 76 | FD | 高頻度 | レベル指示子 |ファイル記述(File Description)のレベル指示子。DATA DIVISION FILE SECTIONでファイル構造を定義。| DATA DIVISION, FILE SECTION | FD(ファイル記述) |
| 77 | FILE | 高頻度 | 予約語(節) | FILE SECTION(ファイル節)、FILE-CONTROL(ファイル制御段落)で使用。 | DATA DIVISION, ENVIRONMENT DIVISION | FILE SECTION、FILE-CONTROL |
| 78 | FILE-CONTROL | 高頻度 | 予約語(段落) | ENVIRONMENT DIVISIONのファイル制御段落。`FILE-CONTROL. SELECT ... ASSIGN ...`| ENVIRONMENT DIVISION, INPUT-OUTPUT SECTION | FILE-CONTROL段落 |
| 78 | FILE-CONTROL | 高頻度 | 予約語(段落) |ENVIRONMENT DIVISIONのファイル制御段落。| ENVIRONMENT DIVISION, INPUT-OUTPUT SECTION | FILE-CONTROL段落 |
| 79 | FILLER | 高頻度 | 予約語(データ名代替) | データ項目の未使用領域の定義。プログラムからは直接参照できない。 | DATA DIVISION | データ記述項目 |
| 80 | FIRST | 高頻度 | 予約語(句) | INSPECT文のFIRST指定(最初の出現のみ処理)。 | PROCEDURE DIVISION | INSPECT文 |
| 81 | FOR | 高頻度 | 予約語(句) | PERFORM VARYINGのFROM ... BY ... UNTIL ... の一部。PERFORM ... TIMESの一部。 | PROCEDURE DIVISION | PERFORM文 |
@@ -124,32 +118,32 @@
### G
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 83 | GET | 低頻度 | 予約語(句) | データ取得を示す予約語。COBOLファイル処理では主にREAD文を使用。GETは特定のIBM環境で使用。 | PROCEDURE DIVISION | — |
| 84 | GIVING | 高頻度 | 予約語(句) | ADD/DIVIDE/MULTIPLY/SUBTRACTのGIVING句(結果格納先指定)。SORT/MERGEのGIVING句(出力ファイル指定)。 | PROCEDURE DIVISION | ADD文、DIVIDE文、MULTIPLY文、SUBTRACT文、SORT文、MERGE文 |
| 85 | GO | 高頻度 | 予約語(文) | GO TO文(制御移行)。`GO TO procedure-name`| PROCEDURE DIVISION | GO TO文(DEPENDING ON |
| 86 | GOBACK | 高頻度 | 予約語(文) | プログラム/メソッドの論理的終了。呼出元に復帰。`GOBACK`サブプログラムの終了に推奨。 | PROCEDURE DIVISION | GOBACK文 |
| 87 | GREATER | 低頻度 | 予約語(関係演算子) | 関係条件の「大なり」。`IF A IS GREATER THAN B`START文のKEY IS GREATER THAN句。 | PROCEDURE DIVISION | 条件式、START文 |
| 85 | GO | 高頻度 | 予約語(文) |GO TO文(制御移行)。| PROCEDURE DIVISION | GO TO文(DEPENDING ON |
| 86 | GOBACK | 高頻度 | 予約語(文) |プログラム/メソッドの論理的終了。呼出元に復帰。サブプログラムの終了に推奨。| PROCEDURE DIVISION | GOBACK文 |
| 87 | GREATER | 低頻度 | 予約語(関係演算子) |関係条件の「大なり」。START文のKEY IS GREATER THAN句。| PROCEDURE DIVISION | 条件式、START文 |
### H
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 88 | HIGH-VALUE | 高頻度 | FIGURATIVE CONSTANT | 使用中の照合順序で最上位の文字。`HIGH-VALUE` / `HIGH-VALUES`| PROCEDURE DIVISION, DATA DIVISION | MOVE文、VALUE句、条件式 |
| 88 | HIGH-VALUE | 高頻度 | FIGURATIVE CONSTANT |使用中の照合順序で最上位の文字。 / 。| PROCEDURE DIVISION, DATA DIVISION | MOVE文、VALUE句、条件式 |
### I
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 89 | I-O-CONTROL | 高頻度 | 予約語(段落) | ENVIRONMENT DIVISIONの入出力制御段落。`I-O-CONTROL.` RERUN/SAME AREA/APPLY等。 | ENVIRONMENT DIVISION, INPUT-OUTPUT SECTION | I-O-CONTROL段落 |
| 89 | I-O-CONTROL | 高頻度 | 予約語(段落) |ENVIRONMENT DIVISIONの入出力制御段落。 RERUN/SAME AREA/APPLY等。| ENVIRONMENT DIVISION, INPUT-OUTPUT SECTION | I-O-CONTROL段落 |
| 90 | ID | 低頻度 | 予約語 | プログラム識別子の一部。PROGRAM-ID内で使用。 | IDENTIFICATION DIVISION | PROGRAM-ID段落 |
| 91 | IDENTIFICATION | 高頻度 | 予約語(区分) | IDENTIFICATION DIVISIONヘッダ。識別区分の開始。 | IDENTIFICATION DIVISION | IDENTIFICATION DIVISION |
| 92 | IF | 高頻度 | 予約語(文) | 条件分岐。`IF condition THEN statement-1 ELSE statement-2 END-IF`| PROCEDURE DIVISION | IF文(THEN/ELSE/END-IF |
| 92 | IF | 高頻度 | 予約語(文) |条件分岐。| PROCEDURE DIVISION | IF文(THEN/ELSE/END-IF |
| 93 | IN | 高頻度 | 予約語(句) | SEARCH IN/INTO句。関数の引数内のIN。COPY文のIN library-name。 | PROCEDURE DIVISION, DATA DIVISION | SEARCH文、COPY文 |
| 94 | INDEXED | 高頻度 | 予約語(句) | OCCURS INDEXED BY句(索引定義)。ファイルのORGANIZATION INDEXED。 | DATA DIVISION, ENVIRONMENT DIVISION | OCCURS句、ORGANIZATION句 |
| 95 | INITIAL | 低頻率 | 予約語(句) | PROGRAM-IDのINITIAL属性(プログラム呼出毎に初期化)。データ項目のINITIAL VALUE。 | IDENTIFICATION DIVISION, DATA DIVISION | PROGRAM-ID句、VALUE句 |
| 96 | INITIALIZE | 高頻度 | 予約語(文) | データ項目のカテゴリ別初期化。`INITIALIZE identifier [REPLACING category BY identifier]`| PROCEDURE DIVISION | INITIALIZE文(REPLACING/WITH FILLER/ALL |
| 96 | INITIALIZE | 高頻度 | 予約語(文) |データ項目のカテゴリ別初期化。| PROCEDURE DIVISION | INITIALIZE文(REPLACING/WITH FILLER/ALL |
| 97 | INPUT | 高頻度 | 予約語(句) | OPEN文の入力モード(OPEN INPUT)。INPUT-OUTPUT SECTION。INPUT PROCEDURESORT文)。 | PROCEDURE DIVISION, ENVIRONMENT DIVISION | OPEN文、SORT文、INPUT-OUTPUT SECTION |
| 98 | INPUT-OUTPUT | 高頻度 | 予約語(節) | ENVIRONMENT DIVISION INPUT-OUTPUT SECTION。 | ENVIRONMENT DIVISION | INPUT-OUTPUT SECTION |
| 99 | INSERT | 高頻度 | 予約語(コンパイラ指示文) | ソース一覧への行挿入(INSERT文)。EXEC SQLのINSERT文。 | ソース記述, PROCEDURE DIVISIONEXEC SQL内) | INSERT文(コンパイラ指示文)、SQL INSERT文 |
@@ -160,111 +154,111 @@
### K
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 104 | KEY | 高頻度 | 予約語(句) | レコードキー。RECORD KEY(主キー)、ALTERNATE RECORD KEY(代替キー)、RELATIVE KEY(相対キー)。ASCENDING/DESCENDING KEY(ソートキー)。 | ENVIRONMENT DIVISION, DATA DIVISION, PROCEDURE DIVISION | FILE-CONTROL句、OCCURS句、SORT文、SEARCH文 |
### L
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 105 | LABEL | 高頻度 | 予約語(句) | FDのLABEL RECORDS句。`LABEL RECORDS ARE STANDARD/OMITTED`| DATA DIVISION, FILE SECTION | FD句 |
| 106 | LENGTH | 高頻度 | 特殊レジスタ(LENGTH OF)/ 組み込み関数 | 特殊レジスタ`LENGTH OF data-name`でデータ項目のバイト長を返す。関数`FUNCTION LENGTH`で文字位置長を返す。 | PROCEDURE DIVISION | LENGTH OF特殊レジスタ、FUNCTION LENGTH |
| 107 | LINKAGE | 高頻度 | 予約語(節) | LINKAGE SECTION。他プログラムから受け渡されるデータの定義。`LINKAGE SECTION.`| DATA DIVISION | LINKAGE SECTION |
| 108 | LOW-VALUE | 高頻度 | FIGURATIVE CONSTANT | 使用中の照合順序で最下位の文字。`LOW-VALUE` / `LOW-VALUES`| PROCEDURE DIVISION, DATA DIVISION | MOVE文、VALUE句、条件式 |
| 105 | LABEL | 高頻度 | 予約語(句) |FDのLABEL RECORDS句。| DATA DIVISION, FILE SECTION | FD句 |
| 106 | LENGTH | 高頻度 | 特殊レジスタ(LENGTH OF)/ 組み込み関数 |特殊レジスタでデータ項目のバイト長を返す。関数で文字位置長を返す。| PROCEDURE DIVISION | LENGTH OF特殊レジスタ、FUNCTION LENGTH |
| 107 | LINKAGE | 高頻度 | 予約語(節) |LINKAGE SECTION。他プログラムから受け渡されるデータの定義。| DATA DIVISION | LINKAGE SECTION |
| 108 | LOW-VALUE | 高頻度 | FIGURATIVE CONSTANT |使用中の照合順序で最下位の文字。 / 。| PROCEDURE DIVISION, DATA DIVISION | MOVE文、VALUE句、条件式 |
### M
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 109 | MODE | 高頻度 | 予約語(句) | ACCESS MODE句。RECORDING MODE句(F/V/U/S)。 | ENVIRONMENT DIVISION, DATA DIVISION | FILE-CONTROL句、FD句 |
| 110 | MOVE | 高頻度 | 予約語(文) | 代入。基本項目移動、グループ移動、編集。`MOVE identifier TO identifier` / `MOVE CORRESPONDING`| PROCEDURE DIVISION | MOVE文(TO/CORRESPONDING |
| 111 | MULTIPLY | 低頻度 | 予約語(文) | 乗算。`MULTIPLY identifier BY identifier [ROUNDED] [GIVING identifier]`| PROCEDURE DIVISION | MULTIPLY文(BY/GIVING/ROUNDED |
| 110 | MOVE | 高頻度 | 予約語(文) |代入。基本項目移動、グループ移動、編集。 / 。| PROCEDURE DIVISION | MOVE文(TO/CORRESPONDING |
| 111 | MULTIPLY | 低頻度 | 予約語(文) |乗算。| PROCEDURE DIVISION | MULTIPLY文(BY/GIVING/ROUNDED |
### N
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 112 | NEXT | 低頻度 | 予約語(句) | NEXT SENTENCE文(旧式の次文へ移動)。READ NEXT RECORD(順次読込み)。 | PROCEDURE DIVISION | READ文、NEXT SENTENCE文 |
| 113 | NOT | 高頻度 | 予約語(論理演算子) | 否定条件。`IF NOT condition`NOT ON ERROR / NOT AT END / NOT ON OVERFLOW等。 | PROCEDURE DIVISION | 条件式、例外処理句 |
| 113 | NOT | 高頻度 | 予約語(論理演算子) |否定条件。NOT ON ERROR / NOT AT END / NOT ON OVERFLOW等。| PROCEDURE DIVISION | 条件式、例外処理句 |
| 114 | NUMERIC | 高頻度 | 予約語(クラス条件) | クラス条件で使用。数字(0-9, 符号, 小数点)のみで構成されているかの判定。 | PROCEDURE DIVISION | クラス条件 |
### O
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 115 | OBJECT-COMPUTER | 高頻度 | 予約語(段落) | ENVIRONMENT DIVISIONの目的計算機段落。`OBJECT-COMPUTER. computer-name MEMORY SIZE ...`| ENVIRONMENT DIVISION, CONFIGURATION SECTION | OBJECT-COMPUTER段落 |
| 116 | OCCURS | 高頻度 | 予約語(句) | 表定義(配列)。固定長/可変長/無制限。`OCCURS integer TIMES` / `OCCURS DEPENDING ON`| DATA DIVISION | OCCURS句 |
| 115 | OBJECT-COMPUTER | 高頻度 | 予約語(段落) |ENVIRONMENT DIVISIONの目的計算機段落。| ENVIRONMENT DIVISION, CONFIGURATION SECTION | OBJECT-COMPUTER段落 |
| 116 | OCCURS | 高頻度 | 予約語(句) |表定義(配列)。固定長/可変長/無制限。 / 。| DATA DIVISION | OCCURS句 |
| 117 | OF | 高頻度 | 予約語(句) | 修飾(data-name OF group-name)。ADDRESS OF特殊レジスタ。LENGTH OF特殊レジスタ。 | PROCEDURE DIVISION, DATA DIVISION | データ参照修飾、特殊レジスタ |
| 118 | OMITTED | 低頻度 | 予約語(句) | CALL文の引数省略。`CALL prog USING OMITTED`IS OMITTED条件(省略引数条件)。 | PROCEDURE DIVISION | CALL文、条件式 |
| 118 | OMITTED | 低頻度 | 予約語(句) |CALL文の引数省略。IS OMITTED条件(省略引数条件)。| PROCEDURE DIVISION | CALL文、条件式 |
| 119 | ON | 高頻度 | 予約語(句) | 例外処理句(ON SIZE ERROR, ON EXCEPTION等)。OCCURS DEPENDING ON。SORT ON ASCENDING/DESCENDING KEY。 | PROCEDURE DIVISION, DATA DIVISION | 各種例外処理句、OCCURS句、SORT文 |
| 120 | OPEN | 高頻度 | 予約語(文) | ファイルのオープン。`OPEN INPUT/OUTPUT/I-O/EXTEND file-name`| PROCEDURE DIVISION | OPEN文(INPUT/OUTPUT/I-O/EXTEND/WITH NO REWIND |
| 120 | OPEN | 高頻度 | 予約語(文) |ファイルのオープン。| PROCEDURE DIVISION | OPEN文(INPUT/OUTPUT/I-O/EXTEND/WITH NO REWIND |
| 121 | OPTIONS | 低頻率 | 予約語(句) | コンパイラオプションの指定に関連。CBL/PROCESS文中。 | ソース記述 | CBL文、PROCESS文 |
| 122 | OR | 高頻度 | 予約語(論理演算子) | 複合条件の論理和(OR条件)。UNSTRING文のDELIMITED BY ... OR ...。 | PROCEDURE DIVISION | 条件式、UNSTRING文 |
| 123 | ORDER | 高頻度 | 予約語(句) | SORT文のDUPLICATES IN ORDER。特殊な整列順序指定。 | PROCEDURE DIVISION | SORT文 |
| 124 | ORGANIZATION | 低頻度 | 予約語(句) | ファイル編成の指定。`ORGANIZATION IS SEQUENTIAL/INDEXED/RELATIVE`| ENVIRONMENT DIVISION, FILE-CONTROL | ORGANIZATION句 |
| 124 | ORGANIZATION | 低頻度 | 予約語(句) |ファイル編成の指定。| ENVIRONMENT DIVISION, FILE-CONTROL | ORGANIZATION句 |
| 125 | OTHER | 高頻度 | 予約語(句) | EVALUATE文のWHEN OTHER句(デフォルト分岐)。 | PROCEDURE DIVISION | EVALUATE文 |
| 126 | OUTPUT | 高頻度 | 予約語(句) | OPEN文の出力モード(OPEN OUTPUT)。OUTPUT PROCEDURESORT文)。 | PROCEDURE DIVISION | OPEN文、SORT文 |
### P
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 127 | PACKED-DECIMAL | 高頻度 | USAGE句 | パック10進形式。COMP-3と同義。`USAGE PACKED-DECIMAL`| DATA DIVISION | USAGE句 |
| 127 | PACKED-DECIMAL | 高頻度 | USAGE句 |パック10進形式。COMP-3と同義。| DATA DIVISION | USAGE句 |
| 128 | PAGE | 高頻度 | 予約語(句) | WRITE文のAFTER/BEFORE ADVANCING PAGE。FDのLINAGE句(PAGE FOOTING等)。 | PROCEDURE DIVISION, DATA DIVISION | WRITE文、FD句 |
| 129 | PAGE-COUNTER | 高頻度 | 特殊レジスタ | ページ番号を保持する特殊レジスタ。FDのLINAGE句使用時に生成。 | PROCEDURE DIVISION | 特殊レジスタ |
| 130 | PERFORM | 高頻度 | 予約語(文) | 繰り返し処理。6形態:基本(外部段落呼出)、回数指定(TIMES)、条件指定(UNTIL)、変数変化付(VARYING ... FROM ... BY ... UNTIL ... [AFTER ...])、インライン(END-PERFORM)、TEST BEFORE/TEST AFTER。 | PROCEDURE DIVISION | PERFORM文(外部段落/THRU/TIMES/UNTIL/VARYING/AFTER/インライン/TEST BEFORE/AFTER |
| 131 | PIC | 高頻度 | 予約語(句) | PICTURE句の短縮形。データ項目の特性と編集要件を指定。`PIC X(10).`| DATA DIVISION | PICTURE句 |
| 131 | PIC | 高頻度 | 予約語(句) |PICTURE句の短縮形。データ項目の特性と編集要件を指定。| DATA DIVISION | PICTURE句 |
| 132 | POINTER | 高頻度 | USAGE句 / 予約語 | USAGE POINTER(アドレスポインタ)。STRING/UNSTRING文のWITH POINTER句。 | DATA DIVISION, PROCEDURE DIVISION | USAGE句、STRING文、UNSTRING文 |
| 133 | PROCEDURE | 高頻度 | 予約語(区分) | PROCEDURE DIVISION。手続き区分の開始。`PROCEDURE DIVISION USING ... RETURNING ...`| PROCEDURE DIVISION | PROCEDURE DIVISION |
| 134 | PROGRAM-ID | 高頻度 | 予約語(段落) | IDENTIFICATION DIVISIONのプログラム識別段落。`PROGRAM-ID. program-name [INITIAL] [GLOBAL]`| IDENTIFICATION DIVISION | PROGRAM-ID段落 |
| 133 | PROCEDURE | 高頻度 | 予約語(区分) |PROCEDURE DIVISION。手続き区分の開始。| PROCEDURE DIVISION | PROCEDURE DIVISION |
| 134 | PROGRAM-ID | 高頻度 | 予約語(段落) |IDENTIFICATION DIVISIONのプログラム識別段落。| IDENTIFICATION DIVISION | PROGRAM-ID段落 |
### R
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 135 | RANDOM | 低頻度 | 予約語(句) | ACCESS MODE RANDOM(ランダムアクセスモード)。 | ENVIRONMENT DIVISION, FILE-CONTROL | ACCESS MODE句 |
| 136 | READ | 高頻度 | 予約語(文) | ファイルからの読込。`READ file-name [INTO identifier] [KEY IS data-name] [AT END imperative]`| PROCEDURE DIVISION | READ文(INTO/KEY IS/AT END/NEXT/PREVIOUS/NOT AT END/WITH WAIT/LOCK/IGNORE LOCK |
| 136 | READ | 高頻度 | 予約語(文) |ファイルからの読込。| PROCEDURE DIVISION | READ文(INTO/KEY IS/AT END/NEXT/PREVIOUS/NOT AT END/WITH WAIT/LOCK/IGNORE LOCK |
| 137 | RECORD | 高頻度 | 予約語(句) | FDのRECORD CONTAINS句。RECORD KEY句。DELETE/Rewrite文のRECORD句。 | DATA DIVISION, ENVIRONMENT DIVISION, PROCEDURE DIVISION | FD句、FILE-CONTROL句、DELETE文、REWRITE文 |
| 138 | RECORDING | 高頻度 | 予約語(句) | FDのRECORDING MODE句(F固定/V可変/U不定/Sスパン)。 | DATA DIVISION, FILE SECTION | FD句 |
| 139 | RECORDS | 高頻度 | 予約語(句) | BLOCK CONTAINS ... RECORDS。LABEL RECORDS句。 | DATA DIVISION, FILE SECTION | FD句 |
| 140 | REDEFINES | 高頻度 | 予約語(句) | 同一ストレージ領域の再定義。`level-number data-name REDEFINES data-name ...`| DATA DIVISION | REDEFINES句 |
| 141 | REMAINDER | 高頻度 | 予約語(句) | DIVIDE文の余り格納指定。`DIVIDE ... [REMAINDER identifier]`| PROCEDURE DIVISION | DIVIDE文 |
| 140 | REDEFINES | 高頻度 | 予約語(句) |同一ストレージ領域の再定義。| DATA DIVISION | REDEFINES句 |
| 141 | REMAINDER | 高頻度 | 予約語(句) |DIVIDE文の余り格納指定。| PROCEDURE DIVISION | DIVIDE文 |
| 142 | REMOVAL | 高頻度 | 予約語(句) | CLOSE文のFOR REMOVAL句(テープファイルのリール取外し)。 | PROCEDURE DIVISION | CLOSE文 |
| 143 | REPLACING | 高頻度 | 予約語(句) | COPY文の疑似テキスト置換。INSPECT文の文字置換。INITIALIZE文のREPLACING句。 | ソース記述, PROCEDURE DIVISION | COPY文、INSPECT文、INITIALIZE文 |
| 144 | RERUN | 低頻度 | 予約語(句) | I-O-CONTROL段落のチェックポイント指定。`RERUN ON assignment-name EVERY integer RECORDS`| ENVIRONMENT DIVISION, I-O-CONTROL | I-O-CONTROL段落 |
| 145 | RETURN-CODE | 高頻度 | 特殊レジスタ | 呼出元へのリターンコード。PIC S9(4) BINARY GLOBAL。`MOVE n TO RETURN-CODE`| PROCEDURE DIVISION | 特殊レジスタ |
| 144 | RERUN | 低頻度 | 予約語(句) |I-O-CONTROL段落のチェックポイント指定。| ENVIRONMENT DIVISION, I-O-CONTROL | I-O-CONTROL段落 |
| 145 | RETURN-CODE | 高頻度 | 特殊レジスタ |呼出元へのリターンコード。PIC S9(4) BINARY GLOBAL。| PROCEDURE DIVISION | 特殊レジスタ |
| 146 | ROUNDED | 高頻度 | 予約語(句) | 算術演算の丸め指定。ADD/DIVIDE/MULTIPLY/SUBTRACT/COMPUTE文の[ROUNDED]句。 | PROCEDURE DIVISION | ADD文、DIVIDE文、MULTIPLY文、SUBTRACT文、COMPUTE文 |
| 147 | RUN | 高頻度 | 予約語(句) | STOP RUN文(プログラム終了、制御をOSに戻す)。 | PROCEDURE DIVISION | STOP RUN文 |
### S
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 148 | SEARCH | 高頻度 | 予約語(文) | 内部表の探索。シリアルサーチ(SEARCH)とバイナリサーチ(SEARCH ALL)。`SEARCH table-name [VARYING index-name] AT END imperative WHEN condition`| PROCEDURE DIVISION | SEARCH文(ALL/VARYING/AT END/WHEN |
| 149 | SECTION | 高頻度 | 予約語(節) | 節の定義。`section-name SECTION.`各DIVISION内の節区切り。 | PROCEDURE DIVISION, DATA DIVISION, ENVIRONMENT DIVISION | SECTION |
| 150 | SELECT | 高頻度 | 予約語(句) | ファイル宣言。`SELECT file-name ASSIGN TO assignment-name ...`EXEC SQL内のSELECT文(問合せ)。 | ENVIRONMENT DIVISION, PROCEDURE DIVISIONSQL内) | FILE-CONTROL段落、SQL SELECT文 |
| 148 | SEARCH | 高頻度 | 予約語(文) |内部表の探索。シリアルサーチ(SEARCH)とバイナリサーチ(SEARCH ALL)。| PROCEDURE DIVISION | SEARCH文(ALL/VARYING/AT END/WHEN |
| 149 | SECTION | 高頻度 | 予約語(節) |節の定義。各DIVISION内の節区切り。| PROCEDURE DIVISION, DATA DIVISION, ENVIRONMENT DIVISION | SECTION |
| 150 | SELECT | 高頻度 | 予約語(句) |ファイル宣言。EXEC SQL内のSELECT文(問合せ)。| ENVIRONMENT DIVISION, PROCEDURE DIVISIONSQL内) | FILE-CONTROL段落、SQL SELECT文 |
| 151 | SENTENCE | 低頻度 | 予約語 | NEXT SENTENCE文(旧式COBOL)。区切りピリオドで終わる文の単位。 | PROCEDURE DIVISION | — |
| 152 | SET | 高頻度 | 予約語(文) | インデックス/アドレス/条件名/ポインタの設定。`SET index-name UP BY integer` / `SET condition-name TO TRUE`| PROCEDURE DIVISION | SET文(TO TRUE/FALSE/UP BY/DOWN BY/TO ADDRESS |
| 152 | SET | 高頻度 | 予約語(文) |インデックス/アドレス/条件名/ポインタの設定。 / 。| PROCEDURE DIVISION | SET文(TO TRUE/FALSE/UP BY/DOWN BY/TO ADDRESS |
| 153 | SHIFT-IN | 低頻度 | 特殊レジスタ | EBCDIC DBCSのシフトイン制御文字。PIC X(1) DISPLAY。 | PROCEDURE DIVISION | 特殊レジスタ |
| 154 | SHIFT-OUT | 低頻度 | 特殊レジスタ | EBCDIC DBCSのシフトアウト制御文字。PIC X(1) DISPLAY。 | PROCEDURE DIVISION | 特殊レジスタ |
| 155 | SIZE | 高頻度 | 予約語(句) | 算術演算のSIZE ERROR句。OBJECT-COMPUTERのMEMORY SIZE句。 | PROCEDURE DIVISION, ENVIRONMENT DIVISION | ADD/COMPUTE等のON SIZE ERROR句、OBJECT-COMPUTER段落 |
| 156 | SKIP2 | 高頻度 | 予約語(コンパイラ指示文) | ソース一覧で2行送り。`SKIP2`SKIP1/SKIP2/SKIP3)。 | ソース記述 | SKIP文 |
| 157 | SOURCE-COMPUTER | 高頻度 | 予約語(段落) | ENVIRONMENT DIVISIONの元源計算機段落。`SOURCE-COMPUTER. computer-name [WITH DEBUGGING MODE]`| ENVIRONMENT DIVISION, CONFIGURATION SECTION | SOURCE-COMPUTER段落 |
| 158 | SPACE | 高頻度 | FIGURATIVE CONSTANT / 予約語 | FIGURATIVE CONSTANTとして1つ以上のブランク(空白)。`SPACE` / `SPACES`| PROCEDURE DIVISION, DATA DIVISION | MOVE文、VALUE句、条件式 |
| 159 | SPACES | 低頻度 | FIGURATIVE CONSTANT | SPACEの複数形(同義)。`SPACES`| PROCEDURE DIVISION, DATA DIVISION | MOVE文、VALUE句、条件式 |
| 160 | SQL | 高頻度 | 予約語 | EXEC SQL(埋込みSQL)の開始を示す。`EXEC SQL ... END-EXEC.`| PROCEDURE DIVISION | EXEC SQL文 |
| 156 | SKIP2 | 高頻度 | 予約語(コンパイラ指示文) |ソース一覧で2行送り。(SKIP1/SKIP2/SKIP3)。| ソース記述 | SKIP文 |
| 157 | SOURCE-COMPUTER | 高頻度 | 予約語(段落) |ENVIRONMENT DIVISIONの元源計算機段落。| ENVIRONMENT DIVISION, CONFIGURATION SECTION | SOURCE-COMPUTER段落 |
| 158 | SPACE | 高頻度 | FIGURATIVE CONSTANT / 予約語 |FIGURATIVE CONSTANTとして1つ以上のブランク(空白)。 / 。| PROCEDURE DIVISION, DATA DIVISION | MOVE文、VALUE句、条件式 |
| 159 | SPACES | 低頻度 | FIGURATIVE CONSTANT |SPACEの複数形(同義)。| PROCEDURE DIVISION, DATA DIVISION | MOVE文、VALUE句、条件式 |
| 160 | SQL | 高頻度 | 予約語 |EXEC SQL(埋込みSQL)の開始を示す。| PROCEDURE DIVISION | EXEC SQL文 |
| 161 | STANDARD | 高頻度 | 予約語(句) | LABEL RECORDS ARE STANDARD。RECORD DELIMITER IS STANDARD-1。標準ラベル/標準区切り。 | DATA DIVISION, ENVIRONMENT DIVISION | FD句、FILE-CONTROL句 |
| 162 | STOP | 高頻度 | 予約語(文) | 実行停止。`STOP RUN`(プログラム終了)。`STOP literal`(一時停止)。 | PROCEDURE DIVISION | STOP文(RUN/literal |
| 163 | STRING | 高頻度 | 予約語(文) | 文字列の連結。`STRING identifier DELIMITED BY identifier/literal/SIZE INTO identifier [WITH POINTER]`| PROCEDURE DIVISION | STRING文(DELIMITED BY/INTO/POINTER/ON OVERFLOW |
| 164 | SUBTRACT | 高頻度 | 予約語(文) | 減算。`SUBTRACT identifier FROM identifier [ROUNDED]` / `SUBTRACT CORRESPONDING`| PROCEDURE DIVISION | SUBTRACT文(FROM/GIVING/CORRESPONDING/ROUNDED |
| 162 | STOP | 高頻度 | 予約語(文) |実行停止。(プログラム終了)。(一時停止)。| PROCEDURE DIVISION | STOP文(RUN/literal |
| 163 | STRING | 高頻度 | 予約語(文) |文字列の連結。| PROCEDURE DIVISION | STRING文(DELIMITED BY/INTO/POINTER/ON OVERFLOW |
| 164 | SUBTRACT | 高頻度 | 予約語(文) |減算。 / 。| PROCEDURE DIVISION | SUBTRACT文(FROM/GIVING/CORRESPONDING/ROUNDED |
### T
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 165 | TABLE | 高頻度 | 予約語(句) | SEARCH文の探索対象(内部表)。OCCURSで定義された表データ。 | PROCEDURE DIVISION, DATA DIVISION | SEARCH文、OCCURS句 |
| 166 | TALLYING | 低頻度 | 予約語(句) | INSPECT文の計数指定。`INSPECT identifier TALLYING count FOR CHARACTERS/ALL/LEADING`UNSTRING文のTALLYING IN句。 | PROCEDURE DIVISION | INSPECT文、UNSTRING文 |
| 166 | TALLYING | 低頻度 | 予約語(句) |INSPECT文の計数指定。UNSTRING文のTALLYING IN句。| PROCEDURE DIVISION | INSPECT文、UNSTRING文 |
| 167 | TEST | 低頻度 | 予約語(句) | PERFORM文のTEST BEFORE/TEST AFTER(条件判定のタイミング指定)。 | PROCEDURE DIVISION | PERFORM文 |
| 168 | THEN | 高頻度 | 予約語(句) | IF文のTHEN(条件成立時の処理)。EVALUATE文のWHEN ... THEN。 | PROCEDURE DIVISION | IF文、EVALUATE文 |
| 169 | THRU | 高頻度 | 予約語(句) | 範囲指定。VALUE句のTHRU(値の範囲)。PERFORM THRU(段落範囲)。 | DATA DIVISION, PROCEDURE DIVISION | VALUE句、PERFORM文 |
@@ -272,61 +266,61 @@
| 171 | TIMES | 高頻度 | 予約語(句) | PERFORM文の回数指定。OCCURS TIMES(表の要素数)。 | PROCEDURE DIVISION, DATA DIVISION | PERFORM文、OCCURS句 |
| 172 | TO | 高頻度 | 予約語(句) | 代入先指定(MOVE ... TO ...)。範囲指定(FROM ... TO ...)。PERFORM VARYING FROM ... TO ...。 | PROCEDURE DIVISION, DATA DIVISION | MOVE文、ADD文、PERFORM文、VALUE句 |
| 173 | TRUE | 高頻度 | 予約語(条件値) | 条件の真値。SET condition-name TO TRUE。EVALUATE文のTRUE条件。 | PROCEDURE DIVISION | SET文(条件名)、EVALUATE文 |
| 174 | TYPE | 低頻度 | 予約語(句) | ユーザ定義型(TYPEDEF/TYPE句)。`TYPE type-name`で定義済み型を参照。 | DATA DIVISION | TYPE句、TYPEDEF句 |
| 174 | TYPE | 低頻度 | 予約語(句) |ユーザ定義型(TYPEDEF/TYPE句)。で定義済み型を参照。| DATA DIVISION | TYPE句、TYPEDEF句 |
### U
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 175 | UNSTRING | 低頻度 | 予約語(文) | 文字列の分解。`UNSTRING identifier DELIMITED BY identifier INTO identifier [WITH POINTER] [TALLYING]`| PROCEDURE DIVISION | UNSTRING文(DELIMITED BY/INTO/POINTER/TALLYING/DELIMITER IN |
| 175 | UNSTRING | 低頻度 | 予約語(文) |文字列の分解。| PROCEDURE DIVISION | UNSTRING文(DELIMITED BY/INTO/POINTER/TALLYING/DELIMITER IN |
| 176 | UNTIL | 高頻度 | 予約語(句) | PERFORM UNTIL(条件成立まで繰返し)。PERFORM VARYING UNTIL。 | PROCEDURE DIVISION | PERFORM文 |
| 177 | UP | 高頻度 | 予約語(句) | SET文の索引値増加。`SET index-name UP BY integer`| PROCEDURE DIVISION | SET文 |
| 178 | UPON | 高頻度 | 予約語(句) | DISPLAY文の出力先指定。`DISPLAY ... UPON mnemonic-name`| PROCEDURE DIVISION | DISPLAY文 |
| 179 | USAGE | 高頻度 | 予約語(句) | データ項目の内部表現指定。`USAGE DISPLAY/COMP/COMP-3/BINARY/POINTER/INDEX/NATIONAL`| DATA DIVISION | USAGE句 |
| 180 | USE | 低頻度 | 予約語(文) | 例外処理・デバッグ宣言。`USE AFTER EXCEPTION/ERROR ON file-name` / `USE FOR DEBUGGING`| PROCEDURE DIVISIONDECLARATIVES内) | USE文 |
| 177 | UP | 高頻度 | 予約語(句) |SET文の索引値増加。| PROCEDURE DIVISION | SET文 |
| 178 | UPON | 高頻度 | 予約語(句) |DISPLAY文の出力先指定。| PROCEDURE DIVISION | DISPLAY文 |
| 179 | USAGE | 高頻度 | 予約語(句) |データ項目の内部表現指定。| DATA DIVISION | USAGE句 |
| 180 | USE | 低頻度 | 予約語(文) |例外処理・デバッグ宣言。 / 。| PROCEDURE DIVISIONDECLARATIVES内) | USE文 |
| 181 | USING | 高頻度 | 予約語(句) | PROCEDURE DIVISION USING(引数定義)。CALL文のUSING(引数渡し)。SORT文のUSING(入力ファイル)。 | PROCEDURE DIVISION, DATA DIVISION | PROCEDURE DIVISIONヘッダ、CALL文、SORT文 |
### V
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 182 | VALUE | 高頻度 | 予約語(句) | データ項目の初期値指定。`VALUE literal` / `VALUE IS literal`。88条件名の値定義。 | DATA DIVISION | VALUE句 |
| 182 | VALUE | 高頻度 | 予約語(句) |データ項目の初期値指定。 / 。88条件名の値定義。| DATA DIVISION | VALUE句 |
| 183 | VALUES | 高頻度 | 予約語(句) | VALUE句の複数形(88条件名の複数値指定)。 | DATA DIVISION | VALUE句(88レベル) |
| 184 | VARYING | 高頻度 | 予約語(句) | PERFORM VARYING(変数変化付繰返し)。SEARCH VARYING(探索時索引変更)。 | PROCEDURE DIVISION | PERFORM文、SEARCH文 |
### W
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 185 | WHEN | 高頻度 | 予約語(句) | EVALUATE文のWHEN条件。SEARCH文のWHEN条件。 | PROCEDURE DIVISION | EVALUATE文、SEARCH文 |
| 186 | WHEN-COMPILED | 高頻度 | 特殊レジスタ / 組み込み関数 | コンパイル開始日時。PIC X(16) DISPLAYMM/DD/YYhh.mm.ss)。関数`FUNCTION WHEN-COMPILED`はYYYYMMDDhhmmsshh+00形式。 | PROCEDURE DIVISION | 特殊レジスタ、FUNCTION WHEN-COMPILED |
| 186 | WHEN-COMPILED | 高頻度 | 特殊レジスタ / 組み込み関数 |コンパイル開始日時。PIC X(16) DISPLAYMM/DD/YYhh.mm.ss)。関数はYYYYMMDDhhmmsshh+00形式。| PROCEDURE DIVISION | 特殊レジスタ、FUNCTION WHEN-COMPILED |
| 187 | WITH | 高頻度 | 予約語(句) | OPEN WITH NO REWIND。CLOSE WITH LOCK。DISPLAY WITH NO ADVANCING。INITIALIZE WITH FILLER。SORT WITH DUPLICATES IN ORDER。 | PROCEDURE DIVISION, ENVIRONMENT DIVISION | OPEN文、CLOSE文、DISPLAY文、INITIALIZE文、SORT文 |
| 188 | WORKING-STORAGE | 高頻度 | 予約語(節) | WORKING-STORAGE SECTION。作業格納節。プログラムの内部データ領域。`WORKING-STORAGE SECTION.`| DATA DIVISION | WORKING-STORAGE SECTION |
| 189 | WRITE | 高頻度 | 予約語(文) | ファイルへの書出し。`WRITE record-name [FROM identifier] [AFTER/BEFORE ADVANCING PAGE/LINE identifier/literal] [END-OF-PAGE imperative] [INVALID KEY imperative]`FROM句(データ移動+書出)、ADVANCING句(改行/改ページ制御)、END-OF-PAGE句(ページ終了処理)。 | PROCEDURE DIVISION | WRITE文(FROM/ADVANCING/END-OF-PAGE/INVALID KEY |
| 188 | WORKING-STORAGE | 高頻度 | 予約語(節) |WORKING-STORAGE SECTION。作業格納節。プログラムの内部データ領域。| DATA DIVISION | WORKING-STORAGE SECTION |
| 189 | WRITE | 高頻度 | 予約語(文) |ファイルへの書出し。FROM句(データ移動+書出)、ADVANCING句(改行/改ページ制御)、END-OF-PAGE句(ページ終了処理)。| PROCEDURE DIVISION | WRITE文(FROM/ADVANCING/END-OF-PAGE/INVALID KEY |
| 190 | WRITE-ONLY | 高頻度 | 予約語(句) | I-O-CONTROL段落のAPPLY WRITE-ONLY句(書出し専用最適化)。 | ENVIRONMENT DIVISION, I-O-CONTROL | I-O-CONTROL段落 |
### Z
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 191 | ZERO | 高頻度 | FIGURATIVE CONSTANT | 数値0、または文字'0'の1回以上の出現。`ZERO` / `ZEROS` / `ZEROES`| PROCEDURE DIVISION, DATA DIVISION | MOVE文、VALUE句、条件式 |
| 192 | ZEROS | 高頻度 | FIGURATIVE CONSTANT | ZEROの複数形(同義)。`ZEROS`| PROCEDURE DIVISION, DATA DIVISION | MOVE文、VALUE句、条件式 |
| 191 | ZERO | 高頻度 | FIGURATIVE CONSTANT |数値0、文字'0'の1回以上の出現。| PROCEDURE DIVISION, DATA DIVISION | MOVE文、VALUE句、条件式 |
| 192 | ZEROS | 高頻度 | FIGURATIVE CONSTANT |ZEROの複数形(同義)。| PROCEDURE DIVISION, DATA DIVISION | MOVE文、VALUE句、条件式 |
### 補足:A-Z節に含まれない予約語(13語)
以下はIBM COBOL予約語一覧に含まれるが、上記A-Z節のアルファベット順一覧に記載されていないものを補足としてまとめる。
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 対応するCOBOL節/文 |
| # | キーワード | カテゴリ | 区分 | 説明 | 使用可能なコンテキスト | 構文形式一覧 |
|---|-----------|---------|------|------|---------------------|------------------|
| 193 | ALTER | 低頻度 | 予約語(文) | GO TO文の分岐先を実行時に変更(非推奨、COBOL 2002で削除)。`ALTER procedure-name TO PROCEED TO procedure-name`| PROCEDURE DIVISION | ALTER文(TO PROCEED TO |
| 194 | CANCEL | 高頻度 | 予約語(文) | プログラムの解放。`CANCEL program-name`次回CALL時に初期状態で再ロード。 | PROCEDURE DIVISION | CANCEL文(ON EXCEPTION/NOT ON EXCEPTION |
| 195 | ENTRY | 低頻度 | 予約語(文) | プログラム内の別エントリポイント定義。他言語からの呼出用。`ENTRY entry-name [USING data-name]`| PROCEDURE DIVISION | ENTRY文(USING |
| 196 | MERGE | 高頻度 | 予約語(文) | 2つ以上のファイルのマージ。`MERGE file-name ON ASCENDING/DESCENDING KEY data-name USING file1 file2 GIVING file3`| PROCEDURE DIVISION | MERGE文(ON KEY/USING/GIVING/OUTPUT PROCEDURE |
| 197 | RELEASE | 高頻度 | 予約語(文) | SORT文へのレコード引渡し(INPUT PROCEDURE内で使用)。`RELEASE record-name [FROM identifier]`| PROCEDURE DIVISIONSORT INPUT PROCEDURE内) | RELEASE文(FROM |
| 198 | RETURN | 高頻度 | 予約語(文) | SORT文からのレコード受取(OUTPUT PROCEDURE内で使用)。`RETURN file-name [INTO identifier] AT END imperative`| PROCEDURE DIVISIONSORT OUTPUT PROCEDURE内) | RETURN文(INTO/AT END/NOT AT END |
| 199 | REWRITE | 高頻度 | 予約語(文) | レコードの書換え(索引/相対ファイル)。`REWRITE record-name [FROM identifier] [INVALID KEY imperative]`| PROCEDURE DIVISION | REWRITE文(FROM/INVALID KEY |
| 200 | SORT | 高頻度 | 予約語(文) | ファイルの整列。`SORT file-name ON ASCENDING/DESCENDING KEY data-name [INPUT/USING] [OUTPUT/GIVING]`| PROCEDURE DIVISION | SORT文(ON KEY/USING/INPUT PROCEDURE/OUTPUT PROCEDURE/GIVING/DUPLICATES |
| 201 | START | 高頻度 | 予約語(文) | ファイルの開始位置指定(ランダム読込の基点設定)。`START file-name KEY IS condition [INVALID KEY imperative]`| PROCEDURE DIVISION | START文(KEY IS/INVALID KEY |
| 193 | ALTER | 低頻度 | 予約語(文) |GO TO文の分岐先を実行時に変更(非推奨、COBOL 2002で削除)。| PROCEDURE DIVISION | ALTER文(TO PROCEED TO |
| 194 | CANCEL | 高頻度 | 予約語(文) |プログラムの解放。次回CALL時に初期状態で再ロード。| PROCEDURE DIVISION | CANCEL文(ON EXCEPTION/NOT ON EXCEPTION |
| 195 | ENTRY | 低頻度 | 予約語(文) |プログラム内の別エントリポイント定義。他言語からの呼出用。| PROCEDURE DIVISION | ENTRY文(USING |
| 196 | MERGE | 高頻度 | 予約語(文) |2つ以上のファイルのマージ。| PROCEDURE DIVISION | MERGE文(ON KEY/USING/GIVING/OUTPUT PROCEDURE |
| 197 | RELEASE | 高頻度 | 予約語(文) |SORT文へのレコード引渡し(INPUT PROCEDURE内で使用)。| PROCEDURE DIVISIONSORT INPUT PROCEDURE内) | RELEASE文(FROM |
| 198 | RETURN | 高頻度 | 予約語(文) |SORT文からのレコード受取(OUTPUT PROCEDURE内で使用)。| PROCEDURE DIVISIONSORT OUTPUT PROCEDURE内) | RETURN文(INTO/AT END/NOT AT END |
| 199 | REWRITE | 高頻度 | 予約語(文) |レコードの書換え(索引/相対ファイル)。| PROCEDURE DIVISION | REWRITE文(FROM/INVALID KEY |
| 200 | SORT | 高頻度 | 予約語(文) |ファイルの整列。| PROCEDURE DIVISION | SORT文(ON KEY/USING/INPUT PROCEDURE/OUTPUT PROCEDURE/GIVING/DUPLICATES |
| 201 | START | 高頻度 | 予約語(文) |ファイルの開始位置指定(ランダム読込の基点設定)。| PROCEDURE DIVISION | START文(KEY IS/INVALID KEY |
| 202 | SAME | 高頻度 | 予約語(句) | レコード領域/ソート領域の共有指定。SAME RECORD AREA / SAME SORT AREA。 | ENVIRONMENT DIVISION, I-O-CONTROL | I-O-CONTROL段落
| 203 | FUNCTION | 高頻度 | 予約語(関数) | 組み込み関数の呼出。FUNCTION MOD, FUNCTION INTEGER-OF-DATE, FUNCTION NUMVAL, FUNCTION WHEN-COMPILED, FUNCTION TRIM, FUNCTION LENGTH等。 | PROCEDURE DIVISION | FUNCTION文(組み込み関数)
| 204 | BEFORE | 高頻度 | 予約語(句) | INSPECT文のBEFORE句、WRITE文のBEFORE ADVANCING句、PERFORM文のTEST BEFORE句。BEFORE identifier / BEFORE ADVANCING。 | PROCEDURE DIVISION | INSPECT文、WRITE文、PERFORM文
+144 -142
View File
@@ -2,7 +2,7 @@
> 本ファイルは全コードベース(KIN + ZAN + SUB)を統合したカバレッジ状況を集計する。
> 定義ファイル(COBOLキーワード網羅定義書.md)の ## 1.(予約語一覧)・## 2.(TYPE定義)を参照して集計する。
> 凡例:◎=使用済、○=使用あり(一部構文のみ)、×=未使用、△=調査中
> 凡例:◎=完全使用(全構文形式を使用)、△=一部使用(一部構文形式のみを使用)、×=未使用
---
@@ -19,7 +19,7 @@
| 05 | 振り分け(IF文) | 分支 | 全メインプログラム(12本) | ◎ |
| 06 | 振り分け(EVALUATE文) | 分支 | 12本中11本(KIN04/KIN06以外) | ◎ |
| 07 | キーブレイク(集計) | key切 | ZAN05CAL | ◎ |
| 08 | キーブレイク(集約) | key切 | ZAN05CAL | |
| 08 | キーブレイク(集約) | key切 | | × |
| 09 | DB更新 | 数据库 | KIN02UPD, ZAN06UPD | ◎ |
| 10 | 50分割 | 分割 | — | × |
| 11 | 25分割 | 分割 | — | × |
@@ -53,12 +53,9 @@
| 指標 | 値 |
|------|:----:|
| 全タイプ数 | 35 |
| ◎(使用 | 16 |
| ○(一部使用) | 1 |
| △(調査中) | 0 |
| ×(未使用) | 18 |
| ◎(使用) | 16 |
| ×(未使用) | 19 |
| カバレッジ率(◎/35 | 45.7% |
| カバレッジ率(◎+○/35 | 48.6% |
---
@@ -75,7 +72,7 @@
| 3 | N | ナショナル/DBCS文字 | × | 未使用 |
| 4 | 9 | 数字 | ◎ | PIC 9(1)~9(9) 全プログラム(カウンタ・フラグ・集計) |
| 5 | 9(m)V9(n) | 固定小数点数 | ◎ | PIC 9(4)V9(1)WRK-ACCUM-HOURS等) |
| 6 | S9(m)V9(n) | 符号付き固定小数点数 | | PIC S9(5)V9(1)ZAN03CHK |
| 6 | S9(m)V9(n) | 符号付き固定小数点数 | | PIC S9(5)V9(1)ZAN03CHK |
| 7 | S9(m)V9(n) COMP-3 | パック10進符号付き固定小数 | ◎ | PIC S9(7)V9(1) COMP-3DB-OVT-HOURS |
| 8 | S9(m) COMP-3 | パック10進符号付き整数 | ◎ | PIC S9(9) COMP-3CUN-*計数項目 計15変数) |
| 9 | S9(m) COMP | 2進符号付き整数 | ◎ | PIC S9(9) COMP(索引・カウンタ) |
@@ -106,69 +103,71 @@
## 3. 予約語カバレッジ一覧
> 全201予約語(COBOLキーワード網羅定義書.md Part1 192語 + 補足9語)をアルファベット順に一覧する。
> 凡例:◎=複数PGMで使用、○=単一PGMのみ、×=未使用
> 全205予約語(COBOLキーワード網羅定義書.md Part1 192語 + 補足13語)をアルファベット順に一覧する。
> 凡例:◎=全構文形式使用、△=一部構文形式使用、×=未使用
>
> 判定基準:定義書の「構文形式一覧」に記載された各形式がコードベースで使用されているかどうかで評価。
| No. | 予約語 | 使用状況 | 使用プログラム/備考 |
|:---:|--------|:-------:|-------------------|
| 1 | ACCEPT | | ACCEPT FROM COMMAND-LINE(KIN06CLD,KIN08DBU)、DATE/DAY/TIME系SUB01DAT委譲 |
| 2 | ACCESS | × | |
| 3 | ADD | ◎ | ADD TO/GIVING 全メインプログラム |
| 4 | AFTER | | WRITE AFTER ADVANCING(KIN09CSV)、INSPECT AFTER(KIN09CSV)、PERFORM VARYING AFTER(ZAN06UPD) |
| 5 | ALL | | SEARCH ALL(KIN03EXP,ZAN03CHK)、INSPECT ALL(ZAN01CHK) |
| 6 | ALPHABETIC | × | |
| 7 | ALPHABETIC-UPPER | × | |
| 8 | ALSO | | EVALUATE ALSO(11プログラム) |
| 9 | AND | ◎ | 条件式 全プログラム |
| 10 | ANY | × | |
| 11 | APPLY | × | |
| 12 | ASCENDING | ◎ | OCCURS ASCENDING KEY(KIN01INP,SUB04CHK)、SEARCH ALL |
| 1 | ACCEPT | | FROM COMMAND-LINEのみ(KIN06CLD,KIN09CSV)。FROM DATE/TIME/DAY未使用 |
| 2 | ACCESS | × | ACCESS MODE句未使用 |
| 3 | ADD | ◎ | ADD TO/GIVING/CORRESPONDING/ROUNDED 全メインプログラム |
| 4 | AFTER | | WRITE AFTER ADVANCING(KIN09CSV)、PERFORM TEST AFTER(ZAN06UPD)のみ。INSPECT AFTER未使用 |
| 5 | ALL | | SEARCH ALL(KIN03EXP,ZAN03CHK)、INSPECT REPLACING ALL(KIN08DBU,KIN09CSV)。FIGURATIVE CONSTANT(VALUE ALL)未使用 |
| 6 | ALPHABETIC | × | 未使用 |
| 7 | ALPHABETIC-UPPER | × | 未使用 |
| 8 | ALSO | × | EVALUATE ALSO未使用(全EVALUATEは単一条件式のみ) |
| 9 | AND | ◎ | 条件式AND 全プログラム |
| 10 | ANY | × | SEARCH ANY未使用 |
| 11 | APPLY | × | I-O-CONTROL段落未使用 |
| 12 | ASCENDING | ◎ | OCCURS ASCENDING KEY(KIN01INP,KIN03EXP,KIN06CLD,SUB04CHK,ZAN03CHK)、SEARCH ALL |
| 13 | ASSIGN | ◎ | SELECT ASSIGN TO 全プログラム |
| 14 | AT | | READ AT END、WRITE AT END-OF-PAGE、SEARCH AT END |
| 14 | AT | | READ AT END、SEARCH AT END使用。WRITE AT END-OF-PAGE未使用 |
| 15 | AUTHOR | ◎ | IDENTIFICATION DIVISION 全プログラム |
| 16 | BINARY | × | COMP使用、BINARY表記不使用 |
| 17 | BLOCK | ◎ | FD BLOCK CONTAINS 全ファイル入出力PGM |
| 18 | BY | | PERFORM VARYING BY、MULTIPLY BY、DIVIDE BYCALL BY REFERENCE |
| 19 | CALL | | CALL SUB01-05 全メインプログラム |
| 20 | CHARACTER | × | |
| 18 | BY | | PERFORM VARYING BY、MULTIPLY BY、DIVIDE BY使用。CALL BY REFERENCE/CONTENT/VALUE未使用 |
| 19 | CALL | | CALL USING使用。ON EXCEPTION/NOT ON EXCEPTION未使用 |
| 20 | CHARACTER | × | OBJECT-COMPUTER未使用 |
| 21 | CHARACTERS | ◎ | INSPECT CHARACTERS(ZAN01CHK,KIN04CHK,SUB04CHK) |
| 22 | CLOSE | | CLOSE 全ファイル入出力PGM |
| 22 | CLOSE | | CLOSE(単純CLOSEのみ)。WITH LOCK/NO REWIND/REEL/FOR REMOVAL未使用 |
| 23 | COMP | ◎ | USAGE COMP カウンタ/フラグ |
| 24 | COMP-3 | ◎ | USAGE COMP-3 集計/金額項目 |
| 25 | COMP-4 | × | COMPと同義だが不使用 |
| 26 | COMPUTE | ◎ | COMPUTE ROUNDED(ZAN01,ZAN03,ZAN05,KIN03,KIN06,SUB05) |
| 27 | CONDITION | × | |
| 26 | COMPUTE | ◎ | COMPUTE ROUNDED/SIZE ERROR(ZAN01,ZAN03,ZAN05,KIN03,KIN06,SUB05) |
| 27 | CONDITION | × | 未使用 |
| 28 | CONFIGURATION | ◎ | CONFIGURATION SECTION 全プログラム |
| 29 | CONTAINS | ◎ | FD BLOCK CONTAINS / RECORD CONTAINS |
| 30 | CONTINUE | ◎ | 全プログラム(SEARCH AT END、EVALUATE OTHER) |
| 31 | CONVERTING | × | |
| 32 | COPY | ◎ | COPY 全プログラム(C書式取込み) |
| 33 | CORR | × | MOVE CORR/ADD CORR未使用 |
| 34 | COUNT | × | UNSTRING COUNT IN未使用 |
| 35 | CURSOR | ◎ | DECLARE/OPEN/FETCH/CLOSE CURSOR(KIN02UPD,KIN09CSV) |
| 30 | CONTINUE | ◎ | SEARCH AT END、EVALUATE WHEN OTHER(全プログラム) |
| 31 | CONVERTING | × | INSPECT CONVERTING未使用 |
| 32 | COPY | ◎ | COPY 全プログラムC書式取込み、REPLACING含む) |
| 33 | CORR | × | MOVE CORR/ADD CORR/SUBTRACT CORR未使用 |
| 34 | COUNT | × | UNSTRING COUNT IN未使用INSPECT TALLYINGは別キーワード) |
| 35 | CURSOR | ◎ | DECLARE/OPEN/FETCH/CLOSE CURSOR(KIN02UPD,KIN03EXP,KIN06CLD,KIN09CSV) |
| 36 | DATA | ◎ | DATA DIVISION 全プログラム |
| 37 | DATE | | ACCEPT FROM DATE(SUB01DAT委譲) |
| 37 | DATE | × | ACCEPT FROM DATE未使用(SUB01DATはFUNCTION CURRENT-DATE使用) |
| 38 | DATE-COMPILED | ◎ | IDENTIFICATION DIVISION 全プログラム |
| 39 | DATE-WRITTEN | ◎ | IDENTIFICATION DIVISION 全プログラム |
| 40 | DECLARATIVES | × | |
| 41 | DELETE | × | COBOL DELETE(SEQ FILE)未使用。EXEC SQL DELETEはKIN02UPD |
| 40 | DECLARATIVES | × | 未使用 |
| 41 | DELETE | | EXEC SQL DELETE(KIN02UPD,KIN08DBU)。COBOL DELETE文(SEQ FILE未使用 |
| 42 | DELIMITED | ◎ | STRING/UNSTRING DELIMITED BY |
| 43 | DELIMITER | × | UNSTRING DELIMITER IN未使用 |
| 44 | DEPENDING | ◎ | GO TO DEPENDING ON(KIN08DBU)、OCCURS DEPENDING ON |
| 45 | DESCENDING | × | |
| 46 | DISPLAY | | DISPLAY文(MSG出力) 5プログラム |
| 47 | DISPLAY-1 | × | |
| 48 | DIVIDE | ◎ | DIVIDE GIVING REMAINDER(ZAN01,ZAN05,SUB05,KIN07) |
| 44 | DEPENDING | ◎ | OCCURS DEPENDING ON(KIN03EXP,ZAN03CHK)、GO TO DEPENDING ON(KIN08DBU) |
| 45 | DESCENDING | × | 未使用 |
| 46 | DISPLAY | | DISPLAY文MSG出力4プログラム。USAGE DISPLAY句未使用、UPON/WITH NO ADVANCING未使用 |
| 47 | DISPLAY-1 | × | 未使用 |
| 48 | DIVIDE | ◎ | DIVIDE INTO/BY/GIVING/REMAINDER/ROUNDED(ZAN01,ZAN05,SUB05,KIN07) |
| 49 | DIVISION | ◎ | IDENTIFICATION/ENVIRONMENT/DATA/PROCEDURE DIVISION 全プログラム |
| 50 | DOWN | × | SET DOWN未使用 |
| 51 | DYNAMIC | × | |
| 52 | EJECT | × | |
| 51 | DYNAMIC | × | 未使用 |
| 52 | EJECT | × | 未使用 |
| 53 | ELSE | ◎ | IF ELSE END-IF 全プログラム |
| 54 | END | ◎ | END-IF、END-READ、END-PERFORM等スコープターミネータ |
| 55 | END-ADD | × | |
| 54 | END | ◎ | END-IF、END-READ、END-PERFORM等スコープターミネータ 全プログラム |
| 55 | END-ADD | × | ADD文のスコープターミネータ未使用(ピリオド終端) |
| 56 | END-CALL | ◎ | END-CALL(CALL使用PGM) |
| 57 | END-COMPUTE | ◎ | END-COMPUTE(COMPUTE使用PGM) |
| 58 | END-DIVIDE | × | |
| 58 | END-DIVIDE | × | DIVIDE文のスコープターミネータ未使用 |
| 59 | END-EVALUATE | ◎ | END-EVALUATE(EVALUATE使用11PGM) |
| 60 | END-EXEC | ◎ | END-EXEC(EXEC SQL使用5PGM) |
| 61 | END-IF | ◎ | END-IF 全プログラム |
@@ -176,142 +175,146 @@
| 63 | END-READ | ◎ | END-READ(READ使用PGM) |
| 64 | END-SEARCH | ◎ | END-SEARCH(SEARCH使用PGM) |
| 65 | END-STRING | ◎ | END-STRING(STRING使用PGM) |
| 66 | END-SUBTRACT | × | |
| 66 | END-SUBTRACT | × | SUBTRACT文のスコープターミネータ未使用 |
| 67 | END-UNSTRING | ◎ | END-UNSTRING(UNSTRING使用PGM) |
| 68 | ENVIRONMENT | ◎ | ENVIRONMENT DIVISION 全プログラム |
| 69 | ERROR | ◎ | ON SIZE ERROR(COMPUTE:ZAN01,ZAN03) |
| 70 | EVALUATE | | EVALUATE ALSO WHEN OTHER END-EVALUATE 11プログラム |
| 71 | EXEC | | EXEC SQL END-EXEC(KIN02UPD,KIN03EXP,KIN08DBU,KIN09CSV,ZAN06UPD) |
| 69 | ERROR | ◎ | ON SIZE ERROR(COMPUTE:ZAN01,ZAN03,ZAN05) |
| 70 | EVALUATE | | EVALUATE TRUE/WHEN/WHEN OTHER使用。ALSO未使用。構文形式一覧のALSO形式が未使用のため△ |
| 71 | EXEC | | EXEC SQL使用。EXEC CICS未使用 |
| 72 | EXCEPTION | × | CALL ON EXCEPTION未使用 |
| 73 | EXECUTE | × | |
| 74 | EXIT | | 段落共通終点 EXIT 全14プログラム |
| 75 | FALSE | × | |
| 73 | EXECUTE | × | 未使用 |
| 74 | EXIT | | EXIT(段落終端)全プログラム、EXIT PERFORM(KIN06CLD,KIN07DAI,KIN08DBU)、EXIT SECTION(KIN08DBU)。EXIT PROGRAM/EXIT PARAGRAPH/EXIT METHOD未使用 |
| 75 | FALSE | × | SET TO FALSE未使用 |
| 76 | FD | ◎ | FILE DESCRIPTION 全ファイル入出力PGM |
| 77 | FILE | ◎ | FILE SECTION、FILE-CONTROL 全プログラム |
| 78 | FILE-CONTROL | ◎ | FILE-CONTROL SELECT ASSIGN 全プログラム |
| 79 | FILLER | ◎ | FILLER 全プログラム(DATA DIVISION) |
| 80 | FIRST | ◎ | INSPECT FIRST(ZAN01CHK,KIN04CHK,SUB04CHK) |
| 81 | FOR | ◎ | PERFORM VARYING FOR、INSPECT FOR |
| 82 | FROM | ◎ | ACCEPT FROM、STRING FROM、PERFORM VARYING FROM |
| 83 | GET | × | |
| 84 | GIVING | ◎ | ADD/DIVIDE/MULTIPLY/SUBTRACT GIVING |
| 85 | GO | ◎ | GO TO(ZAN01CHK,KIN01INP,KIN04CHK,SUB04CHK,KIN08DBU(DEPENDING ON)) |
| 86 | GOBACK | ◎ | GOBACK 全14プログラム |
| 87 | GREATER | × | |
| 88 | HIGH-VALUE | × | |
| 81 | FOR | ◎ | PERFORM VARYING...FORKIN06CLD,KIN08DBU,ZAN06UPD |
| 82 | FROM | ◎ | STRING FROM、PERFORM VARYING FROM、ACCEPT FROM |
| 83 | GET | × | 未使用 |
| 84 | GIVING | ◎ | DIVIDE/MULTIPLY GIVING(ZAN01,ZAN05,SUB05,KIN07,ZAN06) |
| 85 | GO | ◎ | GO TO(KIN01INP,SUB04CHK等)、GO TO DEPENDING ON(KIN08DBU) |
| 86 | GOBACK | ◎ | GOBACK 全20プログラム |
| 87 | GREATER | × | IS GREATER THAN未使用 |
| 88 | HIGH-VALUE | | MOVE HIGH-VALUE(ZAN03CHK,ZAN04MAT,ZAN05CAL) |
| 89 | I-O-CONTROL | × | I-O-CONTROL段落不使用 |
| 90 | ID | × | |
| 90 | ID | × | PROGRAM-ID以外のID未使用 |
| 91 | IDENTIFICATION | ◎ | IDENTIFICATION DIVISION 全プログラム |
| 92 | IF | ◎ | IF ELSE END-IF 全プログラム |
| 93 | IN | ◎ | INSPECT TALLYING IN、SEARCH IN |
| 94 | INDEXED | ◎ | OCCURS INDEXED BY(KIN01INP,KIN03EXP,ZAN03CHK) |
| 95 | INITIAL | × | PROGRAM-ID INITIAL不使用 |
| 96 | INITIALIZE | | INITIALIZE 全プログラム(REPLACING句は×) |
| 93 | IN | ◎ | INSPECT TALLYING IN、SEARCH IN、COPY IN |
| 94 | INDEXED | ◎ | OCCURS INDEXED BY(KIN01INP,KIN03EXP,KIN06CLD,ZAN03CHK) |
| 95 | INITIAL | × | PROGRAM-ID INITIAL属性未使用。INITIAL VALUEはVALUE句で代替 |
| 96 | INITIALIZE | | INITIALIZE(基本形)全プログラムREPLACING/WITH FILLER未使用 |
| 97 | INPUT | ◎ | OPEN INPUT、INPUT-OUTPUT SECTION |
| 98 | INPUT-OUTPUT | ◎ | INPUT-OUTPUT SECTION 全プログラム |
| 99 | INSERT | | EXEC SQL INSERT(KIN02UPD,KIN08DBU) |
| 100 | INSPECT | ◎ | INSPECT TALLYING/REPLACING(ZAN01CHK,KIN04CHK,SUB04CHK,KIN09CSV) |
| 101 | INTO | ◎ | READ INTO、STRING INTO、UNSTRING INTO |
| 99 | INSERT | | EXEC SQL INSERT(KIN02UPD,KIN08DBU)。COBOL INSERT(コンパイラ指示文)未使用 |
| 100 | INSPECT | ◎ | INSPECT TALLYING/REPLACING/FIRST/CHARACTERS(ZAN01CHK,KIN04CHK,SUB04CHK,KIN08DBU,KIN09CSV) |
| 101 | INTO | ◎ | READ INTO、STRING INTO、UNSTRING INTO、SQL INTO |
| 102 | INVALID | × | COBOL INVALID KEY未使用 |
| 103 | IS | ◎ | 条件式IS、ACCESS MODE IS |
| 103 | IS | ◎ | 条件式IS、ACCESS MODE IS、LABEL RECORD IS等 全プログラム |
| 104 | KEY | ◎ | ASCENDING/DESCENDING KEY、SEARCH KEY、OCCURS KEY |
| 105 | LABEL | ◎ | FD LABEL RECORDS STANDARD |
| 106 | LENGTH | × | FUNCTION LENGTH未使用 |
| 106 | LENGTH | | LENGTH OF(SUB04CHK) |
| 107 | LINKAGE | ◎ | LINKAGE SECTION サブプログラム(SUB01-05)CALL有PGM |
| 108 | LOW-VALUE | × | |
| 109 | MODE | ◎ | RECORDING MODE F |
| 110 | MOVE | ◎ | MOVE TO 全14プログラム |
| 111 | MULTIPLY | ◎ | MULTIPLY BY/GIVING(KIN07DAI,ZAN06UPD) |
| 112 | NEXT | × | |
| 108 | LOW-VALUE | | LOW-VALUES(KIN08DBU) |
| 109 | MODE | ◎ | RECORDING MODE F/V |
| 110 | MOVE | ◎ | MOVE TO 全20プログラム |
| 111 | MULTIPLY | ◎ | MULTIPLY BY/GIVING/ROUNDED(KIN07DAI,ZAN06UPD) |
| 112 | NEXT | × | READ NEXT未使用(順次読込のみ) |
| 113 | NOT | ◎ | NOT AT END、NOT ON ERROR、IF NOT 全プログラム |
| 114 | NUMERIC | ◎ | IF NUMERIC(SUB04CHK) |
| 114 | NUMERIC | ◎ | IF NUMERIC(KIN06CLD,SUB04CHK) |
| 115 | OBJECT-COMPUTER | ◎ | OBJECT-COMPUTER 全プログラム |
| 116 | OCCURS | ◎ | OCCURS TIMES/DEPENDING ON/INDEXED BY |
| 117 | OF | ◎ | データ参照修飾(全プログラム) |
| 118 | OMITTED | × | |
| 117 | OF | ◎ | データ参照修飾、LENGTH OF(全プログラム) |
| 118 | OMITTED | × | CALL OMITTED未使用 |
| 119 | ON | ◎ | ON SIZE ERROR、OCCURS DEPENDING ON |
| 120 | OPEN | ◎ | OPEN INPUT/OUTPUT 全ファイル入出力PGM |
| 121 | OPTIONS | × | |
| 121 | OPTIONS | × | CBL/PROCESS文未使用 |
| 122 | OR | ◎ | 条件式OR、UNSTRING DELIMITED BY OR |
| 123 | ORDER | × | |
| 124 | ORGANIZATION | × | |
| 123 | ORDER | × | COBOL SORT未使用(SQL ORDER BYはCOBOL SORT文のORDERとは異なる) |
| 124 | ORGANIZATION | × | ORGANIZATION句未使用 |
| 125 | OTHER | ◎ | EVALUATE WHEN OTHER |
| 126 | OUTPUT | ◎ | OPEN OUTPUT |
| 127 | PACKED-DECIMAL | × | COMP-3使用、PACKED-DECIMAL表記不使用 |
| 128 | PAGE | | WRITE ADVANCING PAGE(KIN09CSV) |
| 129 | PAGE-COUNTER | × | |
| 130 | PERFORM | | PERFORM 全14プログラム(VARYING/UNTIL/THRU/TEST AFTER) |
| 128 | PAGE | | WRITE AFTER ADVANCING PAGE(KIN09CSV)。FD LINAGE句未使用 |
| 129 | PAGE-COUNTER | × | 未使用(LINAGE不使用のため) |
| 130 | PERFORM | | PERFORM(外部段落)/UNTIL/VARYING/THRU/TEST AFTER使用。TIMES/TEST BEFORE/VARYING AFTER未使用 |
| 131 | PIC | ◎ | PICTURE句 全プログラム |
| 132 | POINTER | ◎ | STRING WITH POINTER(KIN09CSV) |
| 133 | PROCEDURE | ◎ | PROCEDURE DIVISION 全プログラム |
| 134 | PROGRAM-ID | ◎ | PROGRAM-ID 全プログラム |
| 135 | RANDOM | × | |
| 136 | READ | | READ INTO AT END 全ファイル読込PGM |
| 137 | RECORD | ◎ | FD RECORD CONTAINS |
| 138 | RECORDING | ◎ | FD RECORDING MODE F |
| 135 | RANDOM | × | 未使用 |
| 136 | READ | | READ INTO AT END使用。KEY IS/NEXT/PREVIOUS/WITH WAIT/LOCK未使用 |
| 137 | RECORD | ◎ | FD RECORD CONTAINS、RECORDING MODE |
| 138 | RECORDING | ◎ | FD RECORDING MODE F/V |
| 139 | RECORDS | ◎ | FD LABEL RECORDS STANDARD、BLOCK CONTAINS RECORDS |
| 140 | REDEFINES | ◎ | REDEFINES(各種PGM WORKING-STORAGE) |
| 141 | REMAINDER | ◎ | DIVIDE GIVING REMAINDER(ZAN01,ZAN05,SUB05,KIN07) |
| 142 | REMOVAL | × | |
| 143 | REPLACING | | COPY REPLACING、INSPECT REPLACING(KIN09CSV)。INITIALIZE REPLACINGは× |
| 144 | RERUN | × | |
| 145 | RETURN-CODE | | RETURN-CODE 全プログラム(SUB03ENDでMOVE→STOP RUN) |
| 146 | ROUNDED | ◎ | COMPUTE ROUNDED(ZAN01,ZAN03,ZAN05,KIN03,KIN06,SUB05) |
| 147 | RUN | | STOP RUN RETURN-CODE(SUB03ENDのみ) |
| 148 | SEARCH | ◎ | SEARCH ALL(KIN03EXP,ZAN03CHK)、SEARCH(KIN01INP) |
| 142 | REMOVAL | × | CLOSE FOR REMOVAL未使用 |
| 143 | REPLACING | | COPY REPLACING(全プログラム)、INSPECT REPLACING(KIN08DBU,KIN09CSV)。INITIALIZE REPLACING未使用 |
| 144 | RERUN | × | I-O-CONTROL段落未使用 |
| 145 | RETURN-CODE | × | 特殊レジスタRETURN-CODE未使用(WRK-RETURN-CODEは変数名) |
| 146 | ROUNDED | ◎ | COMPUTE ROUNDED、DIVIDE/MULTIPLY ROUNDED(ZAN01,ZAN03,ZAN05,KIN03,KIN06,SUB05,ZAN06) |
| 147 | RUN | | STOP RUNのみ(SUB03END)。STOP literal未使用 |
| 148 | SEARCH | ◎ | SEARCH(KIN01INP)、SEARCH ALL(KIN03EXP,ZAN03CHK)、VARYING/AT END/WHEN全て使用 |
| 149 | SECTION | ◎ | CONFIGURATION/INPUT-OUTPUT/WORKING-STORAGE/LINKAGE/PROCEDURE SECTION |
| 150 | SELECT | ◎ | SELECT ASSIGN(FILE-CONTROL)全プログラム、EXEC SQL SELECT |
| 151 | SENTENCE | × | |
| 152 | SET | | SET condition-name TO TRUE(条件名設定) |
| 153 | SHIFT-IN | × | |
| 154 | SHIFT-OUT | × | |
| 155 | SIZE | ◎ | ON SIZE ERROR(COMPUTE:ZAN01CHK,ZAN03CHK) |
| 156 | SKIP2 | × | |
| 150 | SELECT | ◎ | SELECT ASSIGN(FILE-CONTROL)全プログラム、SQL SELECT |
| 151 | SENTENCE | × | NEXT SENTENCE未使用 |
| 152 | SET | | SET TO TRUE(KIN08DBU,ZAN05CAL)。SET TO FALSE/UP BY/DOWN BY/ADDRESS OF未使用 |
| 153 | SHIFT-IN | × | 未使用 |
| 154 | SHIFT-OUT | × | 未使用 |
| 155 | SIZE | ◎ | ON SIZE ERROR(COMPUTE:ZAN01CHK,ZAN03CHK,ZAN05CAL) |
| 156 | SKIP2 | × | 未使用(SKIP1/SKIP2/SKIP3 |
| 157 | SOURCE-COMPUTER | ◎ | SOURCE-COMPUTER IBM-ZSERIES 全プログラム |
| 158 | SPACE | ◎ | SPACE/SPACES INITIALIZE後、VALUE、MOVE |
| 159 | SPACES | ◎ | SPACES(SPACEと同義) |
| 158 | SPACE | ◎ | SPACE/SPACES INITIALIZE後、VALUE、MOVE、条件比較 |
| 159 | SPACES | ◎ | SPACES(SPACEと同義、INSPECT REPLACING ALL等) |
| 160 | SQL | ◎ | EXEC SQL(KIN02UPD,KIN03EXP,KIN08DBU,KIN09CSV,ZAN06UPD) |
| 161 | STANDARD | ◎ | FD LABEL RECORDS STANDARD |
| 162 | STOP | | STOP RUN(SUB03ENDのみ) |
| 163 | STRING | | STRING DELIMITED BY INTO(KIN01,02,04,06,ZAN01-04,06,SUB02MSG) |
| 164 | SUBTRACT | ◎ | SUBTRACT FROM/GIVING(KIN07DAI,ZAN06UPD) |
| 165 | TABLE | × | |
| 166 | TALLYING | ◎ | INSPECT TALLYING、UNSTRING TALLYING IN |
| 167 | TEST | ◎ | PERFORM TEST AFTER(ZAN06UPD) |
| 168 | THEN | ◎ | IF THEN(一部PGMで明示的THEN使用) |
| 169 | THRU | | PERFORM THRU(KIN03EXP)、VALUE THRU |
| 170 | TIME | | ACCEPT FROM TIME(SUB01DAT経由) |
| 171 | TIMES | ◎ | OCCURS TIMES |
| 162 | STOP | | STOP RUNのみ(SUB03END)。STOP literal未使用 |
| 163 | STRING | | STRING DELIMITED BY INTO使用。ON OVERFLOW未使用 |
| 164 | SUBTRACT | ◎ | SUBTRACT FROM/GIVING/ROUNDED(KIN07DAI,ZAN06UPD) |
| 165 | TABLE | × | SEARCH TABLE参照(変数名にはHOLIDAY-TABLE等あるが、TABLE予約語としては未使用) |
| 166 | TALLYING | ◎ | INSPECT TALLYING、UNSTRING TALLYING IN(ZAN01CHK,KIN04CHK,SUB04CHK,KIN08DBU) |
| 167 | TEST | ◎ | PERFORM TEST AFTER(ZAN06UPD)。TEST BEFORE未使用だが単一形式で◎ |
| 168 | THEN | ◎ | IF THENSUB04CHK,SUB05TIMで明示的THEN使用 |
| 169 | THRU | | PERFORM THRU(KIN03EXP,KIN08DBU)。VALUE THRU未使用 |
| 170 | TIME | × | ACCEPT FROM TIME未使用(SUB01DATはFUNCTION CURRENT-DATE使用) |
| 171 | TIMES | ◎ | OCCURS TIMES(KIN01INP,KIN03EXP,KIN06CLD,KIN08DBU,ZAN03CHK) |
| 172 | TO | ◎ | MOVE TO、ADD TO、GO TO 全プログラム |
| 173 | TRUE | ◎ | EVALUATE TRUE、SET condition TO TRUE |
| 174 | TYPE | × | |
| 174 | TYPE | × | 変数名(WRK-ERR-TYPE等)はあるがTYPE予約語としては未使用 |
| 175 | UNSTRING | ◎ | UNSTRING DELIMITED BY INTO(KIN01INP,KIN04CHK,ZAN01CHK) |
| 176 | UNTIL | ◎ | PERFORM UNTIL 全プログラム |
| 177 | UP | × | SET UP未使用 |
| 178 | UPON | × | DISPLAY UPON未使用 |
| 179 | USAGE | ◎ | USAGE DISPLAY/COMP/COMP-3 |
| 180 | USE | × | |
| 179 | USAGE | ◎ | USAGE COMP/COMP-3 |
| 180 | USE | × | USE文未使用 |
| 181 | USING | ◎ | PROCEDURE DIVISION USING、CALL USING 全プログラム |
| 182 | VALUE | ◎ | VALUE 全プログラム(88条件名、初期値) |
| 183 | VALUES | | VALUES(88条件名複数値) |
| 184 | VARYING | ◎ | PERFORM VARYING(ZAN06UPD,KIN06CLD)、SEARCH VARYING(KIN01INP) |
| 183 | VALUES | × | 88条件値VALUES(VALUE句複数値)未使用。SQLのVALUES句は別コンテキスト |
| 184 | VARYING | ◎ | PERFORM VARYING(ZAN06UPD,KIN06CLD,KIN08DBU)、SEARCH VARYING(KIN01INP) |
| 185 | WHEN | ◎ | EVALUATE WHEN、SEARCH WHEN |
| 186 | WHEN-COMPILED | ◎ | FUNCTION WHEN-COMPILED 全14プログラム |
| 187 | WITH | ◎ | STRING WITH POINTER、WRITE WITH ADVANCING |
| 186 | WHEN-COMPILED | ◎ | FUNCTION WHEN-COMPILED 全15プログラム |
| 187 | WITH | ◎ | STRING WITH POINTER、WRITE WITH ADVANCING、INITIALIZE WITH FILLERは未使用だが他で◎ |
| 188 | WORKING-STORAGE | ◎ | WORKING-STORAGE SECTION 全プログラム |
| 189 | WRITE | | WRITE FROM/ADVANCING 全ファイル出力PGM |
| 190 | WRITE-ONLY | × | |
| 191 | ZERO | ◎ | ZERO/ZEROS VALUE 0、MOVE ZERO |
| 192 | ZEROS | ◎ | ZEROS(ZEROと同義) |
| 189 | WRITE | | WRITE FROM/AFTER ADVANCING使用。BEFORE ADVANCING/END-OF-PAGE未使用 |
| 190 | WRITE-ONLY | × | I-O-CONTROL段落未使用 |
| 191 | ZERO | ◎ | ZERO/ZEROS VALUE、MOVE ZERO 全プログラム |
| 192 | ZEROS | ◎ | ZEROS(ZEROと同義、KIN08DBU LOW-VALUES) |
| 193 | ALTER | × | 非推奨 |
| 194 | CANCEL | × | |
| 195 | ENTRY | × | |
| 194 | CANCEL | × | 未使用 |
| 195 | ENTRY | × | 未使用 |
| 196 | MERGE | × | JCL PGM=SORTに委譲 |
| 197 | RELEASE | × | COBOL SORT未使用 |
| 198 | RETURN | × | COBOL RETURN文未使用(RETURN-CODEは特殊レジスタ) |
| 198 | RETURN | × | COBOL RETURN文未使用RETURN-CODEは特殊レジスタ、WRK-RETURN-CODEは変数名) |
| 199 | REWRITE | × | VSAM非対応 |
| 200 | SORT | × | JCL PGM=SORTに委譲 |
| 201 | START | × | 順次読込のみ |
| 202 | SAME | × | SAME RECORD/SORT AREA未使用 |
| 203 | FUNCTION | ◎ | FUNCTION MOD/WHEN-COMPILED/NUMVAL/INTEGER-OF-DATE/MIN/MAX/TRIM(KIN03EXP,KIN06CLD,KIN08DBU,KIN09CSV) |
| 204 | BEFORE | × | INSPECT BEFORE/WRITE BEFORE ADVANCING/PERFORM TEST BEFORE未使用 |
| 205 | ADDRESS | × | ADDRESS OF未使用(SET ADDRESS OF未使用) |
---
@@ -320,23 +323,22 @@
| 指標 | 値 |
|------|:----:|
| **プログラムタイプカバレッジ(35タイプ)** | |
| ◎(使用 | 16 / 35 |
| ○(一部使用) | 1 / 35 |
| ×(未使用) | 18 / 35 |
| △(調査中) | 0 / 35 |
| ◎(使用) | 16 / 35 |
| ×(未使用) | 19 / 35 |
| カバレッジ率(◎/35 | 45.7% |
| カバレッジ率(◎+○/35) | 48.6% |
| 実装対象限定(1-9,13-15,24-26,28,30-31= 20種中 | 17件 = 85.0% |
| 実装対象限定(1-9,13-15,24-26,28,30-31= 20種中 | 16件 = 80.0% |
| **PICTURE記号カバレッジ(Section 2.1** | |
| 全記号数(11種) | 11 |
| 使用済記号(◎+ | 7 |
| 使用済記号(◎+ | 7 |
| 未使用記号(×) | 4 |
| カバレッジ率 | 63.6% |
| **予約語カバレッジ(Section 3)** | |
| 全予約語数(COBOLキーワード網羅定義書.md Part1 + 補足9語) | 201 |
| 使用予約語数(◎+○ | 137 |
| 未使用予約語数(× | 64 |
| カバレッジ率 | 68.2% |
| 全予約語数 | 205 |
| ◎(全構文形式使用) | 101 |
| △(一部構文形式使用 | 24 |
| ×(未使用) | 80 |
| カバレッジ率(◎/205 | 49.3% |
| カバレッジ率(◎+△/205 | 61.0% |
| **TYPE定義カバレッジ(11種)** | |
| 全TYPE定義数 | 11 |
| 使用済TYPE | 7X, 9, 9V9, S9V9, S9V9 COMP-3, S9 COMP-3, S9 COMP |