# 勤怠管理システム ## システム概要 IBM z/OS + DB2 で動作する COBOL バッチシステム。勤怠休暇管理・残業統計管理・給与計算・社会保険管理・人事情報管理の5サブシステムで構成される。 ### 本番環境 - OS: IBM z/OS - DB: DB2 for LUW - 実行: JCL から COBOL プログラムを CALL - コンパイラ: IBM Enterprise COBOL ### 開発環境(参考) - Windows + GnuCOBOL 3.2.0 - DB: SQLite3(`tools/` の変換スクリプトで EXEC SQL を SQLite 用に自動変換) - 本番とは別環境であり、あくまで動作確認用 ## サブシステム構成 | サブシステム | 役割 | プログラム数 | 状態 | |-------------|------|-------------|------| | A: 勤怠休暇管理 | CSV取込・DB登録・照合・日別計算・勤怠照会・DB更新・CSV出力 | KIN01INP~KIN09CSV(9本) | 完了 | | B: 残業統計管理 | 申請取込・重複チェック・照合・マッチング・集約・DB更新 | ZAN01CHK~ZAN06UPD(6本) | 完了 | | C: 給与計算 | CSV変換・登録・集約・計算・控除・DB更新・分割・印刷・マージ | KYU01CVT~KYU09MRG(9本) | 完了 | | D: 社会保険管理 | ASCII→EBCDIC変換・保険情報統合・料率計算・事業所マッチング・等級判定・控除計算・キーブレイク・SORT編集・25分割・100分割 | SHA01CVT~SHA10S10(10本) | 完了 | | E: 人事情報管理 | 社員情報チェック・スキル評価集計・ランキング出力・人事異動DB更新・SORT編集・社員情報マスタ出力・社員別スキル集計レポート | JIN01KNS~JIN09RPT(9本) | 完了 | ### 共通サブプログラム(6本) SUB01DAT(日付), SUB02MSG(メッセージ), SUB03END(ABEND), SUB04CHK(バリデーション), SUB05TIM(丸め), JIN07SUB(社員情報マスタ管理) ### プログラム一覧 | プログラムID | サブシステム | 機能 | |:------------|:-----------:|------| | JIN01KNS~JIN09RPT | E | 人事情報管理(9本) | | KIN01INP~KIN09CSV | A | 勤怠休暇管理(9本) | | ZAN01CHK~ZAN06UPD | B | 残業統計管理(6本) | | KYU01CVT~KYU09MRG | C | 給与計算(9本) | | SHA01CVT~SHA10S10 | D | 社会保険管理(10本) | | SUB01DAT~SUB05TIM, JIN07SUB | 共通 | 日付/メッセージ/ABEND/バリデーション/丸め/社員情報マスタ管理(6本) | **全プログラム数: 48本** ## ディレクトリ構成 ``` src/ COBOL主プログラム(本番確定版) sub/ COBOLサブプログラム bin/ コンパイル済み実行ファイル(.exe)+ DLL(.dll) cpy/ COPY書式ファイル(レコード定義・連絡領域) ddl/ DB2スキーマ定義(DDL) 基本設計書/ サブシステム全体設計書 詳細設計書/ プログラム個別詳細設計書 使用資源一覧/ 使用資源一覧(COPY・CALL・I/Oファイル・DBテーブル) 品質管理/ テスト基準・キーワード網羅定義書・カバレッジ状況 ## JavaSrc ディレクトリ(COBOL→Java 変換成果) COBOL バッチシステムの Java 移植版を格納するサブディレクトリ。サブシステム A(KIN01-09)・B(ZAN01-06)・C(KYU01-09)を Java に変換済み。 - `JavaSrc/src/`:Java ソース(`*Main.java` + `dto/` + `util/`) - `JavaSrc/doc/`:変換ルール・設計書(COBOL変換_作業記録 / Java側規格説明 / 確認Checklist / 転換基準) - `JavaSrc/lib/`:実行時依存(sqlite-jdbc-3.8.11.2.jar) - `JavaSrc/compile.bat` / `run.bat` / `run_db.bat`:コンパイル・実行スクリプト 詳細は `JavaSrc/README.md` を参照。 ```