Remove list/ from git tracking
This commit is contained in:
@@ -1,193 +0,0 @@
|
||||
ACCEPT
|
||||
ACCESS
|
||||
ADD
|
||||
AFTER
|
||||
ALL
|
||||
ALPHABETIC
|
||||
ALPHABETIC-UPPER
|
||||
ALSO
|
||||
AND
|
||||
ANY
|
||||
APPLY
|
||||
ASCENDING
|
||||
ASSIGN
|
||||
AT
|
||||
AUTHOR
|
||||
BINARY
|
||||
BLOCK
|
||||
BY
|
||||
CALL
|
||||
CHARACTER
|
||||
CHARACTERS
|
||||
CLOSE
|
||||
COMP
|
||||
COMP-3
|
||||
COMP-4
|
||||
COMPUTE
|
||||
CONDITION
|
||||
CONFIGURATION
|
||||
CONTAINS
|
||||
CONTINUE
|
||||
CONVERTING
|
||||
COPY
|
||||
CORR
|
||||
COUNT
|
||||
CURSOR
|
||||
DATA
|
||||
DATE
|
||||
DATE-COMPILED
|
||||
DATE-WRITTEN
|
||||
DECLARATIVES
|
||||
DELETE
|
||||
DELIMITED
|
||||
DELIMITER
|
||||
DEPENDING
|
||||
DESCENDING
|
||||
DISPLAY
|
||||
DISPLAY-1
|
||||
DIVIDE
|
||||
DIVISION
|
||||
DOWN
|
||||
DYNAMIC
|
||||
EJECT
|
||||
ELSE
|
||||
END
|
||||
END-ADD
|
||||
END-CALL
|
||||
END-COMPUTE
|
||||
END-DIVIDE
|
||||
END-EVALUATE
|
||||
END-EXEC
|
||||
END-IF
|
||||
END-PERFORM
|
||||
END-READ
|
||||
END-SEARCH
|
||||
END-STRING
|
||||
END-SUBTRACT
|
||||
END-UNSTRING
|
||||
ENVIRONMENT
|
||||
ERROR
|
||||
EVALUATE
|
||||
EXCEPTION
|
||||
EXEC
|
||||
EXECUTE
|
||||
EXIT
|
||||
FALSE
|
||||
FD
|
||||
FILE
|
||||
FILE-CONTROL
|
||||
FILLER
|
||||
FIRST
|
||||
FOR
|
||||
FROM
|
||||
FUNCTION
|
||||
GET
|
||||
GIVING
|
||||
GO
|
||||
GOBACK
|
||||
GREATER
|
||||
HIGH-VALUE
|
||||
I-O-CONTROL
|
||||
ID
|
||||
IDENTIFICATION
|
||||
IF
|
||||
IN
|
||||
INDEXED
|
||||
INITIAL
|
||||
INITIALIZE
|
||||
INPUT
|
||||
INPUT-OUTPUT
|
||||
INSERT
|
||||
INSPECT
|
||||
INTO
|
||||
INVALID
|
||||
IS
|
||||
KEY
|
||||
LABEL
|
||||
LENGTH
|
||||
LINKAGE
|
||||
LOW-VALUE
|
||||
MODE
|
||||
MOVE
|
||||
MULTIPLY
|
||||
NEXT
|
||||
NOT
|
||||
NUMERIC
|
||||
OBJECT-COMPUTER
|
||||
OCCURS
|
||||
OF
|
||||
OMITTED
|
||||
ON
|
||||
OPEN
|
||||
OPTIONS
|
||||
OR
|
||||
ORDER
|
||||
ORGANIZATION
|
||||
OTHER
|
||||
OUTPUT
|
||||
PACKED-DECIMAL
|
||||
PAGE
|
||||
PAGE-COUNTER
|
||||
PERFORM
|
||||
PIC
|
||||
POINTER
|
||||
PROCEDURE
|
||||
PROGRAM-ID
|
||||
RANDOM
|
||||
READ
|
||||
RECORD
|
||||
RECORDING
|
||||
RECORDS
|
||||
REDEFINES
|
||||
REMAINDER
|
||||
REMOVAL
|
||||
REPLACING
|
||||
RERUN
|
||||
RETURN-CODE
|
||||
ROUNDED
|
||||
RUN
|
||||
SEARCH
|
||||
SECTION
|
||||
SELECT
|
||||
SENTENCE
|
||||
SET
|
||||
SHIFT-IN
|
||||
SHIFT-OUT
|
||||
SIZE
|
||||
SKIP2
|
||||
SOURCE-COMPUTER
|
||||
SPACE
|
||||
SPACES
|
||||
SQL
|
||||
STANDARD
|
||||
STOP
|
||||
STRING
|
||||
SUBTRACT
|
||||
TABLE
|
||||
TALLYING
|
||||
TEST
|
||||
THEN
|
||||
THRU
|
||||
TIME
|
||||
TIMES
|
||||
TO
|
||||
TRUE
|
||||
TYPE
|
||||
UNSTRING
|
||||
UNTIL
|
||||
UP
|
||||
UPON
|
||||
USAGE
|
||||
USE
|
||||
USING
|
||||
VALUE
|
||||
VALUES
|
||||
VARYING
|
||||
WHEN
|
||||
WHEN-COMPILED
|
||||
WITH
|
||||
WORK ING-STORAGE
|
||||
WRITE
|
||||
WRITE-ONLY
|
||||
ZERO
|
||||
ZEROS
|
||||
@@ -1,29 +0,0 @@
|
||||
マッチング処理(1:1)
|
||||
マッチング処理(1:N)
|
||||
マッチング処理(N:1)
|
||||
マッチング処理(M:N)→出力N件
|
||||
マッチング処理(M:N)→出力M件
|
||||
マッチング処理(M:N)→出力MxN件
|
||||
マッチング処理(1:N)+キープレイク処理(ブレイクキー=マッチングキーの場合)
|
||||
マッチング処理(1:N)+キーブレイク処理(ブレイクキー>マッチングキーの場合)
|
||||
キーブレイク処理(集計)
|
||||
キーブレイク処理(集約)
|
||||
キーブレイク処理(集計、集約以外の場合)
|
||||
レイアウト編集のみ(GETPUT)
|
||||
項目チェック(重複チェックを合まない場合)
|
||||
項目チェック(重複チェックも含む場合)
|
||||
振り分け(IF文)
|
||||
振り分け(EVALUATE文)
|
||||
内部テープル検索
|
||||
DB更新
|
||||
CSV→FB変換(改行コードなし)
|
||||
CSV→FB変換(改行コードあり)
|
||||
オンラインPGM
|
||||
25分割
|
||||
50分割
|
||||
100分割
|
||||
2段階マッチング(N:1→N:1)
|
||||
2段階マッチング(M:N=M:N)(2入力ファイル)
|
||||
2段階マッチング(1:1=1:1)
|
||||
SYSINの読み込む、チェック処理
|
||||
ASCII→EBCDIC変換
|
||||
@@ -1,11 +0,0 @@
|
||||
X(m) ※m,n:数字
|
||||
G(m)
|
||||
N(m)
|
||||
9(m)
|
||||
9(m)V9(n)
|
||||
S9(m)V9(n)
|
||||
S9(m)V9(n) COMP-3
|
||||
S9(m) COMP-3
|
||||
S9(m) COMP
|
||||
S9(m) BINARY
|
||||
ZZZ9 ※Zの個数は固定ではなく、1~8である
|
||||
@@ -1,49 +0,0 @@
|
||||
Accept
|
||||
Add
|
||||
AlteredGoto
|
||||
Alter
|
||||
Ca11
|
||||
Cancel
|
||||
Close
|
||||
Compute
|
||||
Continue
|
||||
Delete
|
||||
Display
|
||||
Divide
|
||||
Entry
|
||||
Evaluate
|
||||
Evaluate
|
||||
ExecCics
|
||||
ExecSql
|
||||
ExitProgram
|
||||
Exit
|
||||
Goback
|
||||
Goto
|
||||
If
|
||||
Initialize
|
||||
Inspect
|
||||
Merge
|
||||
Move
|
||||
Multiply
|
||||
Open
|
||||
PerformAfter
|
||||
Perform
|
||||
PerformUntil
|
||||
Performvarying
|
||||
Read
|
||||
PerformUntil
|
||||
PerformVarying
|
||||
Read
|
||||
Release
|
||||
Return
|
||||
Rewrite
|
||||
Search
|
||||
Set
|
||||
Sort
|
||||
Start
|
||||
Stop
|
||||
String
|
||||
Subt ract
|
||||
Unstring
|
||||
Write
|
||||
WriteStatement
|
||||
@@ -1,481 +0,0 @@
|
||||
================================================================================
|
||||
プログラムタイプ・ステートメント カバレッジ状況
|
||||
確認日時: 2026-06-16 22:53
|
||||
確認対象プログラム:
|
||||
ZAN01CHK (振り分け)
|
||||
ZAN02CHK (項目チェック・重複)
|
||||
ZAN03CHK (項目チェック・打刻照合)
|
||||
ZAN04MAT (マッチング1:1)
|
||||
ZAN05CAL (キーブレイク集計)
|
||||
ZAN06UPD (DB更新)
|
||||
SUB01DAT (運用日付取得)
|
||||
SUB02MSG (メッセージ編集出力)
|
||||
SUB03END (ABEND処理)
|
||||
SUB04CHK (項目チェック)
|
||||
SUB05TIM (時刻丸め計算)
|
||||
確認対象COPYファイル:
|
||||
ZAN01REC, ZAN02REC, ZAN03REC, ZAN04REC, ZAN05REC
|
||||
ZANDATAC, ZANMSGAC, ZANENDAC, ZANCHKAC, ZANTIMAC
|
||||
================================================================================
|
||||
|
||||
[1] プログラムタイプ カバレッジ状況(PGMパターン一覧.txt 準拠)
|
||||
--------------------------------------------------------------------------------
|
||||
No | パターン | 状態 | 該当プログラム
|
||||
----+----------------------------------------------------+------+---------------------------
|
||||
1 | マッチング処理(1:1) | ◎ | ZAN04MAT
|
||||
2 | マッチング処理(1:N) | × | 未作成
|
||||
3 | マッチング処理(N:1) | × | 未作成
|
||||
4 | マッチング処理(M:N)→出力N件 | × | 未作成
|
||||
5 | マッチング処理(M:N)→出力M件 | × | 未作成
|
||||
6 | マッチング処理(M:N)→出力MxN件 | × | 未作成
|
||||
7 | マッチング処理(1:N)+キーブレイク処理 | × | 未作成
|
||||
8 | マッチング処理(1:N)+キーブレイク処理 | × | 未作成
|
||||
| (ブレイクキー>マッチングキーの場合) | |
|
||||
9 | キーブレイク処理(集計) | ◎ | ZAN05CAL
|
||||
10 | キーブレイク処理(集約) | × | 未作成
|
||||
11 | キーブレイク処理(集計、集約以外の場合) | × | 未作成
|
||||
12 | レイアウト編集のみ(GETPUT) | × | 未作成
|
||||
13 | 項目チェック(重複チェックを含まない場合) | ◎ | ZAN03CHK
|
||||
14 | 項目チェック(重複チェックも含む場合) | ◎ | ZAN02CHK
|
||||
15 | 振り分け(IF文) | × | 未作成(ZAN01CHKはEVALUATE)
|
||||
16 | 振り分け(EVALUATE文) | ◎ | ZAN01CHK
|
||||
17 | 内部テーブル検索 | ○ | ZAN03CHK(SEARCH ALL使用)
|
||||
18 | DB更新 | ◎ | ZAN06UPD
|
||||
19 | CSV→FB変換(改行コードなし) | ○ | ZAN01CHK(UNSTRINGでCSV分解)
|
||||
20 | CSV→FB変換(改行コードあり) | × | 未作成
|
||||
21 | オンラインPGM | × | バッチ処理のみ
|
||||
22 | 25分割 | × | 未作成
|
||||
23 | 50分割 | × | 未作成
|
||||
24 | 100分割 | × | 未作成
|
||||
25 | 2段階マッチング(N:1→N:1) | × | 未作成
|
||||
26 | 2段階マッチング(M:N=M:N)(2入力ファイル) | × | 未作成
|
||||
27 | 2段階マッチング(1:1=1:1) | × | 未作成
|
||||
28 | SYSINの読み込み、チェック処理 | × | 未作成
|
||||
29 | ASCII→EBCDIC変換 | × | 未作成
|
||||
================================================================================
|
||||
凡例: ◎=カバー済, ○=一部カバー, ×=未カバー
|
||||
備考: パターン2〜9,11,12,15,20〜29はサブシステムBの対象範囲外または
|
||||
未実装。サブシステムBとして必要十分な6プログラムで
|
||||
合計9パターンをカバー(◎6 + ○2 + 既存の参考実装1)
|
||||
|
||||
|
||||
[2] ステートメント カバレッジ状況
|
||||
--------------------------------------------------------------------------------
|
||||
凡例:
|
||||
- 左欄: ステートメント一覧.txt の表記
|
||||
- 列B1〜B6: 各プログラム (ZAN01CHK〜ZAN06UPD)
|
||||
- SUB列: サブプログラム群 (SUB01〜05)
|
||||
- 最終列: カバレッジ有無 (◎/○/×) + 例示
|
||||
|
||||
ステートメント | B1 | B2 | B3 | B4 | B5 | B6 | SUB | 状態 | 使用例
|
||||
|01CHK|02CHK|03CHK|04MAT|05CAL|06UPD|群 | |
|
||||
---------------+-----+-----+-----+-----+-----+-----+-----+------+--------------------------
|
||||
ACCEPT | - | - | - | - | ○ | - | - | ◎ | ACCEPT WRK-DATE-8
|
||||
| | | | | | | | | FROM DATE YYYYMMDD
|
||||
| | | | | | | | | (ZAN05CAL-1000ITTSOR)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
ADD | ○ | ○ | ○ | ○ | ○ | ○ | - | ◎ | ADD 1 TO CUN-R01INN
|
||||
| | | | | | | | | ADD 1 TO CUN-W01OUT
|
||||
| | | | | | | | | (全プログラム)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
ALTER | - | - | - | - | - | - | - | × | 未使用
|
||||
ALTEREDGOTO | - | - | - | - | - | - | - | × | 未使用 (GO TO DEPENDING)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
CALL | ○ | ○ | ○ | ○ | ○ | ○ | - | ◎ | CALL 'SUB01DAT'
|
||||
| | | | | | | | | USING D01UBSPAR
|
||||
| | | | | | | | | CALL 'SUB02MSG'
|
||||
| | | | | | | | | USING M00MHOPAR
|
||||
| | | | | | | | | CALL 'SUB03END'
|
||||
| | | | | | | | | USING E01ABDPAR
|
||||
| | | | | | | | | CALL 'SUB04CHK'
|
||||
| | | | | | | | | USING C01CHKPAR
|
||||
| | | | | | | | | CALL 'SUB05TIM'
|
||||
| | | | | | | | | USING T01TIMPAR
|
||||
| | | | | | | | | (ZAN05CAL)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
CANCEL | - | - | - | - | - | - | - | × | 未使用
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
CLOSE | ○ | ○ | ○ | ○ | ○ | ○ | - | ◎ | CLOSE R01INNFIL
|
||||
| | | | | | | | | W01OUTFIL
|
||||
| | | | | | | | | (全プログラム)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
COMPUTE | ○ | - | - | - | ○ | - | ○ | ◎ | 【標準COMPUTE】
|
||||
| | | | | | | | | COMPUTE WRK-DIFF-MIN =
|
||||
| | | | | | | | | (A - B) * 60 + (C - D)
|
||||
| | | | | | | | | (ZAN01CHK, ZAN05CAL)
|
||||
| | | | | | | | |
|
||||
| | | | | | | | | 【COMPUTE ROUNDED】
|
||||
| | | | | | | | | COMPUTE WRK-OVT-HOURS
|
||||
| | | | | | | | | ROUNDED = A / 60
|
||||
| | | | | | | | | ON SIZE ERROR ...
|
||||
| | | | | | | | | END-COMPUTE
|
||||
| | | | | | | | | (ZAN05CAL-2100OUTSOR)
|
||||
| | | | | | | | |
|
||||
| | | | | | | | | ※SUB05TIM:
|
||||
| | | | | | | | | COMPUTE WRK-MINUTES =
|
||||
| | | | | | | | | T01TIMHRS * 60
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
CONTINUE | - | ○ | ○ | - | ○ | ○ | - | ◎ | SEARCH ALL ... AT END
|
||||
| | | | | | | | | CONTINUE
|
||||
| | | | | | | | | (ZAN02CHK, ZAN03CHK,
|
||||
| | | | | | | | | ZAN05CAL, ZAN06UPD)
|
||||
| | | | | | | | | EVALUATE...WHEN OTHER
|
||||
| | | | | | | | | CONTINUE
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
DELETE | - | - | - | - | - | - | - | × | 未使用
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
DISPLAY | - | - | - | - | - | - | ○ | ◎ | SUB02MSG:
|
||||
| | | | | | | | | DISPLAY WRK-MSG-LINE
|
||||
| | | | | | | | | SUB03END:
|
||||
| | | | | | | | | DISPLAY WRK-ABEND-MSG
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
DIVIDE | ○ | - | - | - | ○ | - | ○ | ◎ | DIVIDE A BY 100
|
||||
| | | | | | | | | GIVING B REMAINDER C
|
||||
| | | | | | | | | (ZAN01CHK, ZAN05CAL)
|
||||
| | | | | | | | | ※SUB05TIM:
|
||||
| | | | | | | | | DIVIDE X BY 30
|
||||
| | | | | | | | | GIVING Y REMAINDER Z
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
ENTRY | - | - | - | - | - | - | - | × | 未使用
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
EVALUATE | ○ | - | ○ | ○ | ○ | ○ | ○ | ◎ | 【EVALUATE TRUE】
|
||||
| | | | | | | | | EVALUATE TRUE
|
||||
| | | | | | | | | WHEN cond1 ... END-EVALUATE
|
||||
| | | | | | | | | (ZAN01,04,05,06CHK/MAT/CAL/UPD)
|
||||
| | | | | | | | |
|
||||
| | | | | | | | | 【EVALUATE 変数】
|
||||
| | | | | | | | | EVALUATE C01CHKTYP
|
||||
| | | | | | | | | WHEN 'DATE' ...
|
||||
| | | | | | | | | WHEN OTHER ...
|
||||
| | | | | | | | | END-EVALUATE
|
||||
| | | | | | | | | (SUB04CHK, SUB05TIM)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
EXEC CICS | - | - | - | - | - | - | - | × | 未使用
|
||||
EXEC SQL | - | - | - | - | - | ○ | - | ◎ | EXEC SQL CONNECT TO ...
|
||||
| | | | | | | | | EXEC SQL INSERT ...
|
||||
| | | | | | | | | VALUES(...) END-EXEC
|
||||
| | | | | | | | | EXEC SQL SELECT ... INTO
|
||||
| | | | | | | | | ... END-EXEC
|
||||
| | | | | | | | | EXEC SQL UPDATE ... SET
|
||||
| | | | | | | | | WHERE ... END-EXEC
|
||||
| | | | | | | | | EXEC SQL COMMIT WORK
|
||||
| | | | | | | | | END-EXEC
|
||||
| | | | | | | | | EXEC SQL ROLLBACK WORK
|
||||
| | | | | | | | | END-EXEC
|
||||
| | | | | | | | | EXEC SQL INCLUDE SQLCA
|
||||
| | | | | | | | | END-EXEC
|
||||
| | | | | | | | | (ZAN06UPD)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
EXIT | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ◎ | xxx-EXT. EXIT.
|
||||
| | | | | | | | | (全セクションの出口)
|
||||
EXIT PROGRAM | - | - | - | - | - | - | - | × | 未使用 (GOBACKで代用)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
GOBACK | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ◎ | GOBACK.
|
||||
| | | | | | | | | (メインプログラム/
|
||||
| | | | | | | | | サブプログラム復帰)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
GO TO | ○ | - | - | - | - | - | ○ | ◎ | GO TO 2020VALIDATESOR-EXT
|
||||
| | | | | | | | | (ZAN01CHK, SUB04CHK,
|
||||
| | | | | | | | | セクション脱出用)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
IF | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ◎ | 【単純条件】
|
||||
| | | | | | | | | IF WRK-R01EOF NOT = '1'
|
||||
| | | | | | | | |
|
||||
| | | | | | | | | 【複合条件(AND/OR)】
|
||||
| | | | | | | | | IF A = B AND C = D
|
||||
| | | | | | | | | IF (A < 1) OR (A > 31)
|
||||
| | | | | | | | |
|
||||
| | | | | | | | | 【THEN句あり】
|
||||
| | | | | | | | | IF ... THEN ... END-IF
|
||||
| | | | | | | | |
|
||||
| | | | | | | | | 【ELSE分岐】
|
||||
| | | | | | | | | IF ... ELSE ... END-IF
|
||||
| | | | | | | | |
|
||||
| | | | | | | | | 【NOT = 条件】
|
||||
| | | | | | | | | IF SQLCODE NOT = 0
|
||||
| | | | | | | | | (ZAN06UPD)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
INITIALIZE | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ◎ | INITIALIZE WRKARA
|
||||
| | | | | | | | | INITIALIZE W01OUTREC
|
||||
| | | | | | | | | (全プログラムで使用)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
INSPECT | ○ | - | - | - | - | - | ○ | ◎ | 【TALLYING】
|
||||
| | | | | | | | | INSPECT R01INNREC
|
||||
| | | | | | | | | TALLYING WRK-COMMA-CNT
|
||||
| | | | | | | | | FOR ALL ','
|
||||
| | | | | | | | | (ZAN01CHK)
|
||||
| | | | | | | | |
|
||||
| | | | | | | | | INSPECT C01CHKDAT
|
||||
| | | | | | | | | TALLYING W FOR
|
||||
| | | | | | | | | CHARACTERS BEFORE
|
||||
| | | | | | | | | INITIAL SPACE
|
||||
| | | | | | | | | (SUB04CHK)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
MERGE | - | - | - | - | - | - | - | × | 未使用 (SORT/JCLに委譲)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
MOVE | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ◎ | MOVE X TO Y
|
||||
| | | | | | | | | (全プログラム、
|
||||
| | | | | | | | | 最も基本的な代入文)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
MULTIPLY | - | - | - | - | - | ○ | - | ◎ | MULTIPLY A BY 60
|
||||
| | | | | | | | | GIVING B
|
||||
| | | | | | | | | (ZAN06UPD-2100SUMMARYSOR)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
OPEN | ○ | ○ | ○ | ○ | ○ | ○ | - | ◎ | OPEN INPUT R01INNFIL
|
||||
| | | | | | | | | OUTPUT W01OUTFIL
|
||||
| | | | | | | | | OPEN I-O ...(未使用)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
PERFORM | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ◎ | 【PERFORM 段落名】
|
||||
| | | | | | | | | PERFORM 1000ITTSOR
|
||||
| | | | | | | | |
|
||||
| | | | | | | | | 【PERFORM UNTIL(外書)】
|
||||
| | | | | | | | | PERFORM 2000MAJSOR
|
||||
| | | | | | | | | UNTIL cond
|
||||
| | | | | | | | |
|
||||
| | | | | | | | | 【PERFORM UNTIL(内書)】
|
||||
| | | | | | | | | PERFORM UNTIL cond
|
||||
| | | | | | | | | ... END-PERFORM
|
||||
| | | | | | | | |
|
||||
| | | | | | | | | 【PERFORM VARYING】
|
||||
| | | | | | | | | PERFORM VARYING WRK-IDX
|
||||
| | | | | | | | | FROM 1 BY 1
|
||||
| | | | | | | | | UNTIL WRK-IDX > 12
|
||||
| | | | | | | | | (ZAN06UPD-2100SUMMARYSOR)
|
||||
| | | | | | | | |
|
||||
| | | | | | | | | 【PERFORM TEST AFTER】
|
||||
| | | | | | | | | PERFORM TEST AFTER
|
||||
| | | | | | | | | VARYING WRK-IDX
|
||||
| | | | | | | | | FROM 1 BY 1
|
||||
| | | | | | | | | UNTIL cond
|
||||
| | | | | | | | | (ZAN06UPD-2210MONTHLYSUBSOR)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
READ | ○ | ○ | ○ | ○ | ○ | ○ | - | ◎ | READ R01INNFIL
|
||||
| | | | | | | | | AT END MOVE '1' TO EOF
|
||||
| | | | | | | | | NOT AT END ADD 1 TO CNT
|
||||
| | | | | | | | | END-READ
|
||||
| | | | | | | | | (全プログラムで使用)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
RELEASE | - | - | - | - | - | - | - | × | 未使用
|
||||
RETURN | - | - | - | - | - | - | - | × | 未使用
|
||||
REWRITE | - | - | - | - | - | - | - | × | 未使用
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
SEARCH | - | - | ○ | - | - | - | - | ◎ | SEARCH ALL HOLIDAY-TABLE
|
||||
| | | | | | | | | AT END CONTINUE
|
||||
| | | | | | | | | WHEN HD-DATE(IDX) = D
|
||||
| | | | | | | | | ... END-SEARCH
|
||||
| | | | | | | | | (ZAN03CHK-2200SETOVTSOR)
|
||||
| | | | | | | | | ※SEARCH(非ALL)は未使用
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
SET | - | ○ | ○ | - | ○ | - | - | ◎ | SET WRK-HD-IDX TO 1
|
||||
| | | | | | | | | (ZAN03CHK)
|
||||
| | | | | | | | | SET 88-cond TO TRUE
|
||||
| | | | | | | | | (ZAN02CHK, ZAN05CAL)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
SORT | - | - | - | - | - | - | - | × | 使用不可(JCL SORT規定)
|
||||
| | | | | | | | | (COBOL SORTは禁止)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
START | - | - | - | - | - | - | - | × | 未使用
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
STOP RUN | - | - | - | - | - | - | ○ | ◎ | STOP RUN
|
||||
| | | | | | | | | (SUB03END-ABEND処理)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
STRING | ○ | ○ | ○ | ○ | - | ○ | ○ | ◎ | STRING A DELIMITED BY SIZE
|
||||
| | | | | | | | | B DELIMITED BY SIZE
|
||||
| | | | | | | | | INTO X END-STRING
|
||||
| | | | | | | | |
|
||||
| | | | | | | | | STRING A '/' B '/' C
|
||||
| | | | | | | | | DELIMITED BY SIZE
|
||||
| | | | | | | | | INTO X (ZAN03CHK)
|
||||
| | | | | | | | |
|
||||
| | | | | | | | | STRING 'CANCEL-MATCH: '
|
||||
| | | | | | | | | R01APPL-ID ...
|
||||
| | | | | | | | | INTO W03ERR-DETAIL
|
||||
| | | | | | | | | (ZAN04MAT)
|
||||
| | | | | | | | |
|
||||
| | | | | | | | | STRING 'DB ERROR SQLCODE='
|
||||
| | | | | | | | | WRK-SQLCODE-DISP
|
||||
| | | | | | | | | INTO WRK-ERR-DETAIL
|
||||
| | | | | | | | | (ZAN06UPD)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
SUBTRACT | - | - | - | - | - | ○ | - | ◎ | SUBTRACT A FROM B
|
||||
| | | | | | | | | GIVING C
|
||||
| | | | | | | | | (ZAN06UPD-2200DBCLEANSOR)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
UNSTRING | ○ | - | - | - | - | - | - | ◎ | UNSTRING R01INNREC
|
||||
| | | | | | | | | DELIMITED BY ','
|
||||
| | | | | | | | | INTO A B C ...
|
||||
| | | | | | | | | TALLYING IN CNT
|
||||
| | | | | | | | | END-UNSTRING
|
||||
| | | | | | | | | (ZAN01CHK-2010CSVSOR)
|
||||
---------------+|-----|-----|-----|-----|-----|-----|-----|------|--------------------------
|
||||
WRITE | ○ | ○ | ○ | ○ | ○ | ○ | - | ◎ | WRITE W01OUTREC
|
||||
| | | | | | | | | (全プログラムで使用)
|
||||
| | | | | | | | | ※WRITE FROM / AFTER
|
||||
| | | | | | | | | 未使用
|
||||
================================================================================
|
||||
|
||||
|
||||
[3] PERFORM文 バリエーション カバレッジ
|
||||
--------------------------------------------------------------------------------
|
||||
No | 形式 | 状態 | 使用例
|
||||
----+--------------------------+------+------------------------------------------
|
||||
1 | PERFORM 段落名 | ◎ | PERFORM 1000ITTSOR (全プログラム)
|
||||
2 | PERFORM 段落名 UNTIL 条件 | ◎ | PERFORM 2000MAJSOR
|
||||
| | | UNTIL WRK-R01EOF = '1'
|
||||
| | | (ZAN01〜06全6本)
|
||||
3 | PERFORM UNTIL 条件 | ◎ | PERFORM UNTIL WRK-R03EOF = '1'
|
||||
| ... END-PERFORM | | READ R03INNFIL ... END-READ
|
||||
| | | END-PERFORM
|
||||
| | | (ZAN03CHK-1300HOLIDAYSOR)
|
||||
4 | PERFORM VARYING | ◎ | PERFORM VARYING WRK-IDX
|
||||
| | | FROM 1 BY 1
|
||||
| | | UNTIL WRK-IDX > 12 ...
|
||||
| | | END-PERFORM
|
||||
| | | (ZAN06UPD-2100SUMMARYSOR)
|
||||
5 | PERFORM TEST AFTER | ◎ | PERFORM TEST AFTER
|
||||
| | | VARYING WRK-IDX FROM 1 BY 1
|
||||
| | | UNTIL cond ...
|
||||
| | | END-PERFORM
|
||||
| | | (ZAN06UPD-2210MONTHLYSUBSOR)
|
||||
6 | PERFORM THRU | × | 未使用 (EXIT SECTIONで代用)
|
||||
================================================================================
|
||||
|
||||
|
||||
[4] IF文 バリエーション カバレッジ
|
||||
--------------------------------------------------------------------------------
|
||||
No | 形式 | 状態 | 使用例
|
||||
----+-------------------------------+------+--------------------------------------
|
||||
1 | IF 条件 ... END-IF | ◎ | IF WRK-START-NUM < CNS-TIME-1830
|
||||
| | | ... END-IF
|
||||
2 | IF 条件 ... ELSE ... END-IF | ◎ | IF D01FKICOD = ZERO
|
||||
| | | ... ELSE ... END-IF
|
||||
3 | IF 複合条件(AND) | ◎ | IF A >= B AND C <= D
|
||||
4 | IF 複合条件(OR) | ◎ | IF (A < 1) OR (A > 31)
|
||||
5 | IF ... THEN ... | ◎ | IF ... THEN ... END-IF
|
||||
| | | (SUB04CHK)
|
||||
6 | IF ... NOT = ... | ◎ | IF D01FKICOD NOT = ZERO
|
||||
| | | IF SQLCODE NOT = 0 (ZAN06UPD)
|
||||
================================================================================
|
||||
|
||||
|
||||
[5] 未カバーステートメント 一覧(今後のプログラムで対応予定)
|
||||
--------------------------------------------------------------------------------
|
||||
No | ステートメント | 備考
|
||||
----+---------------------+-----------------------------------------------
|
||||
1 | ALTER | 非推奨ステートメント、使用予定なし
|
||||
2 | ALTEREDGOTO | GO TO DEPENDING、非推奨
|
||||
3 | CANCEL | サブプログラムの動的削除は不要
|
||||
4 | DELETE | DB2 DELETEは未実装(今後の拡張で対応可能)
|
||||
5 | ENTRY | エントリポイント複数定義は不要
|
||||
6 | EXEC CICS | CICS非対応(バッチ処理のみ)
|
||||
7 | EXIT PROGRAM | GOBACKで代用
|
||||
8 | MERGE | COBOL SORT MERGEはJCL SORTに委譲のため不使用
|
||||
9 | RELEASE | SORT関連、JCL SORTに委譲
|
||||
10 | RETURN | SORT関連、JCL SORTに委譲
|
||||
11 | REWRITE | VSAM/INDEXED非対応(順次ファイルのみ)
|
||||
12 | SORT | COBOL SORTは禁止(JCL PGM=SORTに委譲)
|
||||
13 | START | VSAM/INDEXED非対応
|
||||
================================================================================
|
||||
|
||||
|
||||
[6] COPYファイル・SUBプログラム 参照状況
|
||||
--------------------------------------------------------------------------------
|
||||
COPY/SUB名 | 用途 | 使用プログラム
|
||||
--------------+------------------------------+----------------------
|
||||
ZAN01REC | 申請レコード(80B) | ZAN01CHK〜ZAN04MAT (全4本)
|
||||
ZAN02REC | マッチング結果レコード(80B) | ZAN04MAT, ZAN05CAL
|
||||
ZAN03REC | 集約結果レコード(80B) | ZAN05CAL, ZAN06UPD
|
||||
ZAN04REC | DBCLEAN用レコード(80B) | ZAN04MAT, ZAN06UPD
|
||||
ZAN05REC | エラーログ(VB) | ZAN01〜04, ZAN06UPD (計5本)
|
||||
ZANDATAC | SUB01DAT連絡領域 | ZAN01CHK, ZAN02CHK,
|
||||
| | ZAN04MAT, ZAN05CAL, ZAN06UPD
|
||||
ZANMSGAC | SUB02MSG連絡領域 | ZAN01〜06, SUB03END (計7本)
|
||||
ZANENDAC | SUB03END連絡領域 | ZAN01〜06 (計6本)
|
||||
ZANCHKAC | SUB04CHK連絡領域 | ZAN01CHK
|
||||
ZANTIMAC | SUB05TIM連絡領域 | ZAN05CAL
|
||||
| |
|
||||
SUB01DAT | 運用日付取得 | ZAN01CHK, ZAN02CHK,
|
||||
| | ZAN04MAT, ZAN05CAL, ZAN06UPD
|
||||
SUB02MSG | メッセージ編集出力 | ZAN01〜06, SUB03END (計7本)
|
||||
SUB03END | ABEND処理 | ZAN01〜06 (計6本)
|
||||
SUB04CHK | 項目チェック | ZAN01CHK
|
||||
SUB05TIM | 時刻丸め計算 | ZAN05CAL
|
||||
================================================================================
|
||||
|
||||
|
||||
[7] TYPE定義 カバレッジ状況(TYPE定義一覧.txt 準拠/可変パターン m,n)
|
||||
--------------------------------------------------------------------------------
|
||||
No | TYPE定義 | 状態 | 対応実装例
|
||||
----+------------------------+------+------------------------------------------
|
||||
1 | X(m) | ◎ | PIC X(1)〜X(80):STATUS, OVT-TYPE,
|
||||
| | | APPL-ID, EMP-ID, 各種文字項目
|
||||
2 | G(m) | × | 未使用(DBCS文字列不要)
|
||||
3 | N(m) | × | 未使用(National文字列不要)
|
||||
4 | 9(m) | ◎ | PIC 9(1)〜9(8):CNS定数, 日付, 時刻,
|
||||
| | | YEAR-MONTH, カウンタ
|
||||
5 | 9(m)V9(n) | ◎ | PIC 9(4)V9(1):WRK-OVT-HOURS,
|
||||
| | | WRK-REMAIN-HOURS(加班時間)
|
||||
6 | S9(m)V9(n) | × | 未使用(DISPLAY/非COMPでは不使用)
|
||||
| | | ※本パターンはCOMP-3必須ではなく、
|
||||
| | | DISPLAY形式でも使用可能
|
||||
7 | S9(m)V9(n) COMP-3 | ◎ | DB-OVT-HOURS PIC S9(7)V9(1) COMP-3
|
||||
8 | S9(m) COMP-3 | ◎ | CUNARA: PIC S9(9) COMP-3(全カウンタ)
|
||||
9 | S9(m) COMP | ○ | PIC 9(2) COMP(WRK-COMMA-CNT)
|
||||
| | | PIC 9(4) COMP(WRK-HOLIDAY-CNT)
|
||||
10 | S9(m) BINARY | × | 未使用(COMP-5/BINARY不使用)
|
||||
11 | ZZZ9 | × | 未使用(編集文字不要)
|
||||
================================================================================
|
||||
凡例: ◎=該当パターン使用, ○=代替形式で使用, △=複合形で使用, ×=未使用
|
||||
備考:
|
||||
- TYPE定義一覧.txt が固定値から可変パターン(m,nは任意桁数)に変更された。
|
||||
- サブシステムBでは X(m), 9(m), S9(m) COMP-3 を主に使用。
|
||||
- No.6 は純粋な S9(m)V9(n)(非COMP)は未使用だが、COMP-3 版(No.7)で代替。
|
||||
- No.9 の COMP 型は符号付(S9)ではないが、9(2) COMP, 9(4) COMP として使用実績あり。
|
||||
|
||||
|
||||
================================================================================
|
||||
設計書(02_残業統計管理システム_設計書(サブシステムB).md)対抗確認結果
|
||||
================================================================================
|
||||
確認項目: 全6プログラムの機能・構文・パターン実装状況
|
||||
確認日時: 2026-06-16 22:53
|
||||
判定: 全項目 ◎(設計書通りの実装完了)
|
||||
|
||||
プログラム別実装確認:
|
||||
-------------------------------------------------------------------------------
|
||||
| PGM | 設計上のパターン | 実装状態 | 主要構文 |
|
||||
|----------+-----------------------+----------+-------------------------------|
|
||||
| ZAN01CHK | 振り分け(EVALUATE) | ◎ 完了 | UNSTRING, EVALUATE, DIVIDE |
|
||||
| | CSV→FB変換(一部○) | | INSPECT TALLYING, STRING |
|
||||
| ZAN02CHK | 項目チェック(重複含) | ◎ 完了 | IF, SET, CONTINUE |
|
||||
| | 前終了>現開始→重複 | | STRING(エラー編集) |
|
||||
| ZAN03CHK | 項目チェック(重複無) | ◎ 完了 | SEARCH ALL, SET, STRING |
|
||||
| | SEARCH ALL休日判定 | | FUNCTION CURRENT-DATE |
|
||||
| ZAN04MAT | マッチング(1:1) | ◎ 完了 | EVALUATE TRUE, STRING |
|
||||
| | 処理番号1付与 | | HIGH-VALUE制御 |
|
||||
| ZAN05CAL | キーブレイク(集計) | ◎ 完了 | ACCEPT FROM DATE, DIVIDE |
|
||||
| | SUB05TIM呼出 | | COMPUTE ROUNDED ON SIZE ERROR |
|
||||
| | | | SET 88条件 |
|
||||
| ZAN06UPD | DB更新 | ◎ 完了 | EXEC SQL(6種), PERFORM VARYING|
|
||||
| | | | PERFORM TEST AFTER, MULTIPLY |
|
||||
| | | | SUBTRACT, COMMIT/ROLLBACK |
|
||||
|
||||
設計書「新規COBOL構文カバレッジ一覧(14種)」対抗:
|
||||
1. UNSTRING → ZAN01CHK ✓
|
||||
2. STRING → ZAN01CHK, ZAN02CHK, ZAN03CHK, ZAN04MAT, ZAN06UPD ✓
|
||||
3. SEARCH ALL → ZAN03CHK ✓
|
||||
4. SET → ZAN02CHK, ZAN03CHK, ZAN05CAL ✓
|
||||
5. COMPUTE ROUNDED ON SIZE ERROR → ZAN05CAL ✓
|
||||
6. DIVIDE → ZAN01CHK, ZAN05CAL ✓
|
||||
7. CONTINUE → ZAN02CHK, ZAN03CHK, ZAN05CAL, ZAN06UPD ✓
|
||||
8. ACCEPT FROM DATE → ZAN05CAL ✓
|
||||
9. EXEC SQL → ZAN06UPD ✓
|
||||
10. IF (SQLCODE分岐) → ZAN06UPD ✓
|
||||
11. PERFORM VARYING → ZAN06UPD ✓
|
||||
12. PERFORM TEST AFTER → ZAN06UPD ✓
|
||||
13. MULTIPLY → ZAN06UPD ✓
|
||||
14. SUBTRACT → ZAN06UPD ✓
|
||||
|
||||
設計書との差分: なし(全14種とも設計書に記載済)
|
||||
================================================================================
|
||||
|
||||
以上
|
||||
@@ -1,454 +0,0 @@
|
||||
================================================================================
|
||||
プログラムタイプ・ステートメント カバレッジ状況
|
||||
確認日時: 2026-06-22 14:00
|
||||
V2.3更新版: KIN06CLD追加(PGMパターン12新規実装 + PERFORM VARYING追認)
|
||||
対象: SRC11本 + SUB5本 + CPY11本 = 27ファイル実査
|
||||
ベース: PGM実装パターン一覧.txt (29件)
|
||||
ステートメント一覧.txt (49表記→45ユニーク)
|
||||
TYPE定義一覧.txt (11件)
|
||||
COBOLの予約語一覧.txt (193語)
|
||||
================================================================================
|
||||
|
||||
確認対象プログラム:
|
||||
サブシステムA (勤怠休暇): KIN01INP, KIN02UPD, KIN03EXP, KIN04CHK, KIN05MAT, KIN06CLD
|
||||
サブシステムB (残業統計): ZAN01CHK, ZAN02CHK, ZAN03CHK, ZAN04MAT, ZAN05CAL, ZAN06UPD
|
||||
サブプログラム共通: SUB01DAT, SUB02MSG, SUB03END, SUB04CHK, SUB05TIM
|
||||
|
||||
確認対象COPYファイル:
|
||||
KIN系: KIN01REC, KIN02REC, KIN03REC, KIN04REC, KIN05REC
|
||||
ZAN系: ZAN01REC, ZAN02REC, ZAN03REC, ZAN04REC, ZAN05REC
|
||||
共通連絡領域: ZANDATAC, ZANMSGAC, ZANENDAC, ZANCHKAC, ZANTIMAC
|
||||
SQL埋込: SQLCA(EXEC SQL INCLUDE)
|
||||
================================================================================
|
||||
|
||||
|
||||
[1] プログラムタイプ カバレッジ状況(PGM実装パターン一覧.txt 準拠)
|
||||
--------------------------------------------------------------------------------
|
||||
凡例: ◎=完全実装 ○=一部実装 △=関連実装あり ×=未実装 空=対象外
|
||||
|
||||
No | パターン |状態 | 該当プログラム
|
||||
----+-------------------------------------+------+---------------------------
|
||||
1 | マッチング処理(1:1) | ◎ | ZAN04MAT (R01 vs R02, APPL-ID照合)
|
||||
2 | マッチング処理(1:N) | ◎ | KIN05MAT (R01 vs R02, 休暇種別優先順位)
|
||||
| | | KIN03EXP (DB1行→日数分展開)
|
||||
3 | マッチング処理(N:1) | ◎ | ZAN03CHK (複数申請×同一打刻)
|
||||
4 | マッチング処理(M:N)→出力N件 | × | 未実装
|
||||
5 | マッチング処理(M:N)→出力M件 | × | 未実装
|
||||
6 | マッチング処理(M:N)→出力MxN件 | × | 未実装
|
||||
7 | マッチング(1:N)+キーブレイク | × | 未実装
|
||||
8 | マッチング(1:N)+キーブレイク | × | 未実装
|
||||
| (ブレイクキー>マッチングキー) | |
|
||||
9 | キーブレイク処理(集計) | ◎ | ZAN05CAL (APPL-ID単位累積集計)
|
||||
10 | キーブレイク処理(集約) | ○ | ZAN05CAL (先頭START-TIME保持)
|
||||
11 | キーブレイク処理(その他) | ◎ | ZAN02CHK (重複検出用), KIN03EXP (社員小計), KIN05MAT (N:1ループ)
|
||||
12 | レイアウト編集のみ(GETPUT) | ◎ | KIN06CLD (PARM年月の出勤日カレンダーをDB→FILE編集出力)
|
||||
13 | 項目チェック(重複チェック無) | ◎ | ZAN01CHK, ZAN03CHK, KIN01INP, SUB04CHK
|
||||
14 | 項目チェック(重複チェック有) | ◎ | ZAN02CHK (時間帯重複)
|
||||
15 | 振り分け(IF文) | ◎ | ZAN01CHK, ZAN02CHK, ZAN03CHK, ZAN05CAL,
|
||||
| | | ZAN06UPD, KIN01INP, KIN02UPD, KIN03EXP, KIN05MAT
|
||||
16 | 振り分け(EVALUATE文) | ◎ | ZAN01CHK, ZAN03CHK, ZAN04MAT, ZAN05CAL,
|
||||
| | | ZAN06UPD, KIN01INP, KIN02UPD, KIN05MAT, SUB04CHK, SUB05TIM
|
||||
17 | 内部テーブル検索 | ◎ | ZAN03CHK (SEARCH ALL休日), KIN01INP (SEARCH休暇種別),
|
||||
| | | KIN03EXP (SEARCH ALL休日)
|
||||
18 | DB更新/参照 | ◎ | ZAN06UPD (INSERT, UPDATE, SELECT)
|
||||
| | | KIN02UPD (INSERT, DELETE, SELECT)
|
||||
| | | KIN03EXP (SELECT, FETCH)
|
||||
19 | CSV→FB変換(改行コード無) | ◎ | ZAN01CHK (UNSTRING), KIN01INP (UNSTRING)
|
||||
20 | CSV→FB変換(改行コード有) | × | 未実装
|
||||
21 | オンラインPGM | × | バッチ処理のみ
|
||||
22 | 25分割 | × | 未実装
|
||||
23 | 50分割 | × | 未実装
|
||||
24 | 100分割 | × | 未実装
|
||||
25 | 2段階マッチング(N:1→N:1) | × | 未実装
|
||||
26 | 2段階マッチング(M:N→M:N) | × | 未実装
|
||||
27 | 2段階マッチング(1:1→1:1) | × | 未実装
|
||||
28 | SYSIN読込・チェック | × | 未実装
|
||||
29 | ASCII→EBCDIC変換 | × | 未実装
|
||||
================================================================================
|
||||
カバー率: 29パターン中 実装13件 (◎12件 + ○1件) = 44.8% ※
|
||||
凡例: ◎=完全実装, ○=一部実装, ×=未実装
|
||||
備考1: 未実装パターン(4-8,12,20-29)は現行システムの要件範囲外
|
||||
備考2: ※前版から低下したのは「DB参照」を正規29パターンに統合したため
|
||||
(前版は正規リスト外のDB参照を19番に追加し30パターン表示していた)
|
||||
|
||||
|
||||
ステートメント|KIN01|KIN02|KIN03|KIN04|KIN05|KIN06|ZAN01|ZAN02|ZAN03|ZAN04|ZAN05|ZAN06|SUB1|SUB2|SUB3|SUB4|SUB5|状態|使用例
|
||||
| INP | UPD | EXP | CHK | MAT | CLD | CHK | CHK | CHK | MAT | CAL | UPD |DAT |MSG |END |CHK |TIM | |
|
||||
ACCEPT | - | - | - | - | - | ○ | - | - | - | - | ○ | - | - | - | - | - | - | ◎ | ZAN05CALのACCEPT DATE YYYYMMDD (+ KIN06CLDのACCEPT COMMAND-LINE)
|
||||
| | | | | | | | | | | | | | | | FROM DATE YYYYMMDD
|
||||
| | | | | | | | | | | | | | | | (ZAN05CAL)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
ADD | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | - | - | ◎ | 全メインプログラム (ADD 1 TO CUN-R01INN)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
ALTER | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
ALTEREDGOTO | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用 (GO TO DEPENDING)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
CALL | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | - | - | ◎ | 全メインプログラム (CALL SUB01DAT, SUB02MSG, SUB03END, SUB04CHK, SUB05TIM)
|
||||
| | | | | | | | | | | | | | | | CALL 'SUB02MSG'...
|
||||
| | | | | | | | | | | | | | | | CALL 'SUB04CHK'...
|
||||
| | | | | | | | | | | | | | | | CALL 'SUB05TIM'...
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
CANCEL | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
CLOSE | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | - | - | ◎ | ファイル有りの全PGM (CLOSE R01INNFIL, W01OUTFIL)
|
||||
| | | | | | | | | | | | | | | | W01OUTFIL
|
||||
| | | | | | | | | | | | | | | | (ファイル有りの全PGM)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
COMPUTE | - | - | ○ | - | - | ○ | ○ | - | ○ | - | ○ | - | - | - | - | - | ○ | ◎ | ZAN01CHK, ZAN03CHK, ZAN05CAL, KIN03EXP, KIN06CLD, SUB05TIM
|
||||
| | | | | | | | | | | | | | | | COMPUTE ROUNDED
|
||||
| | | | | | | | | | | | | | | | ON SIZE ERROR
|
||||
| | | | | | | | | | | | | | | | (ZAN01, ZAN03, ZAN05, KIN03, KIN06, SUB05)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
CONTINUE | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | ○ | - | ○ | ○ | - | - | - | - | - | ◎ | SEARCH ALL AT END, EVALUATE WHEN OTHER, COMPUTE ON SIZE ERROR
|
||||
| | | | | | | | | | | | | | | | EVALUATE WHEN OTHER CONTINUE
|
||||
| | | | | | | | | | | | | | | | COMPUTE ON SIZE ERROR CONT.
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
DELETE | - | ○ | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ○ | KIN02UPDのみ (EXEC SQL DELETE)
|
||||
| | | | | | | | | | | | | | | | (KIN02UPDのみ)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
DISPLAY | - | - | - | - | - | - | - | - | - | - | - | - | - | ○ | ○ | - | - | △ | SUB02MSG, SUB03END
|
||||
| | | | | | | | | | | | | | | | SUB03END: DISPLAY abend
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
DIVIDE | - | - | - | ○ | - | - | ○ | - | - | - | ○ | - | - | - | - | - | ○ | ◎ | ZAN01CHK, ZAN05CAL, SUB05TIM (DIVIDE...GIVING...REMAINDER)
|
||||
| | | | | | | | | | | | | | | | GIVING B REMAINDER C
|
||||
| | | | | | | | | | | | | | | | (ZAN01, ZAN05, SUB05)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
ENTRY | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
EVALUATE | ○ | ○ | ○ | - | ○ | - | ○ | - | ○ | ○ | ○ | ○ | - | - | - | ○ | ○ | ◎ | KIN01INP, KIN02UPD, KIN03EXP, KIN05MAT, ZAN01-06, SUB04CHK, SUB05TIM (12本中)
|
||||
| | | | | | | | | | | | | | | | EVALUATE C01CHKTYP
|
||||
| | | | | | | | | | | | | | | | (KIN01-03, KIN05, ZAN01,03-06, SUB04,05)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
EXEC CICS | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用 (全バッチ)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
EXEC SQL | - | ○ | ○ | - | - | ○ | - | - | - | - | - | ○ | - | - | - | - | - | ◎ | KIN02UPD, KIN03EXP, KIN06CLD, ZAN06UPD (CONNECT, SELECT, INSERT, UPDATE, DELETE, COMMIT, ROLLBACK)
|
||||
| | | | | | | | | | | | | | | | UPDATE, DELETE, COMMIT,
|
||||
| | | | | | | | | | | | | | | | ROLLBACK, INCLUDE
|
||||
| | | | | | | | | | | | | | | | (ZAN06UPD, KIN02UPD,
|
||||
| | | | | | | | | | | | | | | | KIN03EXP, KIN06CLD)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
EXIT | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ◎ | 全14プログラム (xxx-EXT. EXIT.)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
EXIT PROGRAM | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用 (GOBACKで代用)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
GOBACK | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ◎ | 全14プログラム
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
GO TO | ○ | - | - | ○ | - | - | ○ | - | - | - | - | - | - | - | - | ○ | - | ◎ | ZAN01CHK, KIN01INP, KIN04CHK, SUB04CHK (GO TO xxx-EXT)
|
||||
| | | | | | | | | | | | | | | | (ZAN01CHK, KIN01INP,
|
||||
| | | | | | | | | | | | | | | | KIN04CHK, SUB04CHK)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
IF | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | ○ | ○ | ◎ | 全メインプログラム + SUB04CHK, SUB05TIM
|
||||
| | | | | | | | | | | | | | | | IF cond ... ELSE ... END-IF
|
||||
| | | | | | | | | | | | | | | | IF cond1 AND cond2
|
||||
| | | | | | | | | | | | | | | | IF SQLCODE NOT = 0
|
||||
| | | | | | | | | | | | | | | | (メイン全PGM+SUB04,05)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
INITIALIZE | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | - | - | ◎ | 全メインプログラム
|
||||
| | | | | | | | | | | | | | | | INITIALIZE W01OUTREC
|
||||
| | | | | | | | | | | | | | | | (全メインプログラム)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
INSPECT | - | - | - | ○ | - | - | ○ | - | - | - | - | - | ○ | - | - | - | - | ◎ | ZAN01CHK, KIN04CHK, SUB04CHK (INSPECT TALLYING)
|
||||
| | | | | | | | | | | | | | | | (ZAN01CHK, KIN04CHK, SUB04CHK)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
MERGE | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用 (SORT/JCL委譲)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
MOVE | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ◎ | 全14プログラム
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
MULTIPLY | - | - | - | - | - | - | - | - | - | - | - | ○ | - | - | - | - | - | ○ | ZAN06UPDのみ (MULTIPLY A BY 60 GIVING B)
|
||||
| | | | | | | | | | | | | | | | (ZAN06UPDのみ)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
OPEN | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | - | - | ◎ | ファイル有りの全PGM
|
||||
| | | | | | | | | | | | | | | | (ファイル有りの全PGM)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
PERFORM | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | ○ | ○ | ◎ | 全メインプログラム + SUB04CHK, SUB05TIM
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
PERFORM UNTIL | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | - | - | ◎ | 全メインプログラム (PERFORM UNTIL END-PERFORM)
|
||||
| | | | | | | | | | | | | | | | ... END-PERFORM (ZAN03CHK)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
PERFORM VARY | - | - | - | - | - | ○ | - | - | - | - | - | ○ | - | - | - | - | - | ◎ | ZAN06UPD, KIN06CLD (PERFORM VARYING線形探索)
|
||||
| | | | | | | | | | | | | | | | (ZAN06UPD, KIN06CLD)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
PERM TEST AFT | - | - | - | - | - | - | - | - | - | - | - | ○ | - | - | - | - | - | ○ | ZAN06UPDのみ (PERFORM TEST AFTER VARYING)
|
||||
| | | | | | | | | | | | | | | | VARYING ... (ZAN06UPD)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
READ | ○ | ○ | - | ○ | ○ | - | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | - | - | ◎ | KIN03EXP以外の全メインPGM
|
||||
| | | | | | | | | | | | | | | | AT END/NOT AT END/END-READ
|
||||
| | | | | | | | | | | | | | | | (KIN03EXP,KIN06CLD以外の全メインPGM)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
RELEASE | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
RETURN | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
REWRITE | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
SEARCH | ○ | - | ○ | - | - | - | - | - | ○ | - | - | - | - | - | - | - | - | ◎ | KIN01INP (SEARCH), KIN03EXP (SEARCH ALL), ZAN03CHK (SEARCH ALL)
|
||||
| | | | | | | | | | | | | | | | SEARCH (KIN01INP, 直線探索)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
SET | ○ | - | ○ | - | - | - | - | - | ○ | - | ○ | - | - | - | - | - | - | ◎ | KIN01INP, KIN03EXP, ZAN03CHK, ZAN05CAL
|
||||
| | | | | | | | | | | | | | | | SET cond TO TRUE
|
||||
| | | | | | | | | | | | | | | | (KIN01,03, ZAN03,05)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
SORT | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 使用禁止 (JCL PGM=SORT)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
START | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用 (VSAM非対応)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
STOP RUN | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ○ | - | - | ○ | SUB03ENDのみ (STOP RUN RETURN-CODE)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
STRING | ○ | - | - | ○ | - | ○ | ○ | ○ | ○ | ○ | - | ○ | - | ○ | - | - | - | ◎ | KIN01INP, KIN04CHK, KIN06CLD, ZAN01-ZAN04, ZAN06UPD, SUB02MSG
|
||||
| | | | | | | | | | | | | | | | INTO X END-STRING
|
||||
| | | | | | | | | | | | | | | | (KIN01,04,06, ZAN01-04,06, SUB02)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
SUBTRACT | - | - | - | - | - | - | - | - | - | - | - | ○ | - | - | - | - | - | ○ | ZAN06UPDのみ
|
||||
| | | | | | | | | | | | | | | | (ZAN06UPDのみ)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
UNSTRING | ○ | - | - | ○ | - | - | ○ | - | - | - | - | - | - | - | - | - | - | ◎ | KIN01INP, KIN04CHK, ZAN01CHK
|
||||
| | | | | | | | | | | | | | | | INTO ... TALLYING IN CNT
|
||||
| | | | | | | | | | | | | | | | (KIN01INP, KIN04CHK, ZAN01CHK)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
WRITE | ○ | - | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | - | - | ◎ | ファイル出力有りの全PGM
|
||||
| | | | | | | | | | | | | | | | (ファイル出力有りのPGM)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
WRITE FROM/ | - | - | - | ○ | - | - | - | - | - | - | - | - | - | - | - | - | - | ○ | KIN04CHK (2050NORMSOR正常出力にWRITE FROM使用)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
WRITE AFTER | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用 (WRITE FROMはKIN04CHKで使用)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
================================================================================
|
||||
ステートメントカバー率: 45ユニーク中 使用33件 (◎=25 + ○=2 + △=6)
|
||||
カバー率 73.3% (33/45)
|
||||
未使用12件: ALTER, ALTEREDGOTO, CANCEL, ENTRY, EXEC CICS, EXIT PROGRAM,
|
||||
MERGE, RELEASE, RETURN, REWRITE, SORT, START, WRITE AFTER
|
||||
|
||||
|
||||
[3] PERFORM文 バリエーション カバレッジ
|
||||
--------------------------------------------------------------------------------
|
||||
No | 形式 | 状態 | 該当プログラム
|
||||
----+--------------------------+------+------------------------------------------
|
||||
1 | PERFORM 段落名 | ◎ | 全メインプログラム(ZAN01-06, KIN01-03)
|
||||
| | | + SUB04CHK, SUB05TIM
|
||||
2 | PERFORM 段落名 UNTIL | ◎ | 全メインプログラム(ZAN01-06, KIN01-03)
|
||||
| | | PERFORM 2000MAJSOR UNTIL cond
|
||||
3 | PERFORM UNTIL ... | ◎ | ZAN03CHK (1300HOLIDAYSOR: 休日ファイル)
|
||||
| END-PERFORM | | KIN03EXP (2200-EXPAND-DATE: 日付展開)
|
||||
4 | PERFORM VARYING | ◎ | ZAN06UPD (2100SUMMARYSOR: 月バリデーション)
|
||||
| | | KIN06CLD (休日線形探索)
|
||||
5 | PERFORM TEST AFTER | ○ | ZAN06UPD (2210MONTHLYSUBSOR: リトライ制御)
|
||||
6 | PERFORM THRU | ○ | KIN03EXP (2100-PROCESS-EMP THRU ...-EXIT,
|
||||
| | | 2200-EXPAND-DATE THRU ...-EXIT)
|
||||
================================================================================
|
||||
|
||||
|
||||
[4] IF文 バリエーション カバレッジ
|
||||
--------------------------------------------------------------------------------
|
||||
No | 形式 | 状態 | 該当プログラム
|
||||
----+-------------------------------+------+--------------------------------------
|
||||
1 | IF 条件 ... END-IF | ◎ | ZAN01-06, KIN01-03, SUB04, SUB05
|
||||
2 | IF 条件 ... ELSE ... END-IF | ◎ | ZAN01-03, KIN01-03, SUB04 (ほか)
|
||||
3 | IF 複合条件(AND) | ◎ | ZAN03CHK (時間範囲), ZAN06UPD (月判定)
|
||||
| | | SUB04CHK (日付範囲) 等
|
||||
4 | IF 複合条件(OR) | ◎ | KIN03EXP (週末判定: 0 OR 6)
|
||||
5 | IF ... THEN ... | ◎ | SUB04CHK, SUB05TIM
|
||||
6 | IF ... NOT = ... | ◎ | ZAN06UPD (SQLCODE判定), KIN02UPD
|
||||
================================================================================
|
||||
|
||||
|
||||
[5] 未カバーステートメント 一覧
|
||||
--------------------------------------------------------------------------------
|
||||
No | ステートメント | 備考
|
||||
----+---------------------+-----------------------------------------------
|
||||
1 | ALTER | 非推奨、使用予定なし
|
||||
2 | ALTEREDGOTO | GO TO DEPENDING、非推奨
|
||||
3 | CANCEL | サブプログラム動的削除は不要
|
||||
4 | ENTRY | エントリポイント複数定義不要
|
||||
5 | EXEC CICS | CICS非対応(全バッチ処理)
|
||||
6 | EXIT PROGRAM | GOBACKで代用
|
||||
7 | MERGE | COBOL MERGEはJCL SORTに委譲
|
||||
8 | RELEASE | SORT関連、JCL SORT委譲
|
||||
9 | RETURN | SORT関連、JCL SORT委譲
|
||||
10 | REWRITE | VSAM/INDEXED非対応
|
||||
11 | SORT | COBOL SORT禁止(JCL PGM=SORT)
|
||||
12 | START | VSAM非対応
|
||||
13 | WRITE AFTER | 未使用 (WRITE FROMはKIN04CHKで使用)
|
||||
================================================================================
|
||||
|
||||
|
||||
[6] COPYファイル・SUBプログラム 参照状況
|
||||
--------------------------------------------------------------------------------
|
||||
COPY/SUB名 | 用途 | 使用プログラム
|
||||
---------------+----------------------------+-------------------------------
|
||||
KIN01REC | 休暇申請レコード(80B) | KIN01INP, KIN02UPD
|
||||
KIN02REC | 休暇日別レコード(80B) | KIN03EXP, KIN05MAT
|
||||
KIN03REC | 照合結果レコード(160B) | KIN05MAT
|
||||
KIN04REC | 打刻編集レコード(80B) | KIN04CHK, KIN05MAT
|
||||
KIN05REC | エラーログ(VB) | KIN01INP
|
||||
KIN06REC | 出勤日カレンダー(80B) | KIN06CLD
|
||||
ZAN01REC | 申請レコード(80B) | ZAN01CHK, ZAN02CHK, ZAN03CHK,
|
||||
| | ZAN04MAT (全4本)
|
||||
ZAN02REC | マッチング結果(80B) | ZAN04MAT, ZAN05CAL
|
||||
ZAN03REC | 集計結果レコード(80B) | ZAN05CAL, ZAN06UPD
|
||||
ZAN04REC | DBCLEAN用レコード(80B) | ZAN04MAT, ZAN06UPD
|
||||
ZAN05REC | エラーログ(VB) | ZAN01-04, ZAN06UPD (計5本)
|
||||
ZANDATAC | SUB01DAT連絡領域 | ZAN01,02,04,05,06, KIN01, KIN03
|
||||
ZANMSGAC | SUB02MSG連絡領域 | ZAN01-06, KIN01-06, SUB03END
|
||||
ZANENDAC | SUB03END連絡領域 | ZAN01-06, KIN01-06
|
||||
ZANCHKAC | SUB04CHK連絡領域 | ZAN01CHK, KIN01INP, KIN04CHK
|
||||
ZANTIMAC | SUB05TIM連絡領域 | ZAN05CAL
|
||||
SQLCA | SQLCA (EXEC SQL INCLUDE) | ZAN06UPD, KIN02UPD, KIN03EXP, KIN06CLD
|
||||
| |
|
||||
SUB01DAT | 運用日付取得 | ZAN01,02,04,05,06, KIN01, KIN03
|
||||
SUB02MSG | メッセージ編集出力 | ZAN01-06, KIN01-06, SUB03END
|
||||
SUB03END | ABEND処理 | ZAN01-06, KIN01-06
|
||||
SUB04CHK | 項目チェック | ZAN01CHK, KIN01INP
|
||||
SUB05TIM | 時刻丸め計算 | ZAN05CAL
|
||||
================================================================================
|
||||
|
||||
|
||||
[7] TYPE定義 カバレッジ状況(TYPE定義一覧.txt 準拠)
|
||||
--------------------------------------------------------------------------------
|
||||
No | TYPE定義 | 状態 | 使用例
|
||||
----+---------------------+------+-------------------------------------------
|
||||
1 | X(m) | ◎ | PIC X(001)〜X(198): STATUS, OVT-TYPE,
|
||||
| | | APPL-ID, EMP-ID, ERR-DETAIL,
|
||||
| | | FILLER, 各種MSG領域 (全COPY/全PGM)
|
||||
2 | G(m) | × | 未使用(DBCS文字列不要)
|
||||
3 | N(m) | × | 未使用(National文字列不要)
|
||||
4 | 9(m) | ◎ | PIC 9(001)〜9(009): CNS定数, 日付, 時刻,
|
||||
| | | APPL-ID(KIN系), ERR-CATEGORY,
|
||||
| | | PROC-SEQ, RRCコード, MSG-CODE
|
||||
5 | 9(m)V9(n) | ◎ | PIC 9(004)V9(001): OVT-HOURS,
|
||||
| | | 加班時間(集計/丸め/残容量)
|
||||
| | | (ZAN03REC, ZANTIMAC, ZAN05CAL, ZAN06UPD, SUB05TIM)
|
||||
6 | S9(m)V9(n) | ○ | PIC S9(005)V9(001): WRK-HOURS
|
||||
| | | (SUB05TIM, DISPLAY形式, COMP無)
|
||||
7 | S9(m)V9(n) COMP-3 | ○ | PIC S9(007)V9(001) COMP-3: DB-OVT-HOURS
|
||||
| | | (ZAN06UPDのみ)
|
||||
8 | S9(m) COMP-3 | ◎ | PIC S9(009) COMP-3: CUN-R01INN他
|
||||
| | | (全メインプログラム: カウンタ領域)
|
||||
9 | S9(m) COMP | ○ | PIC S9(004) COMP: D01FKICOD
|
||||
| | | (ZANDATAC, SUB01DAT)
|
||||
| | | PIC 9(002) COMP: WRK-COMMA-CNT
|
||||
| | | (ZAN01CHK, KIN01INP)
|
||||
| | | PIC 9(004) COMP: WRK-HOLIDAY-CNT
|
||||
| | | (ZAN03CHK)
|
||||
| | | PIC 9(004) COMP: WRK-HD-COUNT
|
||||
| | | (KIN03EXP)
|
||||
10 | S9(m) BINARY | × | 未使用(COMP-5/BINARY不使用)
|
||||
11 | ZZZ9(編集文字) | × | 未使用
|
||||
| | |
|
||||
| 補足1: 9(004).9(001) | △ | PIC 9(004).9(001) 編集数字(実小数点)
|
||||
| | | WRK-OVT-HOURS-EDITED (ZAN06UPD)
|
||||
| 補足2: S9(m) DISPLAY | △ | PIC S9(005): WRK-MINUTES, WRK-REMAINDER
|
||||
| | | (SUB05TIM 符号付非COMP整数)
|
||||
| | | PIC S9(004): WRK-SIGN (SUB04CHK)
|
||||
| 補足3: +9(009) | △ | PIC +9(009): WRK-SQLCODE-DISP
|
||||
| | | (ZAN06UPD, KIN02UPD 符号強制編集数字)
|
||||
================================================================================
|
||||
凡例: ◎=複数プログラムで使用, ○=1プログラムのみ, △=特殊形式/補足, ×=未使用
|
||||
備考: 全TYPE定義11件中、使用7件 (1,4,5,6,7,8,9) + 特殊形式3件 + 未使用4件 (2,3,10,11)
|
||||
|
||||
[8] COBOLの予約語一覧.txt (193語) との対照
|
||||
--------------------------------------------------------------------------------
|
||||
全予約語193語を全ソースファイル(src/*.cbl + sub/*.cbl + cpy/*.cpy)でgrep確認。
|
||||
予約語出現判定は単語境界\bマッチ、大文字小文字不区別。
|
||||
--------------------------------------------------------------------------------
|
||||
出現確認: 134語 (69.4%)
|
||||
未出現: 59語 (30.6%)
|
||||
--------------------------------------------------------------------------------
|
||||
出現確認した主な予約語 (134語):
|
||||
ACCEPT, ADD, AFTER, ALL, AND, ASCENDING, ASSIGN, AT, BLOCK, BY,
|
||||
CALL, CHARACTERS, CLOSE, COMP, COMP-3, COMPUTE, CONFIGURATION,
|
||||
CONTAINS, CONTINUE, COPY, COUNT, DATA, DATE, DELETE, DELIMITED,
|
||||
DEPENDING, DISPLAY, DIVIDE, DIVISION, ELSE, END, END-COMPUTE,
|
||||
END-EVALUATE, END-EXEC, END-IF, END-PERFORM, END-READ, END-SEARCH,
|
||||
END-STRING, END-UNSTRING, ENVIRONMENT, ERROR, EVALUATE, EXEC, EXIT,
|
||||
FD, FILE, FILE-CONTROL, FILLER, FIRST, FOR, FROM, FUNCTION, GIVING,
|
||||
GO, GOBACK, HIGH-VALUE, ID, IDENTIFICATION, IF, IN, INDEXED, INITIAL,
|
||||
INITIALIZE, INPUT, INPUT-OUTPUT, INSERT, INSPECT, INTO, INVALID, IS,
|
||||
KEY, LABEL, LINKAGE, MODE, MOVE, MULTIPLY, NOT, OBJECT-COMPUTER,
|
||||
OCCURS, OF, ON, OPEN, OR, ORDER, OTHER, OUTPUT, PERFORM, PIC,
|
||||
PROCEDURE, PROGRAM-ID, READ, RECORD, RECORDING, REDEFINES, REMAINDER,
|
||||
REPLACING, RETURN-CODE, ROUNDED, RUN, SEARCH, SECTION, SELECT, SET,
|
||||
SIZE, SOURCE-COMPUTER, SPACE, SPACES, SQL, STANDARD, STOP, STRING,
|
||||
SUBTRACT, TABLE, TALLYING, TEST, THEN, THRU, TIME, TIMES, TO, TRUE,
|
||||
TYPE, UNSTRING, UNTIL, USING, VALUE, VALUES, VARYING, WHEN,
|
||||
WHEN-COMPILED, WORKING-STORAGE, WRITE, ZERO
|
||||
--------------------------------------------------------------------------------
|
||||
未出現の予約語 (59語): 全て現行システムの要件範囲外
|
||||
ACCESS, ALPHABETIC, ALPHABETIC-UPPER, ALSO, ANY, APPLY, AUTHOR,
|
||||
BINARY, CHARACTER, COMP-4, CONDITION, CONVERTING, CORR, CURSOR,
|
||||
DATE-COMPILED, DATE-WRITTEN, DECLARATIVES, DELIMITER, DESCENDING,
|
||||
DISPLAY-1, DOWN, DYNAMIC, EJECT, END-ADD, END-CALL, END-DIVIDE,
|
||||
END-SUBTRACT, EXCEPTION, EXECUTE, FALSE, GET, GREATER, I-O-CONTROL,
|
||||
LENGTH, LOW-VALUE, NEXT, NUMERIC, OMITTED, OPTIONS, ORGANIZATION,
|
||||
PACKED-DECIMAL, PAGE, PAGE-COUNTER, POINTER, RANDOM, RECORDS, REMOVAL,
|
||||
RERUN, SENTENCE, SHIFT-IN, SHIFT-OUT, SKIP2, UP, UPON, USAGE, USE,
|
||||
WITH, WRITE-ONLY, ZEROS
|
||||
|
||||
|
||||
================================================================================
|
||||
サブシステム別 カバレッジサマリ
|
||||
================================================================================
|
||||
サブシステムA (KIN01INP→KIN02UPD→KIN03EXP→KIN04CHK→KIN05MAT→KIN06CLD): 6プログラム
|
||||
- PGM実装パターン: 2,11,12,13,15,16,17,18,19 (9種/29種中)
|
||||
KIN05MAT追加: パターン2(1:Nマッチング)をファイル照合で実装
|
||||
KIN06CLD追加: パターン12(レイアウト編集のみGETPUT)を新規実装
|
||||
- ステートメントカバレッジ: 使用33種/45種中 (新規追加無)
|
||||
KIN04CHK: WRITE FROM, IF THEN句4段階ネスト
|
||||
KIN05MAT: EVALUATE TRUE 3分岐マッチング制御, N:1ループ
|
||||
KIN06CLD: ACCEPT FROM COMMAND-LINE, EXEC SQL + bridge混在, PERFORM VARYING線形探索
|
||||
- EXEC SQL: KIN02UPD(CONNECT+INSERT+DELETE+COMMIT+ROLLBACK)
|
||||
KIN03EXP(CONNECT+SELECT+INCLUDE+FETCH)
|
||||
KIN06CLD(SELECT EMP_MASTER + DIRECT BRIDGE holiday)
|
||||
- KIN04CHK, KIN05MAT: EXEC SQLなし (ファイル入出力/マッチングのみ)
|
||||
|
||||
サブシステムB (ZAN01CHK→…→ZAN06UPD): 6プログラム
|
||||
- PGM実装パターン: 1,3,9,10,11,13,14,15,16,17,18,19 (12種/29種中)
|
||||
- ステートメントカバレッジ: 使用30種/45種中
|
||||
MULTIPLY, SUBTRACT, PERFORM TEST AFTERはZAN06UPDのみ
|
||||
PERFORM VARYING: ZAN06UPD + KIN06CLD (計2本、KIN06CLD追加)
|
||||
- EXEC SQL: ZAN06UPDのみ (全6種のSQL動詞)
|
||||
|
||||
サブシステムAプログラム (KIN01→KIN06): 6プログラム
|
||||
- パイプライン: KIN01INP(CSV→FB)→KIN02UPD(DB更新)→KIN03EXP(日付展開DB出力)
|
||||
→KIN04CHK(打刻チェック)→KIN05MAT(打刻休暇照合)→KIN06CLD(カレンダー生成)
|
||||
- KIN05MAT: 1:Nマッチング, EVALUATE TRUE 3分岐, 優先順位選定(01>02>03>04)
|
||||
- KIN06CLD: 休日判定+EMPLOYEE CURSOR LOOP, PERFORM VARYING線形探索, CALL br_open/br_query/br_get_col
|
||||
- SUB02MSG(メッセージ), SUB03END(ABEND)を使用. DBアクセスはbridge直接+EXEC SQL混在.
|
||||
|
||||
サブプログラム群 (SUB01-05):
|
||||
- 各1〜2パターンに特化 (日付/メッセージ/ABEND/チェック/丸め)
|
||||
- 全サブプログラムがGOBACK復帰 (EXIT PROGRAM不使用)
|
||||
|
||||
未カバーパターン (29種中16種):
|
||||
4-8(M:Nマッチング), 20(CSV+改行有), 21(オンライン),
|
||||
22-24(分割), 25-27(2段階マッチング), 28(SYSIN), 29(ASCII→EBCDIC)
|
||||
→ 全て現行要件の範囲外
|
||||
|
||||
未カバーステートメント (45種中13種)
|
||||
→ 全てCOBOL機能上不要なもの(ALTER, MERGE, SORT等JCL委譲)
|
||||
|
||||
TYPE定義カバレッジ:
|
||||
- 全TYPE定義11件中、使用7件 (X,9,9V9,S9V9,S9V9 COMP-3,S9 COMP-3,S9 COMP)
|
||||
- 特殊形式3件 (9(004).9(001), S9(m) DISPLAY, +9(009))
|
||||
- 未使用4件 (G,N,BINARY,ZZZ9)
|
||||
|
||||
予約語カバレッジ:
|
||||
- COBOLの予約語一覧.txt 193語中、ソース出現134語 (69.4%)
|
||||
- 未出現59語は全て現行システムの要件範囲外
|
||||
|
||||
================================================================================
|
||||
全カバレッジサマリ表
|
||||
+--------------------------+----------+----------+-----------+------------------+
|
||||
| カテゴリ | 全件 | 使用/実装| 未使用 | カバー率 |
|
||||
+--------------------------+----------+----------+-----------+------------------+
|
||||
| PGM実装パターン | 29件 | 13件 | 16件 | 44.8% |
|
||||
| ステートメント | 45ユニーク| 33件 | 12件 | 73.3% |
|
||||
| 備考: KIN06CLD追加によりパターン12(GETPUT)を◎新規実装。 |
|
||||
| 全使用ステートメントは既存◎。 |
|
||||
| TYPE定義 | 11件 | 7件(+特殊3)| 4件 | 63.6%(+27.3%特殊)|
|
||||
| COBOL予約語 | 193語 | 134語 | 59語 | 69.4% |
|
||||
+--------------------------+----------+----------+-----------+------------------+
|
||||
※PGMパターンの低カバー率は要件範囲外パターン(M:N,分割,SYSIN,etc.)が多いため。
|
||||
実装対象パターン(1-3,9-20)に限定すれば 13/19 = 68.4%。(KIN06CLDで12→13)
|
||||
================================================================================
|
||||
以上
|
||||
@@ -1,459 +0,0 @@
|
||||
================================================================================
|
||||
プログラムタイプ・ステートメント カバレッジ状況
|
||||
確認日時: 2026-06-23 15:00 (KIN07DAI追記)
|
||||
V2.4更新版: KIN07DAI追加(MULTIPLY/SUBTRACT/A追加、EVALUATE 4分岐パターン)
|
||||
対象: SRC12本 + SUB5本 + CPY12本 = 29ファイル実査
|
||||
ベース: PGM実装パターン一覧.txt (29件)
|
||||
ステートメント一覧.txt (49表記→45ユニーク)
|
||||
TYPE定義一覧.txt (11件)
|
||||
COBOLの予約語一覧.txt (193語)
|
||||
================================================================================
|
||||
|
||||
確認対象プログラム:
|
||||
サブシステムA (勤怠休暇): KIN01INP, KIN02UPD, KIN03EXP, KIN04CHK, KIN05MAT, KIN06CLD, KIN07DAI
|
||||
サブシステムB (残業統計): ZAN01CHK, ZAN02CHK, ZAN03CHK, ZAN04MAT, ZAN05CAL, ZAN06UPD
|
||||
サブプログラム共通: SUB01DAT, SUB02MSG, SUB03END, SUB04CHK, SUB05TIM
|
||||
|
||||
確認対象COPYファイル:
|
||||
KIN系: KIN01REC, KIN02REC, KIN03REC, KIN04REC, KIN05REC, KIN06REC, KIN07REC
|
||||
ZAN系: ZAN01REC, ZAN02REC, ZAN03REC, ZAN04REC, ZAN05REC
|
||||
共通連絡領域: ZANDATAC, ZANMSGAC, ZANENDAC, ZANCHKAC, ZANTIMAC
|
||||
SQL埋込: SQLCA(EXEC SQL INCLUDE)
|
||||
================================================================================
|
||||
|
||||
|
||||
[1] プログラムタイプ カバレッジ状況(PGM実装パターン一覧.txt 準拠)
|
||||
--------------------------------------------------------------------------------
|
||||
凡例: ◎=完全実装 ○=一部実装 △=関連実装あり ×=未実装 空=対象外
|
||||
|
||||
No | パターン |状態 | 該当プログラム
|
||||
----+-------------------------------------+------+---------------------------
|
||||
1 | マッチング処理(1:1) | ◎ | ZAN04MAT (R01 vs R02, APPL-ID照合)
|
||||
2 | マッチング処理(1:N) | ◎ | KIN05MAT (R01 vs R02, 休暇種別優先順位)
|
||||
| | | KIN03EXP (DB1行→日数分展開)
|
||||
3 | マッチング処理(N:1) | ◎ | ZAN03CHK (複数申請×同一打刻)
|
||||
4 | マッチング処理(M:N)→出力N件 | × | 未実装
|
||||
5 | マッチング処理(M:N)→出力M件 | × | 未実装
|
||||
6 | マッチング処理(M:N)→出力MxN件 | × | 未実装
|
||||
7 | マッチング(1:N)+キーブレイク | × | 未実装
|
||||
8 | マッチング(1:N)+キーブレイク | × | 未実装
|
||||
| (ブレイクキー>マッチングキー) | |
|
||||
9 | キーブレイク処理(集計) | ◎ | ZAN05CAL (APPL-ID単位累積集計)
|
||||
10 | キーブレイク処理(集約) | ○ | ZAN05CAL (先頭START-TIME保持)
|
||||
11 | キーブレイク処理(その他) | ◎ | ZAN02CHK (重複検出用), KIN03EXP (社員小計), KIN05MAT (N:1ループ)
|
||||
12 | レイアウト編集のみ(GETPUT) | ◎ | KIN06CLD (PARM年月の出勤日カレンダーをDB→FILE編集出力)
|
||||
13 | 項目チェック(重複チェック無) | ◎ | ZAN01CHK, ZAN03CHK, KIN01INP, SUB04CHK
|
||||
14 | 項目チェック(重複チェック有) | ◎ | ZAN02CHK (時間帯重複)
|
||||
15 | 振り分け(IF文) | ◎ | ZAN01CHK, ZAN02CHK, ZAN03CHK, ZAN05CAL,
|
||||
| | | ZAN06UPD, KIN01INP, KIN02UPD, KIN03EXP, KIN05MAT
|
||||
16 | 振り分け(EVALUATE文) | ◎ | ZAN01CHK, ZAN03CHK, ZAN04MAT, ZAN05CAL,
|
||||
| | | ZAN06UPD, KIN01INP, KIN02UPD, KIN05MAT, SUB04CHK, SUB05TIM
|
||||
17 | 内部テーブル検索 | ◎ | ZAN03CHK (SEARCH ALL休日), KIN01INP (SEARCH休暇種別),
|
||||
| | | KIN03EXP (SEARCH ALL休日)
|
||||
18 | DB更新/参照 | ◎ | ZAN06UPD (INSERT, UPDATE, SELECT)
|
||||
| | | KIN02UPD (INSERT, DELETE, SELECT)
|
||||
| | | KIN03EXP (SELECT, FETCH)
|
||||
19 | CSV→FB変換(改行コード無) | ◎ | ZAN01CHK (UNSTRING), KIN01INP (UNSTRING)
|
||||
20 | CSV→FB変換(改行コード有) | × | 未実装
|
||||
21 | オンラインPGM | × | バッチ処理のみ
|
||||
22 | 25分割 | × | 未実装
|
||||
23 | 50分割 | × | 未実装
|
||||
24 | 100分割 | × | 未実装
|
||||
25 | 2段階マッチング(N:1→N:1) | × | 未実装
|
||||
26 | 2段階マッチング(M:N→M:N) | × | 未実装
|
||||
27 | 2段階マッチング(1:1→1:1) | × | 未実装
|
||||
28 | SYSIN読込・チェック | × | 未実装
|
||||
29 | ASCII→EBCDIC変換 | × | 未実装
|
||||
================================================================================
|
||||
カバー率: 29パターン中 実装13件 (◎12件 + ○1件) = 44.8% ※
|
||||
凡例: ◎=完全実装, ○=一部実装, ×=未実装
|
||||
備考1: 未実装パターン(4-8,12,20-29)は現行システムの要件範囲外
|
||||
備考2: ※前版から低下したのは「DB参照」を正規29パターンに統合したため
|
||||
(前版は正規リスト外のDB参照を19番に追加し30パターン表示していた)
|
||||
|
||||
|
||||
ステートメント|KIN01|KIN02|KIN03|KIN04|KIN05|KIN06|ZAN01|ZAN02|ZAN03|ZAN04|ZAN05|ZAN06|SUB1|SUB2|SUB3|SUB4|SUB5|状態|使用例
|
||||
| INP | UPD | EXP | CHK | MAT | CLD | CHK | CHK | CHK | MAT | CAL | UPD |DAT |MSG |END |CHK |TIM | |
|
||||
ACCEPT | - | - | - | - | - | ○ | - | - | - | - | - | - | - | - | - | - | - | ◎ | KIN06CLDのACCEPT COMMAND-LINE (ZAN05CALのACCEPT FROM DATEは削除済)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
ADD | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | - | - | ◎ | 全メインプログラム (ADD 1 TO CUN-R01INN)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
ALTER | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
ALTEREDGOTO | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用 (KIN07DAIで検討したがフォールスルー回避のためEVALUATE採用)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
CALL | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | - | - | ◎ | 全メインプログラム (CALL SUB01DAT, SUB02MSG, SUB03END, SUB04CHK, SUB05TIM)
|
||||
| | | | | | | | | | | | | | | | CALL 'SUB02MSG'...
|
||||
| | | | | | | | | | | | | | | | CALL 'SUB04CHK'...
|
||||
| | | | | | | | | | | | | | | | CALL 'SUB05TIM'...
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
CANCEL | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
CLOSE | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | - | - | ◎ | ファイル有りの全PGM (CLOSE R01INNFIL, W01OUTFIL)
|
||||
| | | | | | | | | | | | | | | | W01OUTFIL
|
||||
| | | | | | | | | | | | | | | | (ファイル有りの全PGM)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
COMPUTE | - | - | ○ | - | - | ○ | ○ | - | ○ | - | ○ | - | - | - | - | - | ○ | ◎ | ZAN01CHK, ZAN03CHK, ZAN05CAL, KIN03EXP, KIN06CLD, SUB05TIM
|
||||
| | | | | | | | | | | | | | | | COMPUTE ROUNDED
|
||||
| | | | | | | | | | | | | | | | ON SIZE ERROR
|
||||
| | | | | | | | | | | | | | | | (ZAN01, ZAN03, ZAN05, KIN03, KIN06, SUB05)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
CONTINUE | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | ○ | - | ○ | ○ | - | - | - | - | - | ◎ | SEARCH ALL AT END, EVALUATE WHEN OTHER, COMPUTE ON SIZE ERROR
|
||||
| | | | | | | | | | | | | | | | EVALUATE WHEN OTHER CONTINUE
|
||||
| | | | | | | | | | | | | | | | COMPUTE ON SIZE ERROR CONT.
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
DELETE | - | ○ | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ○ | KIN02UPDのみ (EXEC SQL DELETE)
|
||||
| | | | | | | | | | | | | | | | (KIN02UPDのみ)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
DISPLAY | - | - | - | - | - | - | - | - | - | - | - | - | - | ○ | ○ | - | - | △ | SUB02MSG, SUB03END
|
||||
| | | | | | | | | | | | | | | | SUB03END: DISPLAY abend
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
DIVIDE | - | - | - | ○ | - | - | ○ | - | - | - | ○ | - | - | - | - | - | ○ | ◎ | ZAN01CHK, ZAN05CAL, SUB05TIM, KIN07DAI (DIVIDE...GIVING...REMAINDER)
|
||||
| | | | | | | | | | | | | | | | GIVING B REMAINDER C
|
||||
| | | | | | | | | | | | | | | | (ZAN01, ZAN05, SUB05, KIN07)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
ENTRY | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
EVALUATE | ○ | ○ | ○ | - | ○ | - | ○ | - | ○ | ○ | ○ | ○ | - | - | - | ○ | ○ | ◎ | KIN01INP, KIN02UPD, KIN03EXP, KIN05MAT, ZAN01-06, SUB04CHK, SUB05TIM (12本中)
|
||||
| | | | | | | | | | | | | | | | EVALUATE C01CHKTYP
|
||||
| | | | | | | | | | | | | | | | (KIN01-03, KIN05, ZAN01,03-06, SUB04,05)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
EXEC CICS | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用 (全バッチ)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
EXEC SQL | - | ○ | ○ | - | - | ○ | - | - | - | - | - | ○ | - | - | - | - | - | ◎ | KIN02UPD, KIN03EXP, KIN06CLD, ZAN06UPD (CONNECT, SELECT, INSERT, UPDATE, DELETE, COMMIT, ROLLBACK)
|
||||
| | | | | | | | | | | | | | | | UPDATE, DELETE, COMMIT,
|
||||
| | | | | | | | | | | | | | | | ROLLBACK, INCLUDE
|
||||
| | | | | | | | | | | | | | | | (ZAN06UPD, KIN02UPD,
|
||||
| | | | | | | | | | | | | | | | KIN03EXP, KIN06CLD)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
EXIT | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ◎ | 全14プログラム (xxx-EXT. EXIT.)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
EXIT PROGRAM | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用 (GOBACKで代用)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
GOBACK | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ◎ | 全14プログラム
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
GO TO | ○ | - | - | ○ | - | - | ○ | - | - | - | - | - | - | - | - | ○ | - | ◎ | ZAN01CHK, KIN01INP, KIN04CHK, SUB04CHK (GO TO xxx-EXT)
|
||||
| | | | | | | | | | | | | | | | (ZAN01CHK, KIN01INP,
|
||||
| | | | | | | | | | | | | | | | KIN04CHK, SUB04CHK)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
IF | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | ○ | ○ | ◎ | 全メインプログラム + SUB04CHK, SUB05TIM
|
||||
| | | | | | | | | | | | | | | | IF cond ... ELSE ... END-IF
|
||||
| | | | | | | | | | | | | | | | IF cond1 AND cond2
|
||||
| | | | | | | | | | | | | | | | IF SQLCODE NOT = 0
|
||||
| | | | | | | | | | | | | | | | (メイン全PGM+SUB04,05)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
INITIALIZE | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | - | - | ◎ | 全メインプログラム
|
||||
| | | | | | | | | | | | | | | | INITIALIZE W01OUTREC
|
||||
| | | | | | | | | | | | | | | | (全メインプログラム)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
INSPECT | - | - | - | ○ | - | - | ○ | - | - | - | - | - | ○ | - | - | - | - | ◎ | ZAN01CHK, KIN04CHK, SUB04CHK (INSPECT TALLYING)
|
||||
| | | | | | | | | | | | | | | | (ZAN01CHK, KIN04CHK, SUB04CHK)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
MERGE | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用 (SORT/JCL委譲)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
MOVE | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ◎ | 全14プログラム
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
MULTIPLY | - | - | - | - | - | - | - | - | - | - | - | ○ | - | - | - | - | - | ◎ | ZAN06UPD, KIN07DAI (MULTIPLY A BY 60 GIVING B)
|
||||
| | | | | | | | | | | | | | | | (ZAN06UPD, KIN07DAI)
|
||||
| | | | | | | | | | | | | | | | KIN07DAI: 時間→分変換(6100PATAFN/6300PATCFN)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
OPEN | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | - | - | ◎ | ファイル有りの全PGM
|
||||
| | | | | | | | | | | | | | | | (ファイル有りの全PGM)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
PERFORM | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | ○ | ○ | ◎ | 全メインプログラム + SUB04CHK, SUB05TIM
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
PERFORM UNTIL | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | - | - | ◎ | 全メインプログラム (PERFORM UNTIL END-PERFORM)
|
||||
| | | | | | | | | | | | | | | | ... END-PERFORM (ZAN03CHK)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
PERFORM VARY | - | - | - | - | - | ○ | - | - | - | - | - | ○ | - | - | - | - | - | ◎ | ZAN06UPD, KIN06CLD (PERFORM VARYING線形探索)
|
||||
| | | | | | | | | | | | | | | | (ZAN06UPD, KIN06CLD)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
PERM TEST AFT | - | - | - | - | - | - | - | - | - | - | - | ○ | - | - | - | - | - | ○ | ZAN06UPDのみ (PERFORM TEST AFTER VARYING)
|
||||
| | | | | | | | | | | | | | | | VARYING ... (ZAN06UPD)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
READ | ○ | ○ | - | ○ | ○ | - | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | - | - | ◎ | KIN03EXP以外の全メインPGM
|
||||
| | | | | | | | | | | | | | | | AT END/NOT AT END/END-READ
|
||||
| | | | | | | | | | | | | | | | (KIN03EXP,KIN06CLD以外の全メインPGM)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
RELEASE | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
RETURN | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
REWRITE | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
SEARCH | ○ | - | ○ | - | - | - | - | - | ○ | - | - | - | - | - | - | - | - | ◎ | KIN01INP (SEARCH), KIN03EXP (SEARCH ALL), ZAN03CHK (SEARCH ALL)
|
||||
| | | | | | | | | | | | | | | | SEARCH (KIN01INP, 直線探索)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
SET | ○ | - | ○ | - | - | - | - | - | ○ | - | ○ | - | - | - | - | - | - | ◎ | KIN01INP, KIN03EXP, ZAN03CHK, ZAN05CAL
|
||||
| | | | | | | | | | | | | | | | SET cond TO TRUE
|
||||
| | | | | | | | | | | | | | | | (KIN01,03, ZAN03,05)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
SORT | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 使用禁止 (JCL PGM=SORT)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
START | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用 (VSAM非対応)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
STOP RUN | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ○ | - | - | ○ | SUB03ENDのみ (STOP RUN RETURN-CODE)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
STRING | ○ | ○ | - | ○ | - | ○ | ○ | ○ | ○ | ○ | - | ○ | - | ○ | - | - | - | ◎ | KIN01INP, KIN02UPD, KIN04CHK, KIN06CLD, ZAN01-ZAN04, ZAN06UPD, SUB02MSG
|
||||
| | | | | | | | | | | | | | | | INTO X END-STRING
|
||||
| | | | | | | | | | | | | | | | (KIN01,02,04,06, ZAN01-04,06, SUB02)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
SUBTRACT | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ◎ | KIN07DAI (ZAN06UPDのSUBTRACTは削除済)
|
||||
| | | | | | | | | | | | | | | | KIN07DAI: ランチ時間除外(6100PATAFN/6300PATCFN)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
UNSTRING | ○ | - | - | ○ | - | - | ○ | - | - | - | - | - | - | - | - | - | - | ◎ | KIN01INP, KIN04CHK, ZAN01CHK
|
||||
| | | | | | | | | | | | | | | | INTO ... TALLYING IN CNT
|
||||
| | | | | | | | | | | | | | | | (KIN01INP, KIN04CHK, ZAN01CHK)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
WRITE | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | - | - | - | - | - | ◎ | ファイル出力有りの全PGM
|
||||
| | | | | | | | | | | | | | | | (ファイル出力有りのPGM)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
WRITE FROM/ | - | - | - | ○ | - | - | - | - | - | - | - | - | - | - | - | - | - | ○ | KIN04CHK (2050NORMSOR正常出力にWRITE FROM使用)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
WRITE AFTER | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | × | 未使用 (WRITE FROMはKIN04CHKで使用)
|
||||
--------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+----+----+----+----+----+----+--------------------------
|
||||
================================================================================
|
||||
ステートメントカバー率: 45ユニーク中 使用33件 (◎=27 + ○=0 + △=6)
|
||||
カバー率 73.3% (33/45)
|
||||
|
||||
NOTE: KIN07DAI追加に伴いMULTIPLY/SUBTRACTを◎に昇格(ZAN06UPD + KIN07DAIの2プログラム以上で使用)。新規構文の追加は無し(全構文既存◎)。
|
||||
未使用12件: ALTER, ALTEREDGOTO, CANCEL, ENTRY, EXEC CICS, EXIT PROGRAM,
|
||||
MERGE, RELEASE, RETURN, REWRITE, SORT, START, WRITE AFTER
|
||||
|
||||
|
||||
[3] PERFORM文 バリエーション カバレッジ
|
||||
--------------------------------------------------------------------------------
|
||||
No | 形式 | 状態 | 該当プログラム
|
||||
----+--------------------------+------+------------------------------------------
|
||||
1 | PERFORM 段落名 | ◎ | 全メインプログラム(ZAN01-06, KIN01-03)
|
||||
| | | + SUB04CHK, SUB05TIM
|
||||
2 | PERFORM 段落名 UNTIL | ◎ | 全メインプログラム(ZAN01-06, KIN01-03)
|
||||
| | | PERFORM 2000MAJSOR UNTIL cond
|
||||
3 | PERFORM UNTIL ... | ◎ | ZAN03CHK (1300HOLIDAYSOR: 休日ファイル)
|
||||
| END-PERFORM | | KIN03EXP (2200-EXPAND-DATE: 日付展開)
|
||||
4 | PERFORM VARYING | ◎ | ZAN06UPD (2100SUMMARYSOR: 月バリデーション)
|
||||
| | | KIN06CLD (休日線形探索)
|
||||
5 | PERFORM TEST AFTER | ○ | ZAN06UPD (2210MONTHLYSUBSOR: リトライ制御)
|
||||
6 | PERFORM THRU | ○ | KIN03EXP (2100-PROCESS-EMP THRU ...-EXIT,
|
||||
| | | 2200-EXPAND-DATE THRU ...-EXIT)
|
||||
================================================================================
|
||||
|
||||
|
||||
[4] IF文 バリエーション カバレッジ
|
||||
--------------------------------------------------------------------------------
|
||||
No | 形式 | 状態 | 該当プログラム
|
||||
----+-------------------------------+------+--------------------------------------
|
||||
1 | IF 条件 ... END-IF | ◎ | ZAN01-06, KIN01-03, SUB04, SUB05
|
||||
2 | IF 条件 ... ELSE ... END-IF | ◎ | ZAN01-03, KIN01-03, SUB04 (ほか)
|
||||
3 | IF 複合条件(AND) | ◎ | ZAN03CHK (時間範囲), ZAN06UPD (月判定)
|
||||
| | | SUB04CHK (日付範囲) 等
|
||||
4 | IF 複合条件(OR) | ◎ | KIN03EXP (週末判定: 0 OR 6)
|
||||
5 | IF ... THEN ... | ◎ | SUB04CHK, SUB05TIM
|
||||
6 | IF ... NOT = ... | ◎ | ZAN06UPD (SQLCODE判定), KIN02UPD
|
||||
================================================================================
|
||||
|
||||
|
||||
[5] 未カバーステートメント 一覧
|
||||
--------------------------------------------------------------------------------
|
||||
No | ステートメント | 備考
|
||||
----+---------------------+-----------------------------------------------
|
||||
1 | ALTER | 非推奨、使用予定なし
|
||||
2 | ALTEREDGOTO | GO TO DEPENDING、非推奨
|
||||
3 | CANCEL | サブプログラム動的削除は不要
|
||||
4 | ENTRY | エントリポイント複数定義不要
|
||||
5 | EXEC CICS | CICS非対応(全バッチ処理)
|
||||
6 | EXIT PROGRAM | GOBACKで代用
|
||||
7 | MERGE | COBOL MERGEはJCL SORTに委譲
|
||||
8 | RELEASE | SORT関連、JCL SORT委譲
|
||||
9 | RETURN | SORT関連、JCL SORT委譲
|
||||
10 | REWRITE | VSAM/INDEXED非対応
|
||||
11 | SORT | COBOL SORT禁止(JCL PGM=SORT)
|
||||
12 | START | VSAM非対応
|
||||
13 | WRITE AFTER | 未使用 (WRITE FROMはKIN04CHKで使用)
|
||||
================================================================================
|
||||
|
||||
|
||||
[6] COPYファイル・SUBプログラム 参照状況
|
||||
--------------------------------------------------------------------------------
|
||||
COPY/SUB名 | 用途 | 使用プログラム
|
||||
---------------+----------------------------+-------------------------------
|
||||
KIN01REC | 休暇申請レコード(80B) | KIN01INP, KIN02UPD
|
||||
KIN02REC | 休暇日別レコード(80B) | KIN03EXP, KIN05MAT
|
||||
KIN03REC | 照合結果レコード(160B) | KIN05MAT
|
||||
KIN04REC | 打刻編集レコード(80B) | KIN04CHK, KIN05MAT, KIN07DAI
|
||||
KIN05REC | エラーログ(VB) | KIN01INP, KIN02UPD
|
||||
KIN06REC | 出勤日カレンダー(80B) | KIN06CLD
|
||||
KIN07REC | 日別計算結果(200B) | KIN07DAI
|
||||
ZAN01REC | 申請レコード(80B) | ZAN01CHK, ZAN02CHK, ZAN03CHK,
|
||||
| | ZAN04MAT (全4本)
|
||||
ZAN02REC | マッチング結果(80B) | ZAN04MAT, ZAN05CAL
|
||||
ZAN03REC | 集計結果レコード(80B) | ZAN05CAL, ZAN06UPD
|
||||
ZAN04REC | DBCLEAN用レコード(80B) | ZAN04MAT, ZAN06UPD
|
||||
ZAN05REC | エラーログ(VB) | ZAN01-04, ZAN06UPD (計5本)
|
||||
ZANDATAC | SUB01DAT連絡領域 | ZAN01,02,04,05,06, KIN01, KIN03
|
||||
ZANMSGAC | SUB02MSG連絡領域 | ZAN01-06, KIN01-07, SUB03END
|
||||
ZANENDAC | SUB03END連絡領域 | ZAN01-06, KIN01-07
|
||||
ZANCHKAC | SUB04CHK連絡領域 | ZAN01CHK, KIN01INP, KIN04CHK
|
||||
ZANTIMAC | SUB05TIM連絡領域 | ZAN05CAL, KIN07DAI
|
||||
SQLCA | SQLCA (EXEC SQL INCLUDE) | ZAN06UPD, KIN02UPD, KIN03EXP, KIN06CLD
|
||||
| |
|
||||
SUB01DAT | 運用日付取得 | ZAN01,02,04,05,06, KIN01, KIN03
|
||||
SUB02MSG | メッセージ編集出力 | ZAN01-06, KIN01-07, SUB03END
|
||||
SUB03END | ABEND処理 | ZAN01-06, KIN01-07
|
||||
SUB04CHK | 項目チェック | ZAN01CHK, KIN01INP, KIN04CHK
|
||||
SUB05TIM | 時刻丸め計算 | ZAN05CAL, KIN07DAI
|
||||
================================================================================
|
||||
|
||||
|
||||
[7] TYPE定義 カバレッジ状況(TYPE定義一覧.txt 準拠)
|
||||
--------------------------------------------------------------------------------
|
||||
No | TYPE定義 | 状態 | 使用例
|
||||
----+---------------------+------+-------------------------------------------
|
||||
1 | X(m) | ◎ | PIC X(001)〜X(198): STATUS, OVT-TYPE,
|
||||
| | | APPL-ID, EMP-ID, ERR-DETAIL,
|
||||
| | | FILLER, 各種MSG領域 (全COPY/全PGM)
|
||||
2 | G(m) | × | 未使用(DBCS文字列不要)
|
||||
3 | N(m) | × | 未使用(National文字列不要)
|
||||
4 | 9(m) | ◎ | PIC 9(001)〜9(009): CNS定数, 日付, 時刻,
|
||||
| | | APPL-ID(KIN系), ERR-CATEGORY,
|
||||
| | | PROC-SEQ, RRCコード, MSG-CODE
|
||||
5 | 9(m)V9(n) | ◎ | PIC 9(004)V9(001): OVT-HOURS,
|
||||
| | | 加班時間(集計/丸め/残容量)
|
||||
| | | (ZAN03REC, ZANTIMAC, ZAN05CAL, ZAN06UPD, SUB05TIM)
|
||||
6 | S9(m)V9(n) | ○ | PIC S9(005)V9(001): WRK-HOURS
|
||||
| | | (SUB05TIM, DISPLAY形式, COMP無)
|
||||
7 | S9(m)V9(n) COMP-3 | ○ | PIC S9(007)V9(001) COMP-3: DB-OVT-HOURS
|
||||
| | | (ZAN06UPDのみ)
|
||||
8 | S9(m) COMP-3 | ◎ | PIC S9(009) COMP-3: CUN-R01INN他
|
||||
| | | (全メインプログラム: カウンタ領域)
|
||||
9 | S9(m) COMP | ○ | PIC S9(004) COMP: D01FKICOD
|
||||
| | | (ZANDATAC, SUB01DAT)
|
||||
| | | PIC 9(002) COMP: WRK-COMMA-CNT
|
||||
| | | (ZAN01CHK, KIN01INP)
|
||||
| | | PIC 9(004) COMP: WRK-HOLIDAY-CNT
|
||||
| | | (ZAN03CHK)
|
||||
| | | PIC 9(004) COMP: WRK-HD-COUNT
|
||||
| | | (KIN03EXP)
|
||||
10 | S9(m) BINARY | × | 未使用(COMP-5/BINARY不使用)
|
||||
11 | ZZZ9(編集文字) | × | 未使用
|
||||
| | |
|
||||
| 補足1: 9(004).9(001) | △ | PIC 9(004).9(001) 編集数字(実小数点)
|
||||
| | | WRK-OVT-HOURS-EDITED (ZAN06UPD)
|
||||
| 補足2: S9(m) DISPLAY | △ | PIC S9(005): WRK-MINUTES, WRK-REMAINDER
|
||||
| | | (SUB05TIM 符号付非COMP整数)
|
||||
| | | PIC S9(004): WRK-SIGN (SUB04CHK)
|
||||
| 補足3: +9(009) | △ | PIC +9(009): WRK-SQLCODE-DISP
|
||||
| | | (ZAN06UPD, KIN02UPD 符号強制編集数字)
|
||||
================================================================================
|
||||
凡例: ◎=複数プログラムで使用, ○=1プログラムのみ, △=特殊形式/補足, ×=未使用
|
||||
備考: 全TYPE定義11件中、使用7件 (1,4,5,6,7,8,9) + 特殊形式3件 + 未使用4件 (2,3,10,11)
|
||||
|
||||
[8] COBOLの予約語一覧.txt (193語) との対照
|
||||
--------------------------------------------------------------------------------
|
||||
全予約語193語を全ソースファイル(src/*.cbl + sub/*.cbl + cpy/*.cpy)でgrep確認。
|
||||
予約語出現判定は単語境界\bマッチ、大文字小文字不区別。
|
||||
--------------------------------------------------------------------------------
|
||||
出現確認: 134語 (69.4%)
|
||||
未出現: 59語 (30.6%)
|
||||
--------------------------------------------------------------------------------
|
||||
出現確認した主な予約語 (134語):
|
||||
ACCEPT, ADD, AFTER, ALL, AND, ASCENDING, ASSIGN, AT, BLOCK, BY,
|
||||
CALL, CHARACTERS, CLOSE, COMP, COMP-3, COMPUTE, CONFIGURATION,
|
||||
CONTAINS, CONTINUE, COPY, COUNT, DATA, DATE, DELETE, DELIMITED,
|
||||
DEPENDING, DISPLAY, DIVIDE, DIVISION, ELSE, END, END-COMPUTE,
|
||||
END-EVALUATE, END-EXEC, END-IF, END-PERFORM, END-READ, END-SEARCH,
|
||||
END-STRING, END-UNSTRING, ENVIRONMENT, ERROR, EVALUATE, EXEC, EXIT,
|
||||
FD, FILE, FILE-CONTROL, FILLER, FIRST, FOR, FROM, FUNCTION, GIVING,
|
||||
GO, GOBACK, HIGH-VALUE, ID, IDENTIFICATION, IF, IN, INDEXED, INITIAL,
|
||||
INITIALIZE, INPUT, INPUT-OUTPUT, INSERT, INSPECT, INTO, INVALID, IS,
|
||||
KEY, LABEL, LINKAGE, MODE, MOVE, MULTIPLY, NOT, OBJECT-COMPUTER,
|
||||
OCCURS, OF, ON, OPEN, OR, ORDER, OTHER, OUTPUT, PERFORM, PIC,
|
||||
PROCEDURE, PROGRAM-ID, READ, RECORD, RECORDING, REDEFINES, REMAINDER,
|
||||
REPLACING, RETURN-CODE, ROUNDED, RUN, SEARCH, SECTION, SELECT, SET,
|
||||
SIZE, SOURCE-COMPUTER, SPACE, SPACES, SQL, STANDARD, STOP, STRING,
|
||||
SUBTRACT, TABLE, TALLYING, TEST, THEN, THRU, TIME, TIMES, TO, TRUE,
|
||||
TYPE, UNSTRING, UNTIL, USING, VALUE, VALUES, VARYING, WHEN,
|
||||
WHEN-COMPILED, WORKING-STORAGE, WRITE, ZERO
|
||||
--------------------------------------------------------------------------------
|
||||
未出現の予約語 (59語): 全て現行システムの要件範囲外
|
||||
ACCESS, ALPHABETIC, ALPHABETIC-UPPER, ALSO, ANY, APPLY, AUTHOR,
|
||||
BINARY, CHARACTER, COMP-4, CONDITION, CONVERTING, CORR, CURSOR,
|
||||
DATE-COMPILED, DATE-WRITTEN, DECLARATIVES, DELIMITER, DESCENDING,
|
||||
DISPLAY-1, DOWN, DYNAMIC, EJECT, END-ADD, END-CALL, END-DIVIDE,
|
||||
END-SUBTRACT, EXCEPTION, EXECUTE, FALSE, GET, GREATER, I-O-CONTROL,
|
||||
LENGTH, LOW-VALUE, NEXT, NUMERIC, OMITTED, OPTIONS, ORGANIZATION,
|
||||
PACKED-DECIMAL, PAGE, PAGE-COUNTER, POINTER, RANDOM, RECORDS, REMOVAL,
|
||||
RERUN, SENTENCE, SHIFT-IN, SHIFT-OUT, SKIP2, UP, UPON, USAGE, USE,
|
||||
WITH, WRITE-ONLY, ZEROS
|
||||
|
||||
|
||||
================================================================================
|
||||
サブシステム別 カバレッジサマリ
|
||||
================================================================================
|
||||
サブシステムA (KIN01INP→…→KIN07DAI): 7プログラム
|
||||
- PGM実装パターン: 2,11,12,13,15,16,17,18,19 (9種/29種中)
|
||||
KIN05MAT追加: パターン2(1:Nマッチング)をファイル照合で実装
|
||||
KIN06CLD追加: パターン12(レイアウト編集のみGETPUT)を新規実装
|
||||
- ステートメントカバレッジ: 使用33種/45種中 (MULTIPLY/SUBTRACT/サブシステムA初使用)
|
||||
KIN04CHK: WRITE FROM, IF THEN句4段階ネスト
|
||||
KIN05MAT: EVALUATE TRUE 3分岐マッチング制御, N:1ループ
|
||||
KIN06CLD: ACCEPT FROM COMMAND-LINE, EXEC SQL + bridge混在, PERFORM VARYING線形探索
|
||||
KIN07DAI: EVALUATE 4分岐, MULTIPLY/SUBTRACT併用時間計算, CALL SUB05TIM
|
||||
- EXEC SQL: KIN02UPD(CONNECT+INSERT+DELETE+COMMIT+ROLLBACK)
|
||||
KIN03EXP(CONNECT+SELECT+INCLUDE+FETCH)
|
||||
KIN06CLD(SELECT EMP_MASTER + DIRECT BRIDGE holiday)
|
||||
- KIN04CHK, KIN05MAT, KIN07DAI: EXEC SQLなし (ファイル入出力/マッチングのみ)
|
||||
|
||||
サブシステムB (ZAN01CHK→…→ZAN06UPD): 6プログラム
|
||||
- PGM実装パターン: 1,3,9,10,11,13,14,15,16,17,18,19 (12種/29種中)
|
||||
- ステートメントカバレッジ: 使用30種/45種中
|
||||
MULTIPLY, SUBTRACT, PERFORM TEST AFTERはZAN06UPDのみ
|
||||
PERFORM VARYING: ZAN06UPD + KIN06CLD (計2本、KIN06CLD追加)
|
||||
- EXEC SQL: ZAN06UPDのみ (全6種のSQL動詞)
|
||||
|
||||
サブシステムAプログラム (KIN01→KIN07): 7プログラム
|
||||
- パイプライン: KIN01INP(CSV→FB)→KIN02UPD(DB更新)→KIN03EXP(日付展開DB出力)
|
||||
→KIN04CHK(打刻チェック)→KIN05MAT(打刻休暇照合)→KIN06CLD(カレンダー生成)
|
||||
→KIN07DAI(日別計算 4パターン分岐)
|
||||
- KIN05MAT: 1:Nマッチング, EVALUATE TRUE 3分岐, 優先順位選定(01>02>03>04)
|
||||
- KIN06CLD: 休日判定+EMPLOYEE CURSOR LOOP, PERFORM VARYING線形探索, CALL br_open/br_query/br_get_col
|
||||
- KIN07DAI: EVALUATE 4分岐, MULTIPLY/SUBTRACT時間計算, CALL SUB05TIM丸め
|
||||
- SUB02MSG(メッセージ), SUB03END(ABEND), SUB05TIM(丸め)を使用. DBアクセスはbridge直接+EXEC SQL混在.
|
||||
|
||||
サブプログラム群 (SUB01-05):
|
||||
- 各1〜2パターンに特化 (日付/メッセージ/ABEND/チェック/丸め)
|
||||
- 全サブプログラムがGOBACK復帰 (EXIT PROGRAM不使用)
|
||||
|
||||
未カバーパターン (29種中16種):
|
||||
4-8(M:Nマッチング), 20(CSV+改行有), 21(オンライン),
|
||||
22-24(分割), 25-27(2段階マッチング), 28(SYSIN), 29(ASCII→EBCDIC)
|
||||
→ 全て現行要件の範囲外
|
||||
|
||||
未カバーステートメント (45種中13種)
|
||||
→ 全てCOBOL機能上不要なもの(ALTER, MERGE, SORT等JCL委譲)
|
||||
|
||||
TYPE定義カバレッジ:
|
||||
- 全TYPE定義11件中、使用7件 (X,9,9V9,S9V9,S9V9 COMP-3,S9 COMP-3,S9 COMP)
|
||||
- 特殊形式3件 (9(004).9(001), S9(m) DISPLAY, +9(009))
|
||||
- 未使用4件 (G,N,BINARY,ZZZ9)
|
||||
|
||||
予約語カバレッジ:
|
||||
- COBOLの予約語一覧.txt 193語中、ソース出現134語 (69.4%)
|
||||
- 未出現59語は全て現行システムの要件範囲外
|
||||
|
||||
================================================================================
|
||||
全カバレッジサマリ表
|
||||
+--------------------------+----------+----------+-----------+------------------+
|
||||
| カテゴリ | 全件 | 使用/実装| 未使用 | カバー率 |
|
||||
+--------------------------+----------+----------+-----------+------------------+
|
||||
| PGM実装パターン | 29件 | 13件 | 16件 | 44.8% |
|
||||
| ステートメント | 45ユニーク| 33件 | 12件 | 73.3% |
|
||||
| 備考: KIN06CLD追加によりパターン12(GETPUT)を◎新規実装。 |
|
||||
| KIN07DAI追加によりサブシステムA初のMULTIPLY/SUBTRACT使用。|
|
||||
| TYPE定義 | 11件 | 7件(+特殊3)| 4件 | 63.6%(+27.3%特殊)|
|
||||
| COBOL予約語 | 193語 | 134語 | 59語 | 69.4% |
|
||||
+--------------------------+----------+----------+-----------+------------------+
|
||||
※PGMパターンの低カバー率は要件範囲外パターン(M:N,分割,SYSIN,etc.)が多いため。
|
||||
実装対象パターン(1-3,9-20)に限定すれば 13/19 = 68.4%。(KIN06CLDで12→13)
|
||||
================================================================================
|
||||
以上
|
||||
Reference in New Issue
Block a user