サブシステムEをJIN04PRT〜JIN08TST追加で9本に拡充(全48プログラム)。JIN01-09のIBM COBOL完全版・bin再ビルド版・設計書・使用資源一覧・カバレッジ統計・DDL(schema_jin)・COPY(DB-COMMON/JIN04RPT-REC/JIN05REC)をroot側最新に同期。KYU03AGG/KYU08PRI/SHA02MNC/SHA10S10再テスト済み(全PASS)
This commit is contained in:
+44
-43
@@ -15,12 +15,12 @@
|
||||
| 01 | マッチング(1:1) | 匹配 | ZAN04MAT | ◎ |
|
||||
| 02 | マッチング(1:N) | 匹配 | KIN05MAT, KIN03EXP | ◎ |
|
||||
| 03 | マッチング(N:1) | 匹配 | ZAN03CHK | ◎ |
|
||||
| 04 | レイアウト編集のみ(GETPUT) | 编辑 | KIN06CLD, KYU08PRI | ◎ |
|
||||
| 05 | 振り分け(IF文) | 分支 | 全メインプログラム(37本) | ◎ |
|
||||
| 06 | 振り分け(EVALUATE文) | 分支 | 37本中25本(KIN04/KIN06以外、SHA01~SHA08はIF主体) | ◎ |
|
||||
| 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 | ◎ |
|
||||
| 09 | DB更新 | 数据库 | KIN02UPD, ZAN06UPD, KYU02REG, KYU06UPD, JIN05UPD | ◎ |
|
||||
| 10 | 50分割 | 分割 | KYU07DIV | ◎ |
|
||||
| 11 | 25分割 | 分割 | SHA09S25 | ◎ |
|
||||
| 12 | 100分割 | 分割 | SHA10S10 | ◎ |
|
||||
@@ -37,7 +37,7 @@
|
||||
| 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 | ◎ |
|
||||
| 25 | サブプログラム使用 | 内部处理 | SUB01DAT~SUB05TIM, JIN07SUB | ◎ |
|
||||
| 26 | DB検索 | 数据库 | KIN03EXP, KIN06CLD, KYU04CAL, KYU05DED | ◎ |
|
||||
| 27 | 項目チェック(半角20桁/4桁) | 校验 | JIN01KNS | ◎ |
|
||||
| 28 | SYSIN読込 | 内部处理 | KIN08DBU, KYU07DIV | ◎ |
|
||||
@@ -46,7 +46,7 @@
|
||||
| 31 | 項目チェック(重複含む) | 校验 | ZAN02CHK(時間帯重複) | ◎ |
|
||||
| 32 | 1:N+キーブレイク(同キー) | 混合 | KYU04CAL | ◎ |
|
||||
| 33 | 1:N+キーブレイク(異キー) | 混合 | SHA07KBR | ◎ |
|
||||
| 34 | SORT(INPUT/OUTPUT PROCEDURE) | 排序 | SHA08SRT | ◎ |
|
||||
| 34 | SORT(INPUT/OUTPUT PROCEDURE) | 排序 | SHA08SRT, JIN06SRT | ◎ |
|
||||
| 35 | MERGE(複数ファイル結合) | 排序 | KYU09MRG | ◎ |
|
||||
|
||||
### 1.2 集計
|
||||
@@ -121,15 +121,15 @@
|
||||
| 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未使用 |
|
||||
| 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 REFERENCE/CONTENT/VALUE未使用 |
|
||||
| 19 | CALL | △ | CALL USING使用。ON EXCEPTION/NOT ON EXCEPTION未使用 |
|
||||
| 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 | × | OBJECT-COMPUTER未使用 |
|
||||
| 21 | CHARACTERS | ◎ | INSPECT CHARACTERS(ZAN01CHK,KIN04CHK,SUB04CHK) |
|
||||
| 22 | CLOSE | △ | CLOSE(単純CLOSEのみ)。WITH LOCK/NO REWIND/REEL/FOR REMOVAL未使用 |
|
||||
| 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) |
|
||||
@@ -144,7 +144,7 @@
|
||||
| 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未使用(SUB01DATはFUNCTION CURRENT-DATE使用) |
|
||||
| 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) |
|
||||
@@ -153,13 +153,13 @@
|
||||
| 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/WITH NO ADVANCING未使用 |
|
||||
| 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 | △ | SET DOWN BY 1 (JIN03RAN: 終了処理) |
|
||||
| 50 | DOWN | × | 未使用 |
|
||||
| 51 | DYNAMIC | × | 未使用 |
|
||||
| 52 | EJECT | × | 未使用 |
|
||||
| 52 | EJECT | ◎ | ソース行 EJECT(JIN09RPT: PROCEDURE DIVISION 直後) |
|
||||
| 53 | ELSE | ◎ | IF ELSE END-IF 全プログラム |
|
||||
| 54 | END | ◎ | END-IF、END-READ、END-PERFORM等スコープターミネータ 全プログラム |
|
||||
| 55 | END-ADD | ◎ | JIN02SKL(ADD END-ADD) |
|
||||
@@ -179,10 +179,10 @@
|
||||
| 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未使用 |
|
||||
| 72 | EXCEPTION | ◎ | CALL ON EXCEPTION(JIN05UPD/JIN08TST: 1000ITTSOR SUB01DAT呼出) |
|
||||
| 73 | EXECUTE | × | 未使用 |
|
||||
| 74 | EXIT | △ | EXIT(段落終端)全プログラム、EXIT PERFORM(KIN06CLD,KIN07DAI,KIN08DBU)、EXIT SECTION(KIN08DBU)。EXIT PROGRAM/EXIT PARAGRAPH/EXIT METHOD未使用 |
|
||||
| 75 | FALSE | × | SET TO FALSE未使用 |
|
||||
| 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 全プログラム |
|
||||
@@ -196,14 +196,14 @@
|
||||
| 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段落不使用 |
|
||||
| 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(基本形)全プログラム。JIN01KNSはINITIALIZE後の88-LevelにMOVE '0'で対応。REPLACING/WITH FILLER未使用 |
|
||||
| 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(コンパイラ指示文)未使用 |
|
||||
@@ -219,13 +219,13 @@
|
||||
| 109 | MODE | ◎ | RECORDING MODE F/V |
|
||||
| 110 | MOVE | ◎ | MOVE TO 全20プログラム |
|
||||
| 111 | MULTIPLY | ◎ | MULTIPLY BY/GIVING/ROUNDED(KIN07DAI,ZAN06UPD) |
|
||||
| 112 | NEXT | × | READ NEXT未使用(順次読込のみ) |
|
||||
| 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 OMITTED未使用 |
|
||||
| 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文未使用 |
|
||||
@@ -237,7 +237,7 @@
|
||||
| 127 | PACKED-DECIMAL | △ | JIN02SKL(AGG-LEVEL/AGG-AVG-SCORE PIC 9(n) PACKED-DECIMAL) |
|
||||
| 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使用。TIMES/TEST BEFORE/VARYING AFTER未使用 |
|
||||
| 130 | PERFORM | ◎ | PERFORM(外部段落)/UNTIL/VARYING/THRU/TEST AFTER使用。JIN09RPTでVARYING多重ループ(社員×明細×内部表20) |
|
||||
| 131 | PIC | ◎ | PICTURE句 全プログラム |
|
||||
| 132 | POINTER | ◎ | STRING WITH POINTER(KIN09CSV) |
|
||||
| 133 | PROCEDURE | ◎ | PROCEDURE DIVISION 全プログラム |
|
||||
@@ -258,34 +258,34 @@
|
||||
| 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未使用 |
|
||||
| 152 | SET | △ | SET TO TRUE(KIN08DBU,ZAN05CAL)。SET TO FALSE/UP BY/DOWN BY/ADDRESS OF未使用 |
|
||||
| 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 | × | 未使用(SKIP1/SKIP2/SKIP3) |
|
||||
| 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未使用 |
|
||||
| 163 | STRING | △ | STRING DELIMITED BY INTO使用。ON OVERFLOW未使用 |
|
||||
| 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未使用 |
|
||||
| 170 | TIME | × | ACCEPT FROM TIME未使用(SUB01DATはFUNCTION CURRENT-DATE使用) |
|
||||
| 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 | △ | SET UP BY (JIN03RAN: 順位UP 出力件数UP) |
|
||||
| 178 | UPON | × | DISPLAY UPON未使用 |
|
||||
| 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 全プログラム |
|
||||
@@ -301,18 +301,18 @@
|
||||
| 191 | ZERO | ◎ | ZERO/ZEROS VALUE、MOVE ZERO 全プログラム |
|
||||
| 192 | ZEROS | ◎ | ZEROS(ZEROと同義、KIN08DBU LOW-VALUES) |
|
||||
| 193 | ALTER | × | 非推奨 |
|
||||
| 194 | CANCEL | × | 未使用 |
|
||||
| 194 | CANCEL | ◎ | CANCEL 'SUB02MSG'(JIN09RPT: 4000STPSOR) |
|
||||
| 195 | ENTRY | × | 未使用 |
|
||||
| 196 | MERGE | ◎ | COBOL MERGE文(KYU09MRG: SALARY-NET + BONUS-DATA を社員番号昇順結合) |
|
||||
| 197 | RELEASE | × | COBOL SORT未使用 |
|
||||
| 198 | RETURN | ◎ | COBOL RETURN文(KYU09MRG: MERGE OUTPUT PROCEDUREでMERGE結果受取) |
|
||||
| 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 | × | JCL PGM=SORTに委譲 |
|
||||
| 200 | SORT | ◎ | COBOL SORT文(JIN06SRT: 2000MAJSOR INPUT/OUTPUT PROCEDURE + ON ASCENDING KEY) |
|
||||
| 201 | START | × | 順次読込のみ |
|
||||
| 202 | SAME | × | SAME RECORD/SORT AREA未使用 |
|
||||
| 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 | × | ADDRESS OF未使用(SET ADDRESS OF未使用) |
|
||||
| 205 | ADDRESS | △ | MOVE ADDRESS OF(JIN07SUB: 0000MAINSOR)。SET ADDRESS OF未使用 |
|
||||
|
||||
---
|
||||
|
||||
@@ -332,11 +332,12 @@
|
||||
| カバレッジ率 | 90.9% |
|
||||
| **予約語カバレッジ(Section 3)** | |
|
||||
| 全予約語数 | 205 |
|
||||
| 全構文形式使用(◎): | 119 |
|
||||
| 一部構文形式使用(△): | 29 |
|
||||
| 未使用(×) | 51 語 | Phase A除去: ACCESS/CHARACTER/EXCEPTION/ORGANIZATION/PAGE-COUNTER/UPON に加え VALUES(カバレッジ保留) |
|
||||
| カバレッジ率(◎/205) | 58.0% |
|
||||
| カバレッジ率(◎+△/205) | 75.1% | Phase A+B COMP-4/CORR/DESCENDING/DOWN/UP追加以降 |
|
||||
| 全構文形式使用(◎): | 147 |
|
||||
| 一部構文形式使用(△): | 28 |
|
||||
| 未使用(×) | 30 語 | JIN07SUB/JIN08TST追加後(OMITTED を◎化、ADDRESS を△化。SKIP2 はコメント行のため × に是正) |
|
||||
|
||||
| カバレッジ率(◎/205) | 71.7% |
|
||||
| カバレッジ率(◎+△/205) | 85.4% | JIN07SUB/JIN08TST追加後(OMITTED ◎化、ADDRESS △化。SKIP2 × 是正) |
|
||||
| **TYPE定義カバレッジ(11種)** | |
|
||||
| 全TYPE定義数 | 11 |
|
||||
| 使用済TYPE | 10(X, N, 9, 9V9, S9V9, S9V9 COMP-3, S9 COMP-3, S9 COMP, S9 BINARY, ZZZ9) |
|
||||
@@ -344,7 +345,7 @@
|
||||
| 未使用TYPE | 1(G) |
|
||||
| TYPEカバレッジ率 | 90.9%(特殊含め100%) |
|
||||
|
||||
> 本ファイルは全コードベース(JIN01-03 + KIN01-09 + ZAN01-06 + KYU01-09 + SHA01-10 + SUB01-05 = 42プログラム)を統合したカバレッジ状況。
|
||||
> 本ファイルは全コードベース(JIN01-09 + KIN01-09 + ZAN01-06 + KYU01-09 + SHA01-10 + SUB01-05 = 48プログラム)を統合したカバレッジ状況。
|
||||
> 定義ファイル(COBOLキーワード網羅定義書.md)と合わせて参照すること。
|
||||
|
||||
---
|
||||
|
||||
@@ -0,0 +1,114 @@
|
||||
# サブシステムE(人事情報管理)整合性レビュー報告書
|
||||
|
||||
> 作成日: 2026-08-01
|
||||
> 対象: 基本設計書 / 詳細設計書 / コード(src) / COPY定義 / 使用資源一覧 / テスト / カバレッジ統計
|
||||
|
||||
---
|
||||
|
||||
## 1. 検証範囲と実施内容
|
||||
|
||||
基本設計書に計画されるプログラム 9 本(JIN01KNS〜JIN09RPT)に対し、以下をレビューした:
|
||||
|
||||
- 基本設計書の設計合理性・ロジック
|
||||
- 詳細設計書・コード・COPY 定義の整合性(レコード長・DD・COPY・CALL)
|
||||
- IBM COBOL 適合性(予約語・固定書式・コーディング規約)
|
||||
- テスト充足性(全ケース実行・テスト基準との一致)
|
||||
- 使用資源一覧・カバレッジ統計の最新状況
|
||||
|
||||
GnuCOBOL 3.2.0 で全実在プログラムのコンパイル・テスト実実行済み。
|
||||
|
||||
---
|
||||
|
||||
## 2. 実装状況の実測
|
||||
|
||||
| プログラム | 基本設計 | src実装 | 詳細設計書 | 使用資源一覧 | テスト | テスト結果文書 | production反映 |
|
||||
|:---|:---:|:---:|:---:|:---:|:---:|:---:|:---:|
|
||||
| JIN01KNS | ○ | ○ | ○ | ○ | ○ | × | ○ |
|
||||
| JIN02SKL | ○ | ○ | ○ | ○ | ○ | × | ○ |
|
||||
| JIN03RAN | ○ | ○ | ○ | ○ | ○ | × | ○ |
|
||||
| JIN04PRT | ○ | ○ | **×** | ○ | ○ | × | **×** |
|
||||
| JIN05UPD | ○ | ○ | **×** | ○ | ○ | × | **×** |
|
||||
| JIN06SRT | ○ | **×** | × | × | × | × | **×** |
|
||||
| JIN07SUB | ○ | **×** | × | × | × | × | **×** |
|
||||
| JIN08TST | ○ | **×** | × | × | × | × | **×** |
|
||||
| JIN09RPT | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
|
||||
|
||||
**計画 9 本に対して実装は 6 本。JIN06SRT / JIN07SUB / JIN08TST は未着手。**
|
||||
|
||||
---
|
||||
|
||||
## 3. 問題点リスト(重要度順)
|
||||
|
||||
### 🔴 高重要度(対応必須)
|
||||
|
||||
**H-1. JIN06SRT / JIN07SUB / JIN08TST が完全未実装**
|
||||
- 基本設計書には計画 9 本・予約語カバー対象(SORT/RELEASE/PERFORM TIMES/EXIT PROGRAM/ADDRESS/OMITTED/EXIT PARAGRAPH)と記載
|
||||
- しかし src にコード無し、詳細設計書・テスト・使用資源一覧・production 全て未着手
|
||||
- SORT/RELEASE/ADDRESS/OMITTED はこの 3 本でしかカバーできない予約語のため、**カバレッジ統計の「×」リストにも現状は未達のまま**
|
||||
|
||||
**H-2. SKIP2 予約語カバーの「◎」主張が虚偽**
|
||||
- `品質管理/カバレッジ統計.md`・`使用資源一覧/JIN09RPT_使用資源一覧.md`・基本設計書に「SKIP2 ◎(段落境界)」と記録
|
||||
- しかし全コード中に SKIP2 ディレクティブが**皆無**。JIN09RPT.cbl:12 はヘッダコメント記載のみ、JIN04PRT/JIN05UPD の`*SKIP2` も col7=`*` のコメント行
|
||||
- 実態は **◎144 / ×35**(表示 83.4% でなく **82.4%**)
|
||||
- 直近コミット 415427a の「6語(CANCEL/I-O-CONTROL/NEXT SENTENCE/EJECT/SKIP2/FALSE)カバー」は実際 **5 語**(SKIP2 除く)
|
||||
|
||||
**H-3. JIN04PRT / JIN05UPD が production/ 未反映**
|
||||
- 両プログラムは root 実装済み・テスト PASS なのに production/ に存在せず git 未反映
|
||||
|
||||
**H-4. JIN03RAN の `SET ... UP/DOWN BY` が IBM COBOL でコンパイル不可**
|
||||
- `src/JIN03RAN.cbl:206, 251, 288`:`SET WRK-RANK-NO UP BY 1` 等の対象が `PIC 9(004)`・`PIC 9(004) BINARY` の**数値項目**
|
||||
- IBM Enterprise COBOL の `SET ... UP/DOWN BY` は**インデックス名専用**。数値項目には使用不可 → コンパイルエラー
|
||||
- GnuCOBOL はエラーなく受け付けるためローカルでは通過(潜在的本番障害)
|
||||
|
||||
**H-5. production 側カバレッジ統計が root と 63 行差分・かつ内部矛盾**
|
||||
- production 側 `カバレッジ統計.md`:119+29+51=199 ≠ 205、率も記載 75.1% と矛盾
|
||||
|
||||
---
|
||||
|
||||
## 4. 重要度:中(対応推奨)
|
||||
|
||||
- **M-1. JIN04PRT・JIN05UPD の詳細設計書が存在しない**(root/production 双方)。開発フロー Phase 3(設計書解析→実装)に違反、双方向トレーサビリティ欠如
|
||||
- **M-2. カバレッジ統計のプログラム数・タイプ数が JIN09RPT 追加後未更新**(「39本」「44プログラム」等。実際は 40 本)
|
||||
- **M-3. SEARCH ALL の「SKILL-MST 昇順」前提が JCL/設計書で未担保**(JIN02SKL・JIN09RPT)。JINJ020/JINJ090 に PGM=SORT 手順がなく、未ソート入力時の誤動作リスク
|
||||
- **M-4. JIN09RPT の ODO(OCCURS 1 TO 20 DEPENDING ON)初期値 0 が IBM の未定義動作リスク**(範囲外参照。GnuCOBOL は検出せず PASS)。SSRANGE 有効時は実行時 ABEND
|
||||
- **M-5. SKILL-MST-REC の BINARY レコード長差異**:GnuCOBOL=79B / IBM=80B(`PIC 9(002) BINARY` のバイト数差)。単に長さだけでなく MST-LEVEL-NAME のオフセットもずれる
|
||||
- **M-6. JIN09RPT の内部表定義が詳細設計書と不一致**(TBL-LEVEL 等)
|
||||
- **M-7. 詳細設計書(JIN01/02/03/09)の段落名が実コードの SOR 規約名と完全不一致**(概念名 JIN01KNS-OPEN 等 vs 実装 1000ITTSOR 等)。トレーサビリティ崩壊
|
||||
- **M-8. 使用資源一覧の誤記**:JIN01KNS(VALID-ERROR-REC 帰属、JIN01REC 内と誤記載)、JIN02SKL(SUB02MSG CALL箇所 4000→6000、JIN01REC 誤使用)、JIN09RPT(SKIP2 誤記載)
|
||||
- **M-9. JIN05UPD のキーワードカバー実体不在**:FALSE / EXIT PARAGRAPH がコメントのみで実装なし、VALID-ERROR-REC COPY を使用せず内約定義
|
||||
- **M-10. 基本設計書のレコード長矛盾**:JIN-LEDGER が行 40=132B なのに行 117=133B。実規格は 132B
|
||||
- **M-11. JIN01〜05 のテスト結果文書が未作成**(テスト結果_KYU.md・テスト結果_JIN09RPT.md のみ)
|
||||
- **M-12. JIN09RPT の MST>20 件時のオーバーフローガード無し**(SKILL-LIST-MAX=20 がコード未反映)
|
||||
|
||||
---
|
||||
|
||||
## 5. 中:テスト充足性の不足点
|
||||
|
||||
| プログラム | 不足ケース |
|
||||
|:---|:---|
|
||||
| JIN01KNS | 全角混入(VF-A002)、MEI 単独エラー |
|
||||
| JIN02SKL | MST 重複キー、SEARCH ALL 未ソート表、ODO 空表検索、純粋 1:1 |
|
||||
| JIN03RAN | (網羅度高。概ね充足) |
|
||||
| JIN04PRT | LINAGE 境界(FOOTING/TOP/BOTTOM 最大行)、PAGE-COUNTER 値検証、DATE/TIME/ON OVERFLOW 実例 |
|
||||
| JIN05UPD | SQLCODE≠0(3400DBERRSOR)、上限500件ガード(CNS-MAX-TRANS)、CONNECT 失敗分岐 |
|
||||
| JIN09RPT | MST 0 件×R01 複数、境界 89/51/1、S=100/90 解釈 |
|
||||
|
||||
---
|
||||
|
||||
## 6. まとめ:全体評価と推奨対応
|
||||
|
||||
**機能面**:実装 6 本は全て GnuCOBOL でコンパイル・テスト PASS。DD/CALL/COPY/レコード長・DB 定義(ddl/schema_jin.sql)の整合は概ね健全。IBM COBOL 適合の基本要件(SOURCE-COMPUTER、カラム位置、88-level 引用符、コメント方式、`>>SOURCE` 混入なし)はほぼ全項目合格。
|
||||
|
||||
**工程・整合面**:以下が特に重要。
|
||||
1. **JIN06SRT/07SUB/08TST の実装が未完了**(基本設計上の予約語カバー対象もカバーできない)
|
||||
2. **SKIP2 の◎主張が虚偽**(統計・資源一覧・コミット記述の是正 or SKIP2 実装)
|
||||
3. **JIN03RAN の `SET` 非インデックス利用は IBM 本番でエラー**(最重要修正)
|
||||
|
||||
**推奨アクション(対応優先順)**
|
||||
1. JIN03RAN.cbl の `SET ... UP/DOWN` を `ADD/SUBTRACT` に修正(H-4)
|
||||
2. SKIP2 の記載整合:実装 or 統計・資源一覧・コミットの修正(H-2)
|
||||
3. JIN04PRT・JIN05UPD の production 反映と詳細設計書作成(H-3, M-1)
|
||||
4. JIN06SRT/07SUB/08TST の実装(H-1)— 大規模、要計画立案
|
||||
5. カバレッジ統計・使用資源一覧・基本設計書の矛盾是正(M-2, M-7〜M-10)
|
||||
6. 不足テストケースの追加(Section 5)
|
||||
7. production カバレッジ統計の root 同期(H-5)
|
||||
Reference in New Issue
Block a user