# KYU04CAL 使用資源一覧 ## プログラム概要 - **プログラムID**: KYU04CAL - **プログラム名**: 給与計算処理 - **処理概要**: 欠勤集約 + EMP-MASTER + OVT-MONTHLYを参照し給与計算を実行する。勤怠区分×手当種別の複合分岐はEVALUATE ALSO。 ## 使用ファイル | DD名 | ファイル識別子 | 編成 | レコード形式 | レコード長 | COPY句 | |------|---------------|------|-------------|-----------|--------| | KYU04R02 | ABSENCE-AGGREGATE | 順編成 | F (固定長) | 80B | KYU02REC | | KYU04R03 | PAY-PARAM | 順編成 | F (固定長) | 80B | なし(自前定義) | | KYU04W03 | SALARY-DETAIL | 順編成 | F (固定長) | 240B | KYU03REC | | KYU04W04 | ERROR-LOG | 順編成 | V (可変長) | 200B | KYU99REC | ## 使用COPY句 | COPY句 | 用途 | 使用箇所 | |--------|------|---------| | KYU02REC | レコード定義(R02入力ファイル) | FILE SECTION | | KYU03REC | レコード定義(W03出力ファイル) | FILE SECTION | | KYU99REC | エラーログレコード定義(W04出力ファイル) | FILE SECTION | | SQLCA | SQL通信領域 | WORKING-STORAGE | | ZANDATAC | 運用日付サブPGM連絡領域 | WORKING-STORAGE | | ZANMSGAC | メッセージ編集サブPGM連絡領域 | WORKING-STORAGE | | ZANENDAC | ABENDサブPGM連絡領域 | WORKING-STORAGE | ## 使用サブプログラム | サブPGM | 役割 | CALL箇所 | |---------|------|---------| | SUB01DAT | 運用日付取得 | 1000ITTSOR | | SUB02MSG | メッセージ編集出力 | 4000MSGOUTSOR | | SUB03END | ABEND処理 | 9999ABDSOR | ## 使用DB2テーブル | テーブル名 | アクセス種別 | 用途 | |-----------|-------------|------| | EMP-MASTER | SELECT | 社員情報(氏名・部署・給与関連項目)参照 | | OVT-MONTHLY | SELECT | 残業時間合計(SUM(OVT-HOURS))参照 | ## 処理フロー 1. 初期処理(開始メッセージ→運用日付取得→PAY-PARAM読込→OPEN→DB接続→初回読込) 2. DB2 EMP-MASTER参照(社員情報取得) 3. DB2 OVT-MONTHLY参照(残業時間合計取得) 4. 給与計算(欠勤控除額→残業手当→EVALUATE ALSO(勤怠×手当)→支給総額) 5. SALARY-DETAIL出力 6. 終了処理(CLOSE→件数出力→終了メッセージ)