# カバレッジ統計 > 本ファイルは全コードベース(JIN + KIN + ZAN + KYU + SHA + SUB)を統合したカバレッジ状況を集計する。 > 定義ファイル(COBOLキーワード網羅定義書.md)の ## 1.(予約語一覧)・## 2.(TYPE定義)を参照して集計する。 > 凡例:◎=完全使用(全構文形式を使用)、△=一部使用(一部の構文形式のみを使用)、×=未使用 --- ## 1. プログラムタイプカバレッジ ### 1.1 全36タイプ内訳 | No. | 名称 | 分類 | 対応プログラム | 状態 | |:---:|------|:----:|:-------------:|:----:| | 01 | マッチング(1:1) | 匹配 | ZAN04MAT | ◎ | | 02 | マッチング(1:N) | 匹配 | KIN05MAT, KIN03EXP | ◎ | | 03 | マッチング(N:1) | 匹配 | ZAN03CHK | ◎ | | 04 | レイアウト編集のみ(GETPUT) | 编辑 | KIN06CLD, KYU08PRI, JIN04PRT | ◎ | | 05 | 振り分け(IF文) | 分支 | 全メインプログラム(42本) | ◎ | | 06 | 振り分け(EVALUATE文) | 分支 | 42本中16本(JIN05UPD, KIN01INP, KIN02UPD, KIN03EXP, KIN05MAT, KIN07DAI, KYU04CAL, KYU07DIV, SHA02MNC, SHA09S25, SHA10S10, ZAN01CHK, ZAN03CHK, ZAN04MAT, ZAN05CAL, ZAN06UPD) | ◎ | | 07 | キーブレイク(集計) | key切 | ZAN05CAL | ◎ | | 08 | キーブレイク(集約) | key切 | KYU03AGG | ◎ | | 09 | DB更新 | 数据库 | KIN02UPD, ZAN06UPD, KYU02REG, KYU06UPD, JIN05UPD | ◎ | | 10 | 50分割 | 分割 | KYU07DIV | ◎ | | 11 | 25分割 | 分割 | SHA09S25 | ◎ | | 12 | 100分割 | 分割 | SHA10S10 | ◎ | | 13 | 項目チェック(重複含まず) | 校验 | ZAN01CHK, ZAN03CHK, KIN01INP, KIN04CHK, SUB04CHK, JIN01KNS | ◎ | | 14 | オンラインPGM | online | — | × | | 15 | CSV→FB変換(改行なし) | 文件转换 | ZAN01CHK(UNSTRING), KIN01INP(UNSTRING) | ◎ | | 16 | 2段階マッチング(1:1⇒1:1) | 匹配 | SHA04TWO | ◎ | | 17 | 2段階マッチング(N:1⇒N:1) | 匹配 | SHA05TWN | ◎ | | 18 | マッチングM:N⇒出力M件 | 匹配 | SHA02MNC | ◎ | | 19 | マッチングM:N⇒出力N件 | 匹配 | JIN02SKL | ◎ | | 20 | マッチングM:N⇒出力M×N件 | 匹配 | SHA03MNP | ◎ | | 36 | 編集出力(ランキング生成) | 编辑 | JIN03RAN | ◎ | | 21 | CSV→FB変換(改行あり) | 文件转换 | KYU01CVT | ◎ | | 22 | 2段階マッチング(M:N⇒M:N) | 匹配 | SHA06TWM | ◎ | | 23 | SELECT条件 | 数据库 | KYU05DED | ◎ | | 24 | 内部テーブル検索 | 内部处理 | KIN01INP(SEARCH), KIN03EXP(SEARCH ALL), ZAN03CHK(SEARCH ALL), KYU05DED(SEARCH ALL), JIN02SKL(SEARCH ALL) | ◎ | | 25 | サブプログラム使用 | 内部处理 | SUB01DAT~SUB05TIM, JIN07SUB | ◎ | | 26 | DB検索 | 数据库 | KIN03EXP, KIN06CLD, KYU04CAL, KYU05DED | ◎ | | 27 | 項目チェック(半角20桁/4桁) | 校验 | JIN01KNS | ◎ | | 28 | SYSIN読込 | 内部处理 | KIN08DBU, KYU07DIV | ◎ | | 29 | ASCII→EBCDIC変換 | 文件转换 | SHA01CVT | ◎ | | 30 | キーブレイク(集計集約以外) | key切 | KIN03EXP(社員小計), ZAN02CHK(重複検出), KIN05MAT(N:1ループ), KYU03AGG(集約), KYU04CAL(同キー) | ◎ | | 31 | 項目チェック(重複含む) | 校验 | ZAN02CHK(時間帯重複) | ◎ | | 32 | 1:N+キーブレイク(同キー) | 混合 | KYU04CAL | ◎ | | 33 | 1:N+キーブレイク(異キー) | 混合 | SHA07KBR | ◎ | | 34 | SORT(INPUT/OUTPUT PROCEDURE) | 排序 | SHA08SRT, JIN06SRT | ◎ | | 35 | MERGE(複数ファイル結合) | 排序 | KYU09MRG | ◎ | ### 1.2 集計 | 指標 | 値 | |------|:----:| | 全タイプ数 | 36 | | ◎(使用) | 35 | | ×(未使用) | 1 | | カバレッジ率(◎/36) | 97.2% | --- ## 2. TYPE定義カバレッジ(PICTURE句) > COBOLキーワード網羅定義書.mdの ## 2.1 PICTURE記号一覧(11種)に基づき、コードベースでの使用状況を集計する。 ### 2.1 PICTURE記号別使用状況 | No. | 記号 | 名称 | 使用状況 | 使用例 | |:---:|:----|:-----|:-------:|:------| | 1 | X | 英数字文字 | ◎ | PIC X(1)~X(303) 全プログラム(19種の長さ) | | 2 | G | DBCS文字 | × | 未使用(日本語項目は全てPIC Xで定義) | | 3 | N | ナショナル/DBCS文字 | △ | PIC N(040)(JIN01KNS: 漢字氏名、GnuCOBOLで警告あり) | | 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) | | 7 | S9(m)V9(n) COMP-3 | パック10進符号付き固定小数 | ◎ | PIC S9(7)V9(1) COMP-3(DB-OVT-HOURS) | | 8 | S9(m) COMP-3 | パック10進符号付き整数 | ◎ | PIC S9(9) COMP-3(CUN-*計数項目 計15変数) | | 9 | S9(m) COMP | 2進符号付き整数 | ◎ | PIC S9(9) COMP(索引・カウンタ) | | 10 | S9(m) BINARY | 2進符号付き整数(COMP同義) | △ | PIC 9(002) BINARY(JIN02SKL: マスタレベル) | | 11 | ZZZ9 | ゼロ抑制編集 | ◎ | ZZZZ9(JIN02SKL: 集計件数編集) | ### 2.2 未使用PICTURE記号 | 記号 | 名称 | 備考 | |:----:|:-----|:-----| | G | DBCS文字 | 日本語項目はPIC Xで十分 | ### 2.3 補足:特殊編集形式 コードベースでは上記11種に加え、以下の編集形式が使用されている: | 形式 | 使用先 | |:----|:-------| | +9(009) | WS-DISP-HV-SICK-H等(符号付き表示編集) | | Z(3)9.9 | WS-DISP-HV-ANNUAL-H等(ゼロ抑制編集・小数点明示) | | S9 DISPLAY | WS-DISP-CUN-DBXUPD等(COMP-3→DISPLAY変換用) | | 9(004).9(001) | 編集出力時の小数点明示形式 | --- ## 3. 予約語カバレッジ一覧 > 全205予約語(COBOLキーワード網羅定義書.md Part1 192語 + 補足13語)をアルファベット順に一覧する。 > 凡例:◎=全構文形式使用、△=一部構文形式使用、×=未使用 > > 判定基準:定義書の「構文形式一覧」に記載された各形式がコードベースで使用されているかどうかで評価。 > 2026-08-06 に全48プログラムを再スキャンし、◎/△/×を更新(◎138 / △33 / ×34)。 | No. | 予約語 | 使用状況 | 使用プログラム/備考 | |:---:|--------|:-------:|-------------------| | 1 | ACCEPT | △ | FROM COMMAND-LINEのみ(KIN06CLD,KIN09CSV)。FROM DATE/TIME/DAY未使用 | | 2 | ACCESS | △ | ACCESS MODE IS SEQUENTIAL(全プログラムのSELECT)。RANDOM/DYNAMIC未使用 | | 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 | △ | IF NOT ALPHABETIC(KYU01CVT, KYU04CHK) | | 7 | ALPHABETIC-UPPER | ◎ | JIN01KNS(半角カナ大文字チェック: IF NOT ALPHABETIC-UPPER) | | 8 | ALSO | ◎ | EVALUATE ALSO(KYU04CAL: 勤怠区分×手当種別の複合分岐) | | 9 | AND | ◎ | 条件式AND 全プログラム | | 10 | ANY | △ | EVALUATE ALSO ANY(KYU04CAL: WHEN 'LATE' ALSO ANY)。SEARCH ANY未使用 | | 11 | APPLY | × | I-O-CONTROL段落未使用 | | 12 | ASCENDING | ◎ | OCCURS ASCENDING KEY(KIN01INP,KIN03EXP,KIN06CLD,SUB04CHK,ZAN03CHK,JIN02SKL)、SEARCH ALL | | 13 | ASSIGN | ◎ | SELECT ASSIGN TO 全プログラム | | 14 | AT | △ | READ AT END、SEARCH AT END使用。WRITE AT END-OF-PAGE(JIN04PRT: LINAGE制御ページヘッダー) | | 15 | AUTHOR | × | IDENTIFICATION DIVISION 段落未使用(ヘッダコメントで代替) | | 16 | BINARY | △ | PIC 9(002) BINARY(JIN02SKL: マスタレベル定義) | | 17 | BLOCK | ◎ | FD BLOCK CONTAINS 全ファイル入出力PGM | | 18 | BY | ◎ | PERFORM VARYING BY、MULTIPLY BY、DIVIDE BY使用。CALL BY CONTENT(JIN05UPD: 3400DBERRSOR) | | 19 | CALL | △ | CALL USING使用。ON EXCEPTION(JIN08TST: 1000ITTTST SUB01DAT呼出)。NOT ON EXCEPTION/RETURNING未使用 | | 20 | CHARACTER | △ | PADDING CHARACTER IS(JIN01KNS, JIN02SKL, JIN03RAN, JIN09RPT, KYU01CVT 等のSELECT)。OBJECT-COMPUTER MEMORY SIZE未使用 | | 21 | CHARACTERS | × | INSPECT CHARACTERS未使用(INSPECTはTALLYING/REPLACING/CONVERTINGのみ) | | 22 | CLOSE | ◎ | CLOSE(単純CLOSE)。WITH LOCK(JIN04PRT, JIN05UPD) | | 23 | COMP | ◎ | USAGE COMP カウンタ/フラグ | | 24 | COMP-3 | ◎ | USAGE COMP-3 集計/金額項目 | | 25 | COMP-4 | △ | PIC 9(004) COMP-4 (JIN03RAN: バイナリカウンタ定義 + ADD 1 TO CUN-COMP4) | | 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 WHEN OTHER(全プログラム) | | 31 | CONVERTING | ◎ | INSPECT CONVERTING X"0D"/X"0A" TO SPACE(KYU01CVT: 引用符内改行→SPACE変換) | | 32 | COPY | ◎ | COPY 全プログラム(C書式取込み、REPLACING含む) | | 33 | CORR | × | MOVE CORRESPONDING(完全形)使用(JIN03RAN: WS-CORR-SRC→WS-CORR-DST)。CORR 省略形は未使用 | | 34 | COUNT | ◎ | UNSTRING COUNT IN(KYU01CVT: CSV分解の項目数カウント) | | 35 | CURSOR | ◎ | DECLARE/OPEN/FETCH/CLOSE CURSOR(KIN02UPD,KIN03EXP,KIN06CLD,KIN09CSV) | | 36 | DATA | ◎ | DATA DIVISION 全プログラム | | 37 | DATE | △ | ACCEPT FROM DATE(JIN04PRT: 1000ITTSOR) | | 38 | DATE-COMPILED | × | IDENTIFICATION DIVISION 段落未使用 | | 39 | DATE-WRITTEN | × | IDENTIFICATION DIVISION 段落未使用 | | 40 | DECLARATIVES | ◎ | USE AFTER ERROR PROCEDURE(KYU01CVT: R01/W01/W02ファイルエラー時ABEND) | | 41 | DELETE | △ | EXEC SQL DELETE(KIN02UPD,KIN08DBU)。COBOL DELETE文(SEQ FILE)未使用 | | 42 | DELIMITED | ◎ | STRING/UNSTRING DELIMITED BY | | 43 | DELIMITER | × | UNSTRING DELIMITER IN未使用 | | 44 | DEPENDING | ◎ | OCCURS DEPENDING ON(KIN03EXP,ZAN03CHK)、GO TO DEPENDING ON(KIN08DBU) | | 45 | DESCENDING | △ | OCCURS DESCENDING KEY IS (JIN03RAN: 内部表3要素降順) | | 46 | DISPLAY | △ | DISPLAY文(MSG出力)4プログラム。USAGE DISPLAY句未使用。UPON(JIN04PRT, JIN05UPD, JIN08TST)、WITH NO ADVANCING(JIN04PRT, JIN05UPD) | | 47 | DISPLAY-1 | × | 未使用 | | 48 | DIVIDE | ◎ | DIVIDE INTO/BY/GIVING/REMAINDER/ROUNDED(ZAN01,ZAN05,SUB05,KIN07) | | 49 | DIVISION | ◎ | IDENTIFICATION/ENVIRONMENT/DATA/PROCEDURE DIVISION 全プログラム | | 50 | DOWN | × | 未使用 | | 51 | DYNAMIC | × | 未使用 | | 52 | EJECT | × | EJECT ディレクティブ未使用(`*EJECT` コメント行のみ) | | 53 | ELSE | ◎ | IF ELSE END-IF 全プログラム | | 54 | END | ◎ | END-IF、END-READ、END-PERFORM等スコープターミネータ 全プログラム | | 55 | END-ADD | ◎ | JIN02SKL(ADD END-ADD) | | 56 | END-CALL | ◎ | END-CALL(CALL使用PGM) | | 57 | END-COMPUTE | ◎ | END-COMPUTE(COMPUTE使用PGM) | | 58 | END-DIVIDE | ◎ | JIN02SKL(DIVIDE GIVING REMAINDER END-DIVIDE) | | 59 | END-EVALUATE | ◎ | END-EVALUATE(EVALUATE使用11PGM) | | 60 | END-EXEC | ◎ | END-EXEC(EXEC SQL使用5PGM) | | 61 | END-IF | ◎ | END-IF 全プログラム | | 62 | END-PERFORM | ◎ | END-PERFORM 全プログラム | | 63 | END-READ | ◎ | END-READ(READ使用PGM) | | 64 | END-SEARCH | ◎ | END-SEARCH(SEARCH使用PGM) | | 65 | END-STRING | ◎ | END-STRING(STRING使用PGM) | | 66 | END-SUBTRACT | ◎ | JIN02SKL(SUBTRACT END-SUBTRACT) | | 67 | END-UNSTRING | ◎ | END-UNSTRING(UNSTRING使用PGM) | | 68 | ENVIRONMENT | ◎ | ENVIRONMENT DIVISION 全プログラム | | 69 | ERROR | ◎ | ON SIZE ERROR(COMPUTE:ZAN01,ZAN03,ZAN05) | | 70 | EVALUATE | ◎ | EVALUATE ALSO/WHEN/WHEN OTHER(KYU04CAL: 勤怠区分×手当種別) | | 71 | EXEC | △ | EXEC SQL使用。EXEC CICS未使用 | | 72 | EXCEPTION | ◎ | CALL ON EXCEPTION(JIN05UPD/JIN08TST: 1000ITTSOR SUB01DAT呼出) | | 73 | EXECUTE | × | 未使用 | | 74 | EXIT | △ | EXIT(段落終端)全プログラム、EXIT PERFORM(KIN06CLD,KIN07DAI,KIN08DBU)、EXIT SECTION(KIN08DBU)、EXIT PROGRAM(JIN07SUB)。EXIT PARAGRAPH/EXIT METHOD未使用 | | 75 | FALSE | ◎ | SET condition TO FALSE(JIN09RPT: SET WRK-FIRST-FLG-Y 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未使用(WRK-FIRST-FLG 等の変数名のみ) | | 81 | FOR | ◎ | PERFORM VARYING...FOR(KIN06CLD,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 | ◎ | JIN02SKL(IF TBL-EMP-COUNT IS GREATER THAN ZERO) | | 88 | HIGH-VALUE | ◎ | MOVE HIGH-VALUE(ZAN03CHK,ZAN04MAT,ZAN05CAL) | | 89 | I-O-CONTROL | ◎ | I-O-CONTROL段落(JIN09RPT: 空段落、SHA08SRT/JIN06SRT: SAME SORT AREA 使用) | | 90 | ID | × | PROGRAM-ID以外のID未使用 | | 91 | IDENTIFICATION | ◎ | IDENTIFICATION DIVISION 全プログラム | | 92 | IF | ◎ | IF ELSE END-IF 全プログラム | | 93 | IN | ◎ | INSPECT TALLYING IN、SEARCH IN、COPY IN | | 94 | INDEXED | ◎ | OCCURS INDEXED BY(KIN01INP,KIN03EXP,KIN06CLD,ZAN03CHK) | | 95 | INITIAL | △ | JIN01KNS(PROGRAM-ID IS INITIAL: サブPGMコール時の初期化属性) | | 96 | INITIALIZE | △ | INITIALIZE(基本形)全プログラム。REPLACING(JIN05UPD: NUMERIC/ALPHANUMERIC指定) | | 97 | INPUT | ◎ | OPEN INPUT、INPUT-OUTPUT SECTION | | 98 | INPUT-OUTPUT | ◎ | INPUT-OUTPUT SECTION 全プログラム | | 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、LABEL RECORD IS等 全プログラム | | 104 | KEY | ◎ | ASCENDING/DESCENDING KEY、SEARCH KEY、OCCURS KEY | | 105 | LABEL | ◎ | FD LABEL RECORDS STANDARD | | 106 | LENGTH | ◎ | LENGTH OF(SUB04CHK) | | 107 | LINKAGE | ◎ | LINKAGE SECTION サブプログラム(SUB01-05)+CALL有PGM | | 108 | LOW-VALUE | △ | LOW-VALUES(複数形)使用(KIN08DBU, SHA01CVT, SHA02MNC, SHA03MNP)。単数形LOW-VALUE未使用 | | 109 | MODE | ◎ | RECORDING MODE F/V | | 110 | MOVE | ◎ | MOVE TO 全20プログラム | | 111 | MULTIPLY | ◎ | MULTIPLY BY/GIVING/ROUNDED(KIN07DAI,ZAN06UPD) | | 112 | NEXT | ◎ | NEXT SENTENCE(JIN09RPT: レベル判定 ELSE 内) | | 113 | NOT | ◎ | NOT AT END、NOT ON ERROR、IF NOT 全プログラム | | 114 | NUMERIC | ◎ | IF NUMERIC(KIN06CLD,SUB04CHK) | | 115 | OBJECT-COMPUTER | ◎ | OBJECT-COMPUTER 全プログラム | | 116 | OCCURS | ◎ | OCCURS TIMES/DEPENDING ON/INDEXED BY(JIN02SKL: ASCENDING KEY + DEPENDING ON) | | 117 | OF | ◎ | データ参照修飾、LENGTH OF(全プログラム) | | 118 | OMITTED | ◎ | CALL USING ... OMITTED(JIN08TST: 2000CALTST)、IS OMITTED 判定(JIN07SUB: 1000FNDSOR) | | 119 | ON | ◎ | ON SIZE ERROR、OCCURS DEPENDING ON | | 120 | OPEN | ◎ | OPEN INPUT/OUTPUT 全ファイル入出力PGM | | 121 | OPTIONS | × | CBL/PROCESS文未使用 | | 122 | OR | ◎ | 条件式OR、UNSTRING DELIMITED BY OR | | 123 | ORDER | △ | EXEC SQL ORDER BY(KIN03EXP, KIN06CLD, KIN09CSV 等)。COBOL SORT文のORDER句は未使用 | | 124 | ORGANIZATION | △ | ORGANIZATION IS SEQUENTIAL(全プログラムのSELECT)。INDEXED/RELATIVE未使用 | | 125 | OTHER | ◎ | EVALUATE WHEN OTHER | | 126 | OUTPUT | ◎ | OPEN OUTPUT | | 127 | PACKED-DECIMAL | × | 未使用(集計・金額項目は COMP-3 / BINARY を使用) | | 128 | PAGE | ◎ | FD LINAGE IS(KYU08PRI: 66行ページ制御)、WRITE BEFORE/AFTER ADVANCING PAGE | | 129 | PAGE-COUNTER | × | 未使用(KYU08PRIはWORKING-STORAGEのWRK-PAGE-COUNTERで代替。特殊レジスタPAGE-COUNTERは不使用) | | 130 | PERFORM | ◎ | PERFORM(外部段落)/UNTIL/VARYING/THRU/TEST AFTER使用。JIN09RPTでVARYING多重ループ(社員×明細×内部表20) | | 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使用。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 RECORD IS STANDARD(単数形)。RECORDS 複数形は未使用 | | 140 | REDEFINES | ◎ | REDEFINES(各種PGM WORKING-STORAGE) | | 141 | REMAINDER | ◎ | DIVIDE GIVING REMAINDER(ZAN01,ZAN05,SUB05,KIN07) | | 142 | REMOVAL | × | CLOSE FOR REMOVAL未使用 | | 143 | REPLACING | △ | COPY REPLACING(全プログラム)、INSPECT REPLACING(KIN08DBU,KIN09CSV)。INITIALIZE REPLACING未使用 | | 144 | RERUN | × | I-O-CONTROL段落未使用 | | 145 | RETURN-CODE | ◎ | JIN01KNS(MOVE 4 TO 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,JIN02SKL)、VARYING/AT END/WHEN全て使用 | | 149 | SECTION | ◎ | CONFIGURATION/INPUT-OUTPUT/WORKING-STORAGE/LINKAGE/PROCEDURE SECTION | | 150 | SELECT | ◎ | SELECT ASSIGN(FILE-CONTROL)全プログラム、SQL SELECT | | 151 | SENTENCE | ◎ | NEXT SENTENCE(JIN09RPT: レベル判定 ELSE 内) | | 152 | SET | ◎ | SET TO TRUE(KIN08DBU,ZAN05CAL)、SET TO FALSE(JIN09RPT: 条件名) | | 153 | SHIFT-IN | × | 未使用 | | 154 | SHIFT-OUT | × | 未使用 | | 155 | SIZE | ◎ | ON SIZE ERROR(COMPUTE:ZAN01CHK,ZAN03CHK,ZAN05CAL) | | 156 | SKIP2 | × | 未使用(ソース行 `*SKIP2` はコメントであり SKIP2 ディレクティブではない。W-1 で◎主張を是正) | | 157 | SOURCE-COMPUTER | ◎ | SOURCE-COMPUTER IBM-ZSERIES 全プログラム | | 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)、STOP literal(JIN04PRT: 9000ERRSOR) | | 163 | STRING | ◎ | STRING DELIMITED BY INTO使用。ON OVERFLOW(JIN04PRT, JIN05UPD: 全STRING箇所) | | 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 THEN(SUB04CHK,SUB05TIMで明示的THEN使用) | | 169 | THRU | △ | PERFORM THRU(KIN03EXP,KIN08DBU)。VALUE THRU(JIN05UPD: 88-level 'D' THRU 'G') | | 170 | TIME | △ | ACCEPT FROM TIME(JIN04PRT: 1000ITTSOR) | | 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 | × | 変数名(WRK-ERR-TYPE等)はあるがTYPE予約語としては未使用 | | 175 | UNSTRING | ◎ | UNSTRING DELIMITED BY INTO(KIN01INP,KIN04CHK,ZAN01CHK) | | 176 | UNTIL | ◎ | PERFORM UNTIL 全プログラム | | 177 | UP | × | 未使用 | | 178 | UPON | △ | DISPLAY UPON(JIN04PRT, JIN05UPD: UPON CONSOLE) | | 179 | USAGE | ◎ | USAGE COMP/COMP-3 | | 180 | USE | ◎ | USE AFTER ERROR PROCEDURE(KYU01CVT: DECLARATIVESでファイルエラー捕捉) | | 181 | USING | ◎ | PROCEDURE DIVISION USING、CALL USING 全プログラム | | 182 | VALUE | ◎ | VALUE 全プログラム(88条件名、初期値) | | 183 | VALUES | △ | EXEC SQL INSERT ... VALUES(KIN02UPD, KIN08DBU 等)。COBOL VALUE句複数指定は未使用 | | 184 | VARYING | ◎ | PERFORM VARYING(ZAN06UPD,KIN06CLD,KIN08DBU)、SEARCH VARYING(KIN01INP) | | 185 | WHEN | ◎ | EVALUATE WHEN、SEARCH WHEN | | 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/BEFORE ADVANCING/AFTER ADVANCING/END-OF-PAGE(KYU08PRI: 給与明細印刷のLINAGE制御) | | 190 | WRITE-ONLY | × | I-O-CONTROL段落未使用 | | 191 | ZERO | ◎ | ZERO/ZEROS VALUE、MOVE ZERO 全プログラム | | 192 | ZEROS | ◎ | ZEROS(ZEROと同義、KIN08DBU LOW-VALUES) | | 193 | ALTER | × | 非推奨 | | 194 | CANCEL | ◎ | CANCEL 'SUB02MSG'(JIN09RPT: 4000STPSOR) | | 195 | ENTRY | △ | KYU09MRG: ENTRY 'KYU09ENT' USING ENTRYPAR(代替エントリポイント定義) | | 196 | MERGE | ◎ | COBOL MERGE文(KYU09MRG: SALARY-NET + BONUS-DATA を社員番号昇順結合) | | 197 | RELEASE | ◎ | COBOL RELEASE文(JIN06SRT: 2110READSOR INPUT PROCEDURE内でSORTレコード送出) | | 198 | RETURN | ◎ | COBOL RETURN文(KYU09MRG: MERGE OUTPUT、JIN06SRT: 2120OUTPUSOR SORT OUTPUT PROCEDURE) | | 199 | REWRITE | × | VSAM非対応 | | 200 | SORT | ◎ | COBOL SORT文(JIN06SRT: 2000MAJSOR INPUT/OUTPUT PROCEDURE + ON ASCENDING KEY) | | 201 | START | × | 順次読込のみ | | 202 | SAME | △ | SAME SORT AREA(SHA08SRT/JIN06SRT: SORTWORK)。SAME RECORD未使用 | | 203 | FUNCTION | ◎ | FUNCTION MOD/WHEN-COMPILED/NUMVAL/INTEGER-OF-DATE/MIN/MAX/TRIM/LENGTH(KIN03EXP,KIN06CLD,KIN08DBU,KIN09CSV,JIN01KNS) | | 204 | BEFORE | ◎ | WRITE BEFORE ADVANCING PAGE/1 LINE(KYU08PRI: 給与明細印刷の改ページ制御) | | 205 | ADDRESS | △ | MOVE ADDRESS OF(JIN07SUB: 0000MAINSOR)。SET ADDRESS OF未使用 | ### 3.1 頻度別サマリ > 頻度区分は COBOLキーワード網羅定義書.md の「カテゴリ」(高頻度 / 低頻度)に基づく。 | 区分 | 総数 | ◎ | △ | × | 使用率(◎+△) | 完全使用率(◎) | |:----|:---:|:--:|:--:|:--:|:---:|:---:| | 高頻度 | 160 | 118 | 25 | 17 | 89.4% | 73.8% | | 低頻度 | 45 | 20 | 8 | 17 | 62.2% | 44.4% | | **合計** | **205** | **138** | **33** | **34** | **83.4%** | **67.3%** | #### 高頻度・未使用(17語) | 予約語 | 備考 | |:------|:-----| | APPLY | I-O-CONTROL 段落未使用 | | CHARACTERS | INSPECT CHARACTERS 未使用 | | CORR | MOVE CORRESPONDING(完全形)のみ。省略形は未使用 | | DISPLAY-1 | 未使用(日本語項目は PIC X) | | DOWN | SET DOWN BY 未使用 | | EJECT | EJECT ディレクティブ未使用(`*EJECT` コメントのみ) | | FIRST | INSPECT FIRST 未使用 | | PACKED-DECIMAL | 未使用(COMP-3 / BINARY を使用) | | PAGE-COUNTER | 未使用(WORKING-STORAGE で代替) | | RECORDS | FD LABEL RECORD(単数形)を使用 | | REMOVAL | CLOSE FOR REMOVAL 未使用 | | SKIP2 | ディレクティブ未使用(`*SKIP2` コメントのみ) | | TABLE | SEARCH TABLE 句未使用(変数名のみ) | | UP | SET UP BY 未使用 | | WRITE-ONLY | I-O-CONTROL 段落未使用 | | REWRITE | VSAM 非対応 | | START | 順次読込のみ | #### 低頻度・未使用(17語) | 予約語 | 備考 | |:------|:-----| | AUTHOR | IDENTIFICATION 段落未使用 | | CONDITION | 条件名定義句未使用 | | DATE-COMPILED | IDENTIFICATION 段落未使用 | | DATE-WRITTEN | IDENTIFICATION 段落未使用 | | DELIMITER | UNSTRING DELIMITER IN 未使用 | | DYNAMIC | ACCESS MODE DYNAMIC 未使用 | | EXECUTE | 非推奨(未使用) | | GET | 未使用 | | ID | PROGRAM-ID 以外の ID 未使用 | | INVALID | INVALID KEY 句未使用(VSAM 非対応) | | OPTIONS | CBL/PROCESS 文未使用 | | RANDOM | ACCESS MODE RANDOM 未使用 | | RERUN | I-O-CONTROL 段落未使用 | | SHIFT-IN | DBCS シフト制御未使用 | | SHIFT-OUT | DBCS シフト制御未使用 | | TYPE | 変数名(WRK-ERR-TYPE 等)のみで TYPE 句未使用 | | ALTER | 非推奨(未使用) | --- ## 4. 全体サマリ | 指標 | 値 | |------|:----:| | **プログラムタイプカバレッジ(36タイプ)** | | | ◎(使用) | 35 / 36 | | ×(未使用) | 1 / 36 | | カバレッジ率(◎/36) | 97.2% | | 実装対象限定(SHA未実装時基準) | 24 / 36 = 66.7% | | **PICTURE記号カバレッジ(Section 2.1)** | | | 全記号数(11種) | 11 | | 使用済記号(◎+△) | 10 | | 未使用記号(×) | 1 | | カバレッジ率 | 90.9% | | **予約語カバレッジ(Section 3)** | | | 全予約語数 | 205 | | 全構文形式使用(◎): | 138 | | 一部構文形式使用(△): | 33 | | 未使用(×) | 34 語 | 全コード再スキャン(2026-08-06)で確定 | | カバレッジ率(◎/205) | 67.3% | | カバレッジ率(◎+△/205) | 83.4% | | **予約語カバレッジ(頻度別)** | | | 高頻度予約語(160語) | 143 使用 / 17 未使用 | | 高頻度カバレッジ率 | 89.4% | | 低頻度予約語(45語) | 28 使用 / 17 未使用 | | 低頻度カバレッジ率 | 62.2% | | **TYPE定義カバレッジ(11種)** | | | 全TYPE定義数 | 11 | | 使用済TYPE | 10(X, N, 9, 9V9, S9V9, S9V9 COMP-3, S9 COMP-3, S9 COMP, S9 BINARY, ZZZ9) | | 特殊形式(補足) | 4(9(004).9(001), S9 DISPLAY, +9(009), PIC N) | | 未使用TYPE | 1(G) | | TYPEカバレッジ率 | 90.9%(特殊含め100%) | > 本ファイルは全コードベース(JIN01-09 + KIN01-09 + ZAN01-06 + KYU01-09 + SHA01-10 + SUB01-05 = 48プログラム)を統合したカバレッジ状況。 > 定義ファイル(COBOLキーワード網羅定義書.md)と合わせて参照すること。