# KYU03AGG 使用資源一覧 ## プログラム概要 - **プログラムID**: KYU03AGG - **プログラム名**: 欠勤集約処理 - **処理概要**: JCL SORT済み欠勤データを社員単位に集約する。同一社員内の欠勤時間・回数を集計。 ## 使用ファイル | DD名 | ファイル識別子 | 編成 | レコード形式 | レコード長 | COPY句 | |------|---------------|------|-------------|-----------|--------| | KYU03R01 | ABSENCE-SUMMARY | 順編成 | F (固定長) | 80B | なし(自前定義) | | KYU03W01 | ABSENCE-AGGREGATE | 順編成 | F (固定長) | 80B | KYU02REC | | KYU03W02 | ERROR-LOG | 順編成 | V (可変長) | 200B | KYU99REC | ## 使用COPY句 | COPY句 | 用途 | 使用箇所 | |--------|------|---------| | KYU02REC | レコード定義(W01出力ファイル) | FILE SECTION | | KYU99REC | エラーログレコード定義(W02出力ファイル) | FILE SECTION | | ZANMSGAC | メッセージ編集サブPGM連絡領域 | WORKING-STORAGE | | ZANENDAC | ABENDサブPGM連絡領域 | WORKING-STORAGE | ## 使用サブプログラム | サブPGM | 役割 | CALL箇所 | |---------|------|---------| | SUB02MSG | メッセージ編集出力 | 4000MSGOUTSOR | | SUB03END | ABEND処理 | 9999ABDSOR | ## 使用DB2テーブル なし(DB操作なし) ## 処理フロー 1. 初期処理(開始メッセージ→OPEN→初回読込) 2. キーブレイク集約処理 - 初回 → 前レコード保持 - 同一社員 → 欠勤時間/回数加算 - 異社員 → 前社員集約出力→前レコード更新 3. 最終社員の集約出力 4. 終了処理(CLOSE→件数出力→終了メッセージ)