Files
cobol-tna-system/詳細設計書/詳細設計書_JIN08TST.md

105 lines
4.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# JIN08TST 詳細設計書
## プログラム概要
| 項目 | 内容 |
|------|------|
| プログラムID | JIN08TST(人事→JINji, 08, JIN07SUB呼出テスト→TST |
| プログラムタイプ | メインプログラム(テストドライバ) |
| PGMパターン | 05(振り分け IF) |
| 機能 | JIN07SUB を 2 回 CALL(全引数 / KANJI-NAME OMITTED)して、一致レコード取得と OMITTED 引数動作を確認するテスト専用プログラム |
| CALL方式 | メインプログラム(JCLからCALL。ただしテスト専用のため本番 JCL は不要) |
| DBアクセス | なし |
| 使用サブプログラム | JIN07SUB, SUB01DAT, SUB02MSG, SUB03END |
### 前提条件
| NO | 対象ファイル | 条件 |
|----|-------------|------|
| 1 | EMP-VALID | JIN07SUB が検索対象とするデータ。JIN08TST 実行時の環境変数 JIN07R01 で割当てる |
### 使用ファイル一覧
| NO | 使用ファイル名 | 識別子 | DD名 | I/O | COPY群 | 形式 | レコード長 | 媒体 | 備考 |
|----|--------------|--------|------|-----|--------|------|-----------|------|------|
| — | — | — | — | — | — | — | — | — | ファイル入出力なし(JIN07SUB が JIN07R01 を読込む) |
### 使用COPY句
| COPY句 | 用途 | 使用箇所 |
|--------|------|---------|
| JINDATAC | SUB01DAT 運用日付連絡領域 | WORKING-STORAGE |
| JINMSGAC | SUB02MSG メッセージ連絡領域 | WORKING-STORAGE |
| JINENDAC | SUB03END ABEND連絡領域 | WORKING-STORAGE |
---
## 処理詳細
### 段落一覧(SOR規約名)
| 段落名 | 機能 |
|:-------|:-----|
| 0000MAINTST | メインコントロール(初期→テストCALL→終了) |
| 1000ITTTST | 初期処理(開始MSG・初期化・運用日付取得) |
| 2000CALTST | JIN07SUB を 2 回 CALL(全引数 / KANJI-NAME OMITTED)して結果を DISPLAY |
| 3000STPTST | 終了処理(終了MSG |
| 4000MSGOUTTST | SUB02MSG 呼出 |
| 9000ERRTST | エラー処理(ABEND |
### 処理フロー
```
1. 0000MAINTST(メインコントロール)
1-1. PERFORM 1000ITTTST(初期処理)
1-2. PERFORM 2000CALTST(テストCALL
1-3. PERFORM 3000STPTST(終了処理)
1-4. GOBACK
2. 1000ITTTST(初期処理)
2-1. DISPLAY 'JIN08TST START' UPON CONSOLE
2-2. SUB02MSG で開始メッセージ(001)出力
2-3. INITIALIZE ワークエリア
2-4. CALL SUB01DAT(運用日付取得)。異常時は 4000MSGOUTTST9000ERRTST
3. 2000CALTST(テストCALL
3-1. 検索条件(WRK-TST-EMP-ID)に 'EMP00001' を設定
3-2. CALL 1: JIN07SUB 全引数
CALL 'JIN07SUB' USING WRK-TST-EMP-ID, WRK-TST-KANA-SEI, WRK-TST-KANA-MEI,
WRK-TST-KANJI-NAME, WRK-TST-SUB-CODE,
WRK-TST-BIRTH-DATE, WRK-TST-EMP-ID-OUT,
WRK-TST-FILLER, WRK-TST-RESULT
3-3. WRK-TST-RESULT 判定
IF = 'OK' → DISPLAY 'CALL1 OK: EMP=' WRK-TST-EMP-ID-OUT
' SUB=' WRK-TST-SUB-CODE
ELSE → DISPLAY 'CALL1 NG: RESULT=' WRK-TST-RESULT
3-4. CALL 2: JIN07SUB KANJI-NAME OMITTED
CALL 'JIN07SUB' USING WRK-TST-EMP-ID, WRK-TST-KANA-SEI, WRK-TST-KANA-MEI,
OMITTED, WRK-TST-SUB-CODE, WRK-TST-BIRTH-DATE,
WRK-TST-EMP-ID-OUT, WRK-TST-FILLER, WRK-TST-RESULT
3-5. WRK-TST-RESULT 判定
IF = 'OK' → DISPLAY 'CALL2 OK: EMP=' WRK-TST-EMP-ID-OUT
' KANA-SEI=' WRK-TST-KANA-SEI
ELSE → DISPLAY 'CALL2 NG: RESULT=' WRK-TST-RESULT
4. 3000STPTST(終了処理)
4-1. DISPLAY 'JIN08TST END' UPON CONSOLE
4-2. SUB02MSG で終了メッセージ(002)出力
```
---
## カバレッジ対象キーワード
| 予約語/記号 | 区分 | 使用箇所 |
|:-----------|:----:|:---------|
| OMITTED | 予約語 | 2000CALTST: CALL 'JIN07SUB' USING ... OMITTEDKANJI-NAME 省略) |
| CALL | 予約語 | 2000CALTST: CALL 'JIN07SUB'2回) |
| ON EXCEPTION | 予約語 | 1000ITTTST: CALL 'SUB01DAT' ON EXCEPTION |
## 補足
- 本プログラムは JIN07SUB の動作確認用テストドライバのため、本番 JCL は不要(ローカル開発環境で単体実行する)。
- JIN07SUB が EMP-VALID を読込むための DD(JIN07R01)は、実行時に環境変数で割当てる。
- 検証は DISPLAY 出力(CALL1 OK/NG、CALL2 OK/NG)で実施する。