Files
cobol-tna-system/使用資源一覧/SHA04TWO_使用資源一覧.md
qiuqiuqiu 71232af484 Add Subsystem D (SHA01-10): social insurance subsystem + design-resource consistency fixes
- Add SHA01CVT-SHA10S10: all 10 programs, COPY books (13), binaries,
  design docs, resource usage lists, DDL schema_sha.sql
- Add KYU01REC-KYU06REC COPY books (previously missing from git)
- Fix design-code inconsistencies detected in audit:
  - SHA07KBR: remove dead SHACHKAC COPY (SUB04CHK never called)
  - SHA02MNC: 2020TYPSOR paragraph -> inline EVALUATE; SUB04CHK = PARM val
  - SHA05TWN: REVISED-TYPE values 'C'/'N' -> 'A'(定期決定)/'B'(月変)
  - SHA03MNP: 2010CALCSOR/2020WRTSOR -> inline implementation
  - SHA04TWO: remove GRADE-HISTORY from DB table list (not accessed)
  - SHA06TWM: add SALARYDB.EMP-MASTER to DB table list
  - SHA10S10: fix error file W99OUTFIL, 10+1 file count
- Fix comment column alignment (Area A col 7) in SHA07KBR, SHA08SRT
- Update KYU source/design docs: BOM removal, classification comment cleanup
- Update README: Subsystem D added, program count 39
2026-07-15 20:32:51 +08:00

2.6 KiB
Raw Permalink Blame History

SHA04TWO 使用資源一覧

プログラム概要

  • プログラムID: SHA04TWO
  • プログラム名: 事業所保険者マッチング処理
  • 処理概要: INSURED-DATAをOFFICE-MST/INSURER-MSTの2段階で1:1マッチングし、GRADED-LIST/UNMATCHED-LISTを出力する。

使用ファイル

DD名 ファイル識別子 編成 レコード形式 レコード長 COPY句
SHA04R01 INSURED-DATA 順編成 F (固定長) 200B SHA01REC
SHA04R02 OFFICE-MST 順編成 F (固定長) 80B なし(自前定義)
SHA04R03 INSURER-MST 順編成 F (固定長) 80B なし(自前定義)
SHA04W01 GRADED-LIST 順編成 F (固定長) 200B SHA04REC
SHA04W02 UNMATCHED-LIST 順編成 F (固定長) 200B なし(自前定義)
SHA04W03 ERROR-LOG 順編成 V (可変長) 200B ZAN05REC

使用COPY句

COPY句 用途 使用箇所
SHA01REC INSURED-DATA レコード定義(R01入力ファイル) FILE SECTION
SHA04REC GRADED-LIST レコード定義(W01出力ファイル) FILE SECTION
ZAN05REC エラーログレコード定義(W03出力ファイル) FILE SECTION
SQLCA SQL通信領域 WORKING-STORAGE
SHAMSGAC メッセージ編集サブPGM連絡領域 WORKING-STORAGE
SHAENDAC ABENDサブPGM連絡領域 WORKING-STORAGE
SHADATAC 運用日付サブPGM連絡領域 WORKING-STORAGE

使用サブプログラム

サブPGM 役割 CALL箇所
SUB01DAT 運用日付取得 1000ITTSOR
SUB02MSG メッセージ編集出力 4000MSGOUTSOR
SUB03END ABEND処理 9999ABDSOR

使用DB2テーブル

DB名 テーブル名 I/O 備考
INSURANCEDB INSURED-MASTER I 履歴整合性確認

処理フロー

  1. 初期処理(開始メッセージ→SUB01DAT運用日取得→OPEN→R02全件読込→OFFICE-TBL格納→R03全件読込→INSURER-TBL格納→DB接続→R01初回READ
  2. 主処理:R01終了まで繰り返し
    • 第1段階マッチング:OFFICE-NO vs OFFICE-TBL線形探索→成功なら第2段階、失敗ならW02出力
    • 第2段階マッチング:INSURER-CODE vs INSURER-TBL線形探索→成功ならW01出力、失敗ならW02出力
    • DB2整合性検証:W01出力時INSURED-MASTER SELECT、異常はW03出力
    • R01次件READ
  3. 終了処理(CLOSE→件数出力→終了メッセージ)