サブシステムEをJIN04PRT〜JIN08TST追加で9本に拡充(全48プログラム)。JIN01-09のIBM COBOL完全版・bin再ビルド版・設計書・使用資源一覧・カバレッジ統計・DDL(schema_jin)・COPY(DB-COMMON/JIN04RPT-REC/JIN05REC)をroot側最新に同期。KYU03AGG/KYU08PRI/SHA02MNC/SHA10S10再テスト済み(全PASS)
This commit is contained in:
@@ -11,13 +11,14 @@
|
||||
|------|---------------|------|-------------|-----------|--------|
|
||||
| JIN01R01 | EMP-IMPORT | 順編成 | F (固定長) | 200B | JIN01REC |
|
||||
| JIN01W01 | EMP-VALID | 順編成 | F (固定長) | 200B | JIN01REC |
|
||||
| JIN01W02 | VALID-ERROR | 順編成 | F (固定長) | 80B | VALID-ERROR-REC(JIN01REC内) |
|
||||
| JIN01W02 | VALID-ERROR | 順編成 | F (固定長) | 80B | VALID-ERROR-REC |
|
||||
|
||||
## 使用COPY句
|
||||
|
||||
| COPY句 | 用途 | 使用箇所 |
|
||||
|--------|------|---------|
|
||||
| JIN01REC | レコード定義(R01/W01/W02出力ファイル) | FILE SECTION |
|
||||
| JIN01REC | レコード定義(R01/W01出力ファイル) | FILE SECTION |
|
||||
| VALID-ERROR-REC | VALID-ERROR エラーレコード定義(W02出力ファイル) | FILE SECTION |
|
||||
| JINDATAC | 運用日付サブPGM連絡領域 | WORKING-STORAGE |
|
||||
| JINMSGAC | メッセージ編集サブPGM連絡領域 | WORKING-STORAGE |
|
||||
| JINENDAC | ABENDサブPGM連絡領域 | WORKING-STORAGE |
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
| JIN02R01 | SKILL-EVAL | 順編成 | F (固定長) | 200B | SKILL-EVAL-REC |
|
||||
| JIN02R02 | SKILL-MST | 順編成 | F (固定長) | 80B | SKILL-MST-REC |
|
||||
| JIN02W01 | SKILL-AGG | 順編成 | F (固定長) | 200B | SKILL-AGG-REC |
|
||||
| JIN02W02 | VALID-ERROR | 順編成 | F (固定長) | 80B | VALID-ERROR-REC(JIN01REC内) |
|
||||
| JIN02W02 | VALID-ERROR | 順編成 | F (固定長) | 80B | VALID-ERROR-REC |
|
||||
|
||||
## 使用COPY句
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
| SKILL-EVAL-REC | スキル評価明細レコード定義(R01入力) | FILE SECTION |
|
||||
| SKILL-MST-REC | 評価基準マスタレコード定義(R02入力) | FILE SECTION |
|
||||
| SKILL-AGG-REC | 評価集計結果レコード定義(W01出力) | FILE SECTION |
|
||||
| JIN01REC | VALID-ERROR-REC(W02出力) | FILE SECTION |
|
||||
| VALID-ERROR-REC | VALID-ERROR エラーレコード定義(W02出力) | FILE SECTION |
|
||||
| JINDATAC | 運用日付サブPGM連絡領域 | WORKING-STORAGE |
|
||||
| JINMSGAC | メッセージ編集サブPGM連絡領域 | WORKING-STORAGE |
|
||||
| JINENDAC | ABENDサブPGM連絡領域 | WORKING-STORAGE |
|
||||
@@ -31,7 +31,7 @@
|
||||
| サブPGM | 役割 | CALL箇所 |
|
||||
|---------|------|---------|
|
||||
| SUB01DAT | 運用日付取得 | 1000ITTSOR |
|
||||
| SUB02MSG | メッセージ編集出力 | 4000MSGOUTSOR |
|
||||
| SUB02MSG | メッセージ編集出力 | 6000MSGOUTSOR |
|
||||
| SUB03END | ABEND処理 | 9999ABDSOR |
|
||||
|
||||
## 使用DB2テーブル
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
## プログラム概要
|
||||
- **プログラムID**: JIN03RAN
|
||||
- **プログラム名**: スキル評価ランキング出力処理
|
||||
- **処理概要**: SKILL-AGG(JIN02SKL出力の集計結果)を読み込み、平均点降順でランキングを出力する
|
||||
- **処理概要**: SKILL-AGG(JIN02SKL出力の集計結果)を読み込み、平均点降順でランキングを出力する(前提:R01はJCL SORTにより平均点降順ソート済み)
|
||||
|
||||
## 使用ファイル
|
||||
|
||||
@@ -20,7 +20,6 @@
|
||||
| JIN03REC | ランキング出力レコード定義(W01出力) | FILE SECTION |
|
||||
| JINDATAC | 運用日付サブPGM連絡領域 | WORKING-STORAGE |
|
||||
| JINMSGAC | メッセージ編集サブPGM連絡領域 | WORKING-STORAGE |
|
||||
| JINENDAC | ABENDサブPGM連絡領域 | WORKING-STORAGE |
|
||||
|
||||
## 使用サブプログラム
|
||||
|
||||
@@ -35,5 +34,5 @@
|
||||
|
||||
## 処理フロー
|
||||
1. 初期処理(開始メッセージ→運用日付取得→OPEN→R01初回読込)
|
||||
2. R01読込→ランキング出力ループ(平均点降順に順位付与)
|
||||
3. 終了処理(CLOSE→終了メッセージ)
|
||||
2. R01読込→ランキング出力ループ(平均点降順ソート済み入力に順位付与)
|
||||
3. 終了処理(CLOSE→プログラム終了表示)
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# JIN04PRT 使用資源一覧
|
||||
|
||||
## プログラム概要
|
||||
- **プログラムID**: JIN04PRT
|
||||
- **プログラム名**: 社員台帳印刷処理
|
||||
- **処理概要**: EMP-VALID(JIN01KNS出力)を読み込み、LINAGE制御で社員台帳を印刷出力する
|
||||
|
||||
## 使用ファイル
|
||||
|
||||
| DD名 | ファイル識別子 | 編成 | レコード形式 | レコード長 | COPY句 |
|
||||
|------|---------------|------|-------------|-----------|--------|
|
||||
| JIN04R01 | EMP-VALID | 順編成 | F (固定長) | 200B | JIN01REC |
|
||||
| JIN04W01 | JIN-LEDGER | 順編成 | F (固定長) | 132B | JIN04RPT-REC |
|
||||
|
||||
## 使用COPY句
|
||||
|
||||
| COPY句 | 用途 | 使用箇所 |
|
||||
|--------|------|---------|
|
||||
| JIN01REC | 社員正常レコード定義(R01入力) | FILE SECTION |
|
||||
| JIN04RPT-REC | 台帳印刷レコード定義(W01出力) | FILE SECTION |
|
||||
| JINDATAC | 運用日付サブPGM連絡領域 | WORKING-STORAGE |
|
||||
| JINMSGAC | メッセージ編集サブPGM連絡領域 | WORKING-STORAGE |
|
||||
| JINENDAC | ABENDサブPGM連絡領域 | WORKING-STORAGE |
|
||||
|
||||
## 使用サブプログラム
|
||||
|
||||
| サブPGM | 役割 | CALL箇所 |
|
||||
|---------|------|---------|
|
||||
| SUB01DAT | 運用日付取得 | 1000ITTSOR |
|
||||
| SUB02MSG | メッセージ編集出力 | 1000ITTSOR, 4000STPSOR |
|
||||
| SUB03END | ABEND処理 | 4000STPSOR |
|
||||
|
||||
## 使用DB2テーブル
|
||||
|
||||
なし(DB操作なし)
|
||||
|
||||
## 処理フロー
|
||||
1. 初期処理(開始メッセージ→日付/時刻取得→運用日付取得→OPEN→ヘッダー出力→R01初回読込)
|
||||
2. R01読込→明細行編集→WRITEループ(AT END-OF-PAGEでヘッダー再出力)
|
||||
3. 終了処理(CLOSE→件数出力→終了メッセージ→RETURN-CODE設定)
|
||||
@@ -0,0 +1,46 @@
|
||||
# JIN05UPD 使用資源一覧
|
||||
|
||||
## プログラム概要
|
||||
- **プログラムID**: JIN05UPD
|
||||
- **プログラム名**: 人事異動DB更新処理
|
||||
- **処理概要**: 人事異動トランザクションを読み込み、DB2 EMPLOYEEマスタをINSERT/UPDATEする
|
||||
|
||||
## 使用ファイル
|
||||
|
||||
| DD名 | ファイル識別子 | 編成 | レコード形式 | レコード長 | COPY句 |
|
||||
|------|---------------|------|-------------|-----------|--------|
|
||||
| JIN05R01 | HR-TRANS | 順編成 | F (固定長) | 200B | JIN05REC |
|
||||
| JIN05W01 | VALID-ERROR | 順編成 | F (固定長) | 80B | VALID-ERROR-REC |
|
||||
|
||||
## 使用COPY句
|
||||
|
||||
| COPY句 | 用途 | 使用箇所 |
|
||||
|--------|------|---------|
|
||||
| JIN05REC | 人事異動トランザクションレコード定義(R01入力) | FILE SECTION |
|
||||
| VALID-ERROR-REC | VALID-ERROR エラーレコード定義(W01出力) | FILE SECTION |
|
||||
| JINDATAC | 運用日付サブPGM連絡領域 | WORKING-STORAGE |
|
||||
| JINMSGAC | メッセージ編集サブPGM連絡領域 | WORKING-STORAGE |
|
||||
| JINENDAC | ABENDサブPGM連絡領域 | WORKING-STORAGE |
|
||||
|
||||
## 使用サブプログラム
|
||||
|
||||
| サブPGM | 役割 | CALL箇所 |
|
||||
|---------|------|---------|
|
||||
| SUB01DAT | 運用日付取得 | 1000ITTSOR |
|
||||
| SUB02MSG | メッセージ編集出力 | 1000ITTSOR, 3400DBERRSOR, 4000STPSOR |
|
||||
| SUB03END | ABEND処理 | 4000STPSOR, 9000ERRSOR |
|
||||
|
||||
## 使用DB2テーブル
|
||||
|
||||
| テーブル名 | 操作 | 使用箇所 |
|
||||
|-----------|------|---------|
|
||||
| EMPLOYEE | INSERT | 3100INSERTSOR |
|
||||
| EMPLOYEE | UPDATE | 3200UPDATESOR |
|
||||
|
||||
## 処理フロー
|
||||
1. 初期処理(開始メッセージ→運用日付取得→DB接続→OPEN→R01初回読込)
|
||||
2. R01読込→トランザクション種別判定ループ
|
||||
- A/B/C → INSERT処理
|
||||
- D/E/F/G → UPDATE処理
|
||||
- その他 → エラー出力
|
||||
3. 終了処理(CLOSE→件数出力→終了メッセージ→RETURN-CODE設定)
|
||||
@@ -0,0 +1,52 @@
|
||||
# JIN06SRT 使用資源一覧
|
||||
|
||||
## プログラム概要
|
||||
- **プログラムID**: JIN06SRT
|
||||
- **プログラム名**: 社員データSORT処理
|
||||
- **処理概要**: EMP-VALID(JIN01KNSチェック済社員データ 200B)を INPUT PROCEDURE で読込み、EMP-ID 昇順に SORT し、OUTPUT PROCEDURE で RETURN して SORTED-EMP へ出力する。RELEASE 件数は最大 999 件で、上限超過分は VALID-ERROR(ERR-CODE='9999', DETAIL='SORT LIMIT OVER')へ出力する。
|
||||
|
||||
## 使用ファイル
|
||||
|
||||
| DD名 | ファイル識別子 | 編成 | レコード形式 | レコード長 | COPY句 |
|
||||
|------|---------------|------|-------------|-----------|--------|
|
||||
| JIN06R01 | EMP-VALID | 順編成 | F (固定長) | 200B | JIN01REC |
|
||||
| SORTWORK | SD-SORTWORK | — | — | 200B | JIN01REC |
|
||||
| JIN06W01 | SORTED-EMP | 順編成 | F (固定長) | 200B | JIN01REC |
|
||||
| JIN06W02 | VALID-ERROR | 順編成 | F (固定長) | 80B | VALID-ERROR-REC |
|
||||
|
||||
## 使用COPY句
|
||||
|
||||
| COPY句 | 用途 | 使用箇所 |
|
||||
|--------|------|---------|
|
||||
| JIN01REC | EMP-VALID/SORTWORK/SORTED-EMP レコード定義(200B) | FILE SECTION |
|
||||
| VALID-ERROR-REC | 上限超過エラーレコード定義(80B) | FILE SECTION |
|
||||
| JINDATAC | 運用日付サブPGM連絡領域 | WORKING-STORAGE |
|
||||
| JINMSGAC | メッセージ編集サブPGM連絡領域 | WORKING-STORAGE |
|
||||
| JINENDAC | ABENDサブPGM連絡領域 | WORKING-STORAGE |
|
||||
|
||||
## 使用サブプログラム
|
||||
|
||||
| サブPGM | 役割 | CALL箇所 |
|
||||
|---------|------|---------|
|
||||
| SUB01DAT | 運用日付取得 | 1000ITTSOR |
|
||||
| SUB02MSG | メッセージ編集出力 | 1000ITTSOR / 3000STPSOR / 4000MSGOUTSOR |
|
||||
| SUB03END | ABEND処理 | 2000MAJSOR / 9000ERRSOR |
|
||||
|
||||
## 使用DB2テーブル
|
||||
|
||||
なし(DB操作なし)
|
||||
|
||||
## SORTキー
|
||||
|
||||
| 対象 | キー項目 | 順序 |
|
||||
|------|---------|------|
|
||||
| SORTWORK | EMP-ID(SREMP-ID) | 昇順(ON ASCENDING KEY) |
|
||||
|
||||
## 処理フロー
|
||||
1. 初期処理(開始メッセージ→SUB01DAT運用日付取得→出力ファイルOPEN)
|
||||
2. SORT実行
|
||||
- INPUT PROCEDURE: R01読込(EOF 到達まで)→SORTレコード転記→RELEASE。RELEASE は最大 999 件、超過分は VALID-ERROR 出力
|
||||
- SORT KEY: EMP-ID 昇順
|
||||
- OUTPUT PROCEDURE: RETURN→SORTED-EMP 出力
|
||||
3. SORT結果判定(RETURN-CODE≠0→メッセージ出力+ABEND)
|
||||
4. 終了処理(統計表示→CLOSE→終了メッセージ)
|
||||
@@ -0,0 +1,48 @@
|
||||
# JIN07SUB 使用資源一覧
|
||||
|
||||
## プログラム概要
|
||||
- **プログラムID**: JIN07SUB
|
||||
- **プログラム名**: 社員情報取得サブ
|
||||
- **処理概要**: 指定 EMP-ID に一致する EMP-VALID(200B)レコードを順次 READ で検索し、該当項目(KANA-SEI/KANA-MEI/KANJI-NAME/SUB-CODE/BIRTH-DATE/EMP-ID/FILLER)を LINKAGE 個別引数で返却する。KANJI-NAME は CALL 側で OMITTED 指定時のみ返却スキップ(IS OMITTED 判定)。終了は EXIT PROGRAM。
|
||||
|
||||
## 使用ファイル
|
||||
|
||||
| DD名 | ファイル識別子 | 編成 | レコード形式 | レコード長 | COPY句 |
|
||||
|------|---------------|------|-------------|-----------|--------|
|
||||
| JIN07R01 | EMP-VALID | 順編成 | F (固定長) | 200B | JIN01REC |
|
||||
|
||||
## 使用COPY句
|
||||
|
||||
| COPY句 | 用途 | 使用箇所 |
|
||||
|--------|------|---------|
|
||||
| JIN01REC | EMP-VALID レコード定義(200B, REPLACING (A)→R01) | FILE SECTION |
|
||||
|
||||
## 使用サブプログラム
|
||||
|
||||
なし(本プログラムは CALL される側)
|
||||
|
||||
## 使用DB2テーブル
|
||||
|
||||
なし(DB操作なし)
|
||||
|
||||
## LINKAGE 引数
|
||||
|
||||
| NO | 入出力 | 引数名 | PIC | 説明 |
|
||||
|----|--------|--------|-----|------|
|
||||
| 1 | I | LK-EMP-ID | X(8) | 検索条件(社員番号) |
|
||||
| 2 | O | LK-KANA-SEI | X(20) | 一致レコード返却値 |
|
||||
| 3 | O | LK-KANA-MEI | X(20) | 一致レコード返却値 |
|
||||
| 4 | O | LK-KANJI-NAME | N(40) | 一致レコード返却値(OMITTED 時スキップ) |
|
||||
| 5 | O | LK-SUB-CODE | X(4) | 一致レコード返却値 |
|
||||
| 6 | O | LK-BIRTH-DATE | X(8) | 一致レコード返却値 |
|
||||
| 7 | O | LK-EMP-ID-OUT | X(8) | 一致レコード返却値(社員番号) |
|
||||
| 8 | O | LK-FILLER | X(60) | 一致レコード返却値 |
|
||||
| 9 | O | LK-RESULT | X(2) | 検索結果('OK'=一致 / 'NG'=不一致) |
|
||||
|
||||
## 処理フロー
|
||||
1. MOVE ADDRESS OF LK-EMP-ID TO WS-PTR(ADDRESS OF 予約語カバー)
|
||||
2. OPEN INPUT JIN07R01
|
||||
3. PERFORM UNTIL LK-RESULT = 'OK' OR EOF
|
||||
- READ → EMP-ID 完全一致時、各引数へ返却値を転記(KANJI-NAME は NOT OMITTED 時のみ)→ LK-RESULT='OK'
|
||||
4. CLOSE JIN07R01
|
||||
5. EXIT PROGRAM(GOBACK 不使用)
|
||||
@@ -0,0 +1,41 @@
|
||||
# JIN08TST 使用資源一覧
|
||||
|
||||
## プログラム概要
|
||||
- **プログラムID**: JIN08TST
|
||||
- **プログラム名**: JIN07SUB呼出テスト
|
||||
- **処理概要**: JIN07SUB を 2 回 CALL(全引数 / KANJI-NAME OMITTED)して、一致レコード取得と OMITTED 引数動作を DISPLAY 出力で確認するテストドライバ。開始/終了メッセージ出力、SUB01DAT 運用日付取得、異常時は SUB03END ABEND 処理を行う。
|
||||
|
||||
## 使用ファイル
|
||||
|
||||
なし(本プログラムはファイル入出力なし。JIN07SUB が JIN07R01 を読込む)
|
||||
|
||||
## 使用COPY句
|
||||
|
||||
| COPY句 | 用途 | 使用箇所 |
|
||||
|--------|------|---------|
|
||||
| JINDATAC | SUB01DAT 運用日付連絡領域 | WORKING-STORAGE |
|
||||
| JINMSGAC | SUB02MSG メッセージ連絡領域 | WORKING-STORAGE |
|
||||
| JINENDAC | SUB03END ABEND連絡領域 | WORKING-STORAGE |
|
||||
|
||||
## 使用サブプログラム
|
||||
|
||||
| サブPGM | 役割 | CALL箇所 |
|
||||
|---------|------|---------|
|
||||
| JIN07SUB | 社員情報取得 | 2000CALTST(2回: 全引数 / OMITTED) |
|
||||
| SUB01DAT | 運用日付取得 | 1000ITTTST |
|
||||
| SUB02MSG | メッセージ編集出力 | 1000ITTTST / 3000STPTST / 4000MSGOUTTST |
|
||||
| SUB03END | ABEND処理 | 9000ERRTST |
|
||||
|
||||
## 使用DB2テーブル
|
||||
|
||||
なし(DB操作なし)
|
||||
|
||||
## 処理フロー
|
||||
1. 初期処理(開始MSG→ワークエリア初期化→SUB01DAT 運用日付取得。異常時は 4000MSGOUTTST+9000ERRTST)
|
||||
2. CALL1: JIN07SUB 全引数 → LK-RESULT 判定 → 'CALL1 OK/NG' DISPLAY
|
||||
3. CALL2: JIN07SUB KANJI-NAME OMITTED → LK-RESULT 判定 → 'CALL2 OK/NG' DISPLAY
|
||||
4. 終了処理(終了MSG出力)
|
||||
|
||||
## 備考
|
||||
- テスト専用ドライバのため本番 JCL は不要(ローカル開発環境で単体実行)
|
||||
- 実行時は環境変数 JIN07R01 で EMP-VALID を割当てる
|
||||
@@ -49,9 +49,10 @@
|
||||
| NEXT | 2200JUDGESOR の NEXT SENTENCE |
|
||||
| SENTENCE | 2200JUDGESOR の NEXT SENTENCE |
|
||||
| EJECT | PROCEDURE DIVISION 先頭のソース行 EJECT |
|
||||
| SKIP2 | 段落境界のソース行 SKIP2 |
|
||||
| FALSE | 2000MAJSOR の SET WRK-FIRST-FLG-Y TO FALSE |
|
||||
|
||||
※ SKIP2 はソース行 `*SKIP2` がコメントでありディレクティブとして機能しないため、予約語カバー対象から除外する(W-1 是正)。
|
||||
|
||||
## 処理フロー
|
||||
1. 初期処理(開始メッセージ→運用日付取得→OPEN)
|
||||
2. マスタLOAD(R02全件→内部表構築→R02 CLOSE)
|
||||
|
||||
Reference in New Issue
Block a user