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

51 lines
2.2 KiB
Markdown

# KIN04CHK 使用資源一覧
## プログラム概要
- **プログラムID**: KIN04CHK
- **プログラム名**: 打刻項目チェック処理
- **処理概要**: CSV形式の打刻データファイルを読み込み、IF多重ネスト(THEN句)による項目チェックを行い、正常レコードをEDITED-PUNCHへ、異常レコードをERROR-LOGへ振り分ける。
## 使用ファイル
| DD名 | ファイル識別子 | 編成 | レコード形式 | レコード長 | COPY句 |
|------|---------------|------|-------------|-----------|--------|
| KIN04R01 | RAW-PUNCH | 順編成 | F (固定長) | 80B | なし(自前定義) |
| KIN04W01 | EDITED-PUNCH | 順編成 | F (固定長) | 80B | KIN04REC |
| KIN04W02 | ERROR-LOG | 順編成 | V (可変長) | 200B | KIN05REC |
## 使用COPY句
| COPY句 | 用途 | 使用箇所 |
|--------|------|---------|
| KIN04REC | レコード定義(W01出力ファイル) | FILE SECTION / WORKING-STORAGE(WRITE FROM用) |
| 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 | 日付/時刻/社員番号妥当性チェック | 2020VALIDATESOR |
## 使用DB2テーブル
なし(DB操作なし)
## 処理フロー
1. 初期処理(開始メッセージ→運用日付取得→OPEN→初回読込)
2. CSV分解(UNSTRINGで6項目に分解)
3. IF多重ネスト(THEN句)で4段階チェック
- フィールド数=6 AND 社員番号 NOT = SPACE
- SUB04CHK日付チェック
- SUB04CHK時刻チェック(出勤/退勤)
- 出勤時刻 < 退勤時刻
4. 正常→WRITE FROMでW01出力
5. 異常→W02出力(エラー区分='02')
6. 終了処理(CLOSE→件数出力→終了メッセージ)