JIN03RAN Phase B: COMP-4/CORR/DESCENDING/DOWN/UP カバレッジ追加
This commit is contained in:
@@ -0,0 +1,82 @@
|
||||
# JIN03RAN 詳細設計書
|
||||
|
||||
## プログラム概要
|
||||
|
||||
| 項目 | 内容 |
|
||||
|------|------|
|
||||
| プログラムID | JIN03RAN(人事→JINji, 03, ランキング→RAN) |
|
||||
| プログラムタイプ | 編集出力(ランキング生成) |
|
||||
| 機能 | SKILL-AGG(JIN02SKL出力のスキル別評価集計結果)を読み込み、平均点降順でランキング出力 |
|
||||
| CALL方式 | メインプログラム(JCLからCALL) |
|
||||
| DBアクセス | なし |
|
||||
| 使用サブプログラム | SUB01DAT(日付), SUB02MSG(メッセージ) |
|
||||
|
||||
## カバレッジ対象キーワード
|
||||
|
||||
| 予約語 | 区分 | 使用箇所 |
|
||||
|:-------|:----:|:---------|
|
||||
| COMP-4 | 予約語(25) | `PIC 9(004) COMP-4` バイナリカウンタ + `ADD 1 TO CUN-COMP4` |
|
||||
| CORR | 予約語(33) | `MOVE CORRESPONDING WS-CORR-SRC TO WS-CORR-DST` |
|
||||
| DESCENDING | 予約語(45) | `OCCURS 3 TIMES DESCENDING KEY IS WS-THR` 内部表定義 |
|
||||
| DOWN | 予約語(50) | `SET WRK-IDX DOWN BY 1` |
|
||||
| UP | 予約語(177) | `SET WRK-RANK-NO UP BY 1`, `SET WRK-OUT-IDX UP BY 1` |
|
||||
| VALUES | 予約語(183) | 88-level 単一VALUE(複数VALUESは未カバー) |
|
||||
|
||||
## ファイル一覧
|
||||
|
||||
| DD名 | ファイル名 | 編成 | RECM | サイズ | I/O | 用途 |
|
||||
|:----:|:---------:|:----:|:----:|:-----:|:---:|------|
|
||||
| JIN03R01 | SKILL-AGG | SEQUENTIAL | FB | 200 | INPUT | スキル別評価集計結果(JIN02SKL出力) |
|
||||
| JIN03W01 | RANK-OUT | SEQUENTIAL | FB | 200 | OUTPUT | ランキング出力 |
|
||||
|
||||
## レコード定義
|
||||
|
||||
### SKILL-AGG-REC(JIN03R01, 200B)
|
||||
JIN02SKL 詳細設計書の W01 定義と同じ(SKILL-AGG-REC.cpy 参照)。
|
||||
|
||||
### JIN03RAN-REC(JIN03W01, 200B 新規COPY書式)
|
||||
|
||||
| 項目 | PIC | 内容 |
|
||||
|:----|:---:|:-----|
|
||||
| RANK-NO | 9(4) | ランキング順位 |
|
||||
| SKILL-CODE | X(4) | スキルコード |
|
||||
| SCORE | 9(3)V9(2) | 平均点 |
|
||||
| EMP-COUNT | 9(5) | 評価人数 |
|
||||
| LEVEL-NAME | X(20) | レベル名称 |
|
||||
| RANK-CODE | X(1) | ランク区分(S/A/B) |
|
||||
| FILLER | X(161) | — |
|
||||
|
||||
## 処理詳細
|
||||
|
||||
### 段落一覧
|
||||
|
||||
| 段落名 | 機能 |
|
||||
|:-------|:-----|
|
||||
| 0000MAJCOLSOR | メイン制御(PERFORM連鎖) |
|
||||
| 1000ITTSOR | 初期処理(開始メッセージ→OPEN→初回読込) |
|
||||
| 2000MAINSOR | 主処理(ランク区分設定→WRITE→次件読込) |
|
||||
| 2100READSOR | R01読込処理(EOF判定) |
|
||||
| 4000STPSOR | 終了処理(CLOSE→終了メッセージ) |
|
||||
|
||||
### 処理ロジック
|
||||
|
||||
1. **1000ITTSOR(初期処理)**
|
||||
- DISPLAY 'JIN03RAN START' UPON CONSOLE
|
||||
- SUB02MSG で開始メッセージ出力
|
||||
- SUB01DAT で運用日付取得
|
||||
- R01 / W01 ファイル OPEN
|
||||
- R01 初回 READ
|
||||
|
||||
2. **2000MAINSOR(主処理ループ)**
|
||||
- WRK-RANK-NO を SET UP BY 1 で順位UP
|
||||
- COMP-4 カウンタ ADD 1
|
||||
- MOVE CORRESPONDING で項目編集
|
||||
- 平均点に基づきランク区分設定(S: >= 900, A: >= 600, B: < 600)
|
||||
- 88-Level(WS-RANK-VAL-S/A/B)でランク妥当性確認
|
||||
- W01 WRITE
|
||||
- 次のR01 READ
|
||||
|
||||
3. **4000STPSOR(終了処理)**
|
||||
- R01 / W01 CLOSE
|
||||
- SET WRK-IDX DOWN BY 1
|
||||
- DISPLAY 'JIN03RAN END' UPON CONSOLE
|
||||
Reference in New Issue
Block a user