Files
cobol-tna-system/使用資源一覧/KIN01INP_使用資源一覧.md

2.4 KiB
Raw Permalink Blame History

KIN01INP 使用資源一覧

プログラム概要

  • プログラムID: KIN01INP
  • プログラム名: 休暇申請CSV取込・検証処理
  • 処理概要: CSV形式の休暇申請ファイルを読み込み、休暇種別テーブル検索と項目チェックを行い、ステータスによってWORK-LEAVEまたはERROR-LOGへ振り分ける。

使用ファイル

DD名 ファイル識別子 編成 レコード形式 レコード長 COPY句
KIN01R01 CSV-INPUT 順編成 F (固定長) 80B なし(自前定義)
KIN01W01 WORK-LEAVE 順編成 F (固定長) 80B KIN01REC
KIN01W02 ERROR-LOG 順編成 V (可変長) 200B KIN05REC

使用COPY句

COPY句 用途 使用箇所
KIN01REC レコード定義(W01出力ファイル) FILE SECTION
KIN05REC エラーログレコード定義(W02出力ファイル) FILE SECTION
ZANDATAC 運用日付サブPGM連絡領域 WORKING-STORAGE
ZANMSGAC メッセージ編集サブPGM連絡領域 WORKING-STORAGE
ZANENDAC ABENDサブPGM連絡領域 WORKING-STORAGE
ZANCHKAC 項目チェックサブPGM連絡領域 WORKING-STORAGE

使用サブプログラム

サブPGM 役割 CALL箇所
SUB01DAT 運用日付取得 1000ITTSOR
SUB02MSG メッセージ編集出力 4000MSGOUTSOR
SUB03END ABEND処理 9999ABDSOR
SUB04CHK 日付/時刻/社員番号妥当性チェック 2030VALIDATESOR

使用DB2テーブル

なし(DB操作なし)

処理フロー

  1. 初期処理(開始メッセージ→休暇種別テーブル設定→運用日付取得→OPEN→初回読込)
  2. CSV分解(UNSTRINGで8項目に分解)
  3. 休暇種別テーブル検索(SEARCH
  4. エラー前提判定
    • フィールド数≠8 → ERROR-LOG出力(種別:F
    • 休暇種別未発見 → ERROR-LOG出力(種別:L
  5. ステータス判定
    • ステータス'1'(有効)→ 項目チェック(SUB04CHK: 開始日付/時刻、終了日付/時刻)→ WORK-LEAVE出力(APPL-ID=0
    • ステータス'9'(取消)→ WORK-LEAVE出力(APPL-ID保持、チェックなし)
    • その他(エラー)→ ERROR-LOG出力(種別:S
  6. 終了処理(CLOSE→件数出力→終了メッセージ)