Files
cobol-tna-system/基本設計書/00_勤怠システム_設計書(全体).md
qiuqiuqiu 75475b3fa1 Add Subsystem C (KYU01-09): all 9 programs, design docs, resource lists, DDL, COPY, coverage stats
KYU programs for payroll calculation:
  KYU01CVT - CSV conversion
  KYU02REG - attendance registration
  KYU03AGG - aggregation
  KYU04CAL - salary calculation
  KYU05DED - deduction calculation
  KYU06UPD - DB update
  KYU07DIV - division/pay-slip
  KYU08PRI - print output
  KYU09MRG - merge output

Includes:
  - Source programs (9 .cbl)
  - Compiled executables (9 .exe)
  - Detailed design docs (9 + sign-off)
  - Basic design doc (subsystem C overview)
  - Resource lists (9)
  - DDL schema (schema_kyu.sql)
  - COPY book (KYU99REC.cpy)
  - Coverage statistics update
  - DB definition update (STATUS values)
  - Overall system design document
2026-07-09 08:09:59 +08:00

48 lines
2.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 勤怠システム 設計書
## システム概要
本システムは三つのサブシステムで構成される。
| サブシステム | 役割 | COBOLプログラム数 | 設計書 |
|---|---|---|---|---|
| **A: 勤怠休暇管理** | 休暇申請取込・打刻データ照合・日別勤怠計算・月次統計DB更新・CSV出力 | 7 | 01_勤怠休暇管理システム_設計書(サブシステムA).md |
| **B: 残業統計管理** | 加班申請データ取込・振り分け・重複チェック・打刻照合・マッチング・集約・DB更新 | 6 | 02_残業統計管理システム_設計書(サブシステムB).md |
| **C: 給与計算** | 欠勤統計取込・給与計算・給与明細出力 | 2 | 03_給与計算システム_設計書(サブシステムC).md |
## アーキテクチャ
- 全JCLステップは、前提条件(ソート)をJCLのSORTユーティリティ(`PGM=SORT`)で実行した後、COBOLプログラム(`EXEC PGM=SSSnnFFF`)を実行する。COBOLプログラム内でソートは行わない。
- DB: DB2 for LUW。COBOLからは埋め込みSQL`EXEC SQL`)で直接アクセスする。
- COBOL対象: GnuCOBOL 3.xIBM互換モード、`SOURCE-COMPUTER. IBM-ZSERIES.`)。
- 全パラメータは JCL PARM → `ACCEPT FROM COMMAND-LINE` + `UNSTRING` で解析。
## サブシステム間連携
| 連携データ | 出力元 | 入力先 | 方式 | 備考 |
|---|---|---|---|---|
| EDITED-PUNCH(打刻データ) | A-サブシステム KIN03PCK | B-サブシステム ZANJ013 | ファイル連携 | 打刻データ(出勤/退勤時刻) |
| OVT-APPLY(加班申請CSV) | 外部システム | B-サブシステム ZANJ010 | ファイル連携 | 加班申請入力CSV |
| ABSENCE-SUMMARY(欠勤統計) | A-サブシステム KIN06DBU | C-サブシステム KYUJ001 | ファイル連携 | 月次欠勤集計(A→C) |
| SALARY-DETAIL(給与明細) | C-サブシステム KYU01CAL | C-サブシステム KYU02PRI | ファイル連携 | 社内連携(C内) |
## 共通関数(サブプログラム)
| サブプログラム | I/Fコピー句 | 用途 |
|---|---|---|
| SUB01DAT | D01010AC | 運用日付取得 |
| SUB02MSG | MSG000AC | メッセージ編集出力 |
| SUB03END | MSG000AC | ABEND終了 |
| SUB04CHK | SUB04CHK | 項目チェック(日付/時刻/数値) |
| SUB05TIM | TIME010AC | 時刻丸め計算(分→時間) |
| SUB06DBU | SUB06DBU | DB更新処理(DB2埋め込みSQL |
### SUB05TIM I/FTIME010AC
| パラメータ | 入出力 | 説明 |
|-----------|--------|------|
| TI-MINUTES | I | 入力分数(PIC 9(6) |
| TI-ROUND-TYPE | I | 丸め種別('MIN30'=0.5h単位, 'MIN6'=0.1h単位) |
| TI-RESULT-HOURS | O | 丸め結果時間(PIC 9(4)V9(1) |
| TI-RETURN-CODE | O | 0=正常, 1=入力エラー |