KIN05MAT 使用資源一覧
プログラム概要
- プログラムID: KIN05MAT
- プログラム名: 打刻休暇照合処理
- 処理概要: EDITED-PUNCH(打刻側)とLEAVE-DAILY(休暇側)を社員番号+日付キーで照合し、1:Nマッチング結果をKIN-LEAVE(160B)に出力する。
使用ファイル
| DD名 |
ファイル識別子 |
編成 |
レコード形式 |
レコード長 |
COPY句 |
| KIN04W01 |
EDITED-PUNCH |
順編成 |
F (固定長) |
80B |
KIN04REC |
| KIN02W01 |
LEAVE-DAILY |
順編成 |
F (固定長) |
80B |
KIN02REC |
| KIN05W01 |
KIN-LEAVE |
順編成 |
F (固定長) |
160B |
KIN03REC |
使用COPY句
| COPY句 |
用途 |
使用箇所 |
| KIN04REC |
R01入力レコード定義 |
FILE SECTION |
| KIN02REC |
R02入力レコード定義 |
FILE SECTION |
| KIN03REC |
W01出力レコード定義 |
FILE SECTION |
| ZANMSGAC |
メッセージ編集サブPGM連絡領域 |
WORKING-STORAGE |
| ZANENDAC |
ABENDサブPGM連絡領域 |
WORKING-STORAGE |
使用サブプログラム
| サブPGM |
役割 |
CALL箇所 |
| SUB02MSG |
メッセージ編集出力 |
4000MSGOUTSOR |
| SUB03END |
ABEND処理 |
9999ABDSOR |
使用DB2テーブル
なし(ファイルマッチングのみ)
処理フロー
- 初期処理(開始メッセージ→OPEN→R01/R02初回読込)
- EVALUATE TRUE マッチング3分岐制御
- R01key < R02key OR R02-EOF:打刻のみ出力(LEAVE-TYPE='99')
- R01key = R02key:マッチング(N:1ループ)、休暇種別優先順位で選定
- R01key > R02key:R02のみスキップ
- 終了処理(CLOSE→件数出力→終了メッセージ)