# KYU01CVT 使用資源一覧 ## プログラム概要 - **プログラムID**: KYU01CVT - **プログラム名**: 社員マスタCSV→FB変換処理 - **処理概要**: CSV形式の社員マスタを固定長80Bに変換する。引用符内改行をINSPECT CONVERTINGで処理し、項目チェックはSUB04CHKで実施。 ## 使用ファイル | DD名 | ファイル識別子 | 編成 | レコード形式 | レコード長 | COPY句 | |------|---------------|------|-------------|-----------|--------| | KYU01R01 | CSV-INPUT | 順編成 | V (可変長) | 500B | なし(自前定義) | | KYU01W01 | EMP-RECORD | 順編成 | F (固定長) | 80B | KYU01REC | | KYU01W02 | ERROR-LOG | 順編成 | V (可変長) | 200B | KYU99REC | ## 使用COPY句 | COPY句 | 用途 | 使用箇所 | |--------|------|---------| | KYU01REC | レコード定義(W01出力ファイル) | FILE SECTION | | KYU99REC | エラーログレコード定義(W02出力ファイル) | FILE SECTION | | ZANMSGAC | メッセージ編集サブPGM連絡領域 | WORKING-STORAGE | | ZANENDAC | ABENDサブPGM連絡領域 | WORKING-STORAGE | | ZANCHKAC | 項目チェックサブPGM連絡領域 | WORKING-STORAGE | ## 使用サブプログラム | サブPGM | 役割 | CALL箇所 | |---------|------|---------| | SUB02MSG | メッセージ編集出力 | 4000MSGOUTSOR | | SUB03END | ABEND処理 | 9999ABDSOR | | SUB04CHK | 社員番号/時給数値チェック | 2000MAJSOR | ## 使用DB2テーブル なし(DB操作なし) ## 処理フロー 1. 初期処理(開始メッセージ→OPEN→初回読込) 2. コメント行(#)はスキップ 3. 引用符状態チェック(奇数個の"で状態反転) - 引用符内 → 行蓄積→次行読込 - 引用符外 → INSPECT CONVERTING(改行→SPACE)→ CSV分解 4. CSV分解(UNSTRINGで9項目に分解) 5. 項目数≠9 → ERROR-LOG出力 6. 社員番号空チェック → ERROR-LOG出力 7. SUB04CHK(EMP-ID数値チェック、HOURLY-RATE数値チェック) 8. EMP-RECORD編集→W01出力 9. 終了処理(CLOSE→件数出力→終了メッセージ)