46 lines
1.9 KiB
Markdown
46 lines
1.9 KiB
Markdown
# ZAN02CHK 使用資源一覧
|
|
|
|
## プログラム概要
|
|
- **プログラムID**: ZAN02CHK
|
|
- **プログラム名**: 時間帯重複チェック処理
|
|
- **処理概要**: OVT-APPLYファイルの同一社員・同一日付内の開始時刻と終了時刻の重複をチェックする。
|
|
|
|
## 使用ファイル
|
|
|
|
| DD名 | ファイル識別子 | 編成 | レコード形式 | レコード長 | COPY句 |
|
|
|------|---------------|------|-------------|-----------|--------|
|
|
| ZAN02R01 | OVT-APPLY | 順編成 | F (固定長) | 80B | ZAN01REC |
|
|
| ZAN02W01 | OVT-NODUP | 順編成 | F (固定長) | 80B | ZAN01REC |
|
|
| ZAN02W02 | ERROR-LOG | 順編成 | V (可変長) | 200B | ZAN05REC |
|
|
|
|
## 使用COPY句
|
|
|
|
| COPY句 | 用途 | 使用箇所 |
|
|
|--------|------|---------|
|
|
| ZAN01REC | レコード定義(R01入力/W01出力) | FILE SECTION |
|
|
| ZAN05REC | エラーログレコード定義(W02出力) | FILE SECTION |
|
|
| ZANDATAC | 運用日付サブPGM連絡領域 | WORKING-STORAGE |
|
|
| ZANMSGAC | メッセージ編集サブPGM連絡領域 | WORKING-STORAGE |
|
|
| ZANENDAC | ABENDサブPGM連絡領域 | WORKING-STORAGE |
|
|
|
|
## 使用サブプログラム
|
|
|
|
| サブPGM | 役割 | CALL箇所 |
|
|
|---------|------|---------|
|
|
| SUB01DAT | 運用日付取得 | 1000ITTSOR |
|
|
| SUB02MSG | メッセージ編集出力 | 4000MSGOUTSOR |
|
|
| SUB03END | ABEND処理 | 9999ABDSOR |
|
|
|
|
## 使用DB2テーブル
|
|
|
|
なし(DB操作なし)
|
|
|
|
## 処理フロー
|
|
1. 初期処理(開始メッセージ→運用日付取得→OPEN→初回読込)
|
|
2. 1件目をそのままW01出力+前レコード保持
|
|
3. メイン処理:キー比較
|
|
- 同一社員+同一日付 かつ 前終了時刻>現開始時刻 → 重複エラー(W02出力)
|
|
- 同一社員+同一日付 かつ 重複なし → W01出力+前レコード更新
|
|
- キーブレイク → 前レコード更新+W01出力
|
|
4. 終了処理(CLOSE→件数出力→終了メッセージ)
|