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

4.4 KiB
Raw Permalink Blame History

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)で実施する。