サブシステム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:
qiuqiuqiu
2026-08-05 00:11:07 +08:00
parent 182b161208
commit a918489f93
88 changed files with 2953 additions and 300 deletions
+126
View File
@@ -0,0 +1,126 @@
IDENTIFICATION DIVISION.
PROGRAM-ID. JIN07SUB.
*****************************************************************
* システム名 : 人事情報管理システム *
* プログラムID : JIN07SUB *
* プログラム名 : 社員情報取得サブ *
* 作成日 : 2026-08-02 *
* 処理概要 : 指定 EMP-ID に一致する EMP-VALID レコードの *
* 項目を返却するサブプログラム *
* 終了は EXIT PROGRAMGOBACK 不使用) *
*****************************************************************
* 更新履歴 *
*---------------------------------------------------------------*
* 更新日付 担当者 更新内容 *
*---------------------------------------------------------------*
* 26-08-02 @@@ 新規作成 *
* *
*****************************************************************
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SOURCE-COMPUTER. IBM-ZSERIES.
OBJECT-COMPUTER. IBM-ZSERIES.
*
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT R01INNFIL ASSIGN TO EXTERNAL JIN07R01
ORGANIZATION IS SEQUENTIAL
ACCESS MODE IS SEQUENTIAL.
*
DATA DIVISION.
*****************************************************************
FILE SECTION.
*****************************************************************
* R01: EMP-VALID200B 社員データ) *
*****************************************************************
FD R01INNFIL
LABEL RECORD IS STANDARD
BLOCK CONTAINS 0
RECORDING MODE IS F.
01 R01INNREC.
COPY JIN01REC REPLACING ==(A)== BY ==R01==.
*
*****************************************************************
WORKING-STORAGE SECTION.
*****************************************************************
01 WRKARA.
*** 読込フラグ
03 WRK-R01EOF PIC X(001).
88 WRK-R01EOF-Y VALUE '1'.
*** ADDRESS OF 取得用ポインタ
03 WS-PTR USAGE POINTER.
*
*****************************************************************
* リンケージエリア(個別引数方式) *
*****************************************************************
LINKAGE SECTION.
*****************************************************************
01 LK-EMP-ID PIC X(008).
01 LK-KANA-SEI PIC X(020).
01 LK-KANA-MEI PIC X(020).
01 LK-KANJI-NAME PIC N(040).
01 LK-SUB-CODE PIC X(004).
01 LK-BIRTH-DATE PIC X(008).
01 LK-EMP-ID-OUT PIC X(008).
01 LK-FILLER PIC X(060).
01 LK-RESULT PIC X(002).
*
PROCEDURE DIVISION
USING LK-EMP-ID, LK-KANA-SEI, LK-KANA-MEI, LK-KANJI-NAME,
LK-SUB-CODE, LK-BIRTH-DATE, LK-EMP-ID-OUT, LK-FILLER,
LK-RESULT.
*****************************************************************
* サブモジュールNO: (0.0) *
* サブモジュール名: 制御処理 *
* 処理概要 : メインコントロール処理 *
*****************************************************************
0000MAINSOR SECTION.
*
*** ADDRESS OF 予約語カバー(引数アドレス取得)
MOVE ADDRESS OF LK-EMP-ID TO WS-PTR.
*
*** 検索結果初期化(不一致初期値)
MOVE 'NG' TO LK-RESULT.
*
*** 入力ファイルOPEN
OPEN INPUT R01INNFIL.
*
*** 社員検索
PERFORM 1000FNDSOR.
*
*** 入力ファイルCLOSE
CLOSE R01INNFIL.
*
0000MAINSOR-EXT.
EXIT PROGRAM.
*
*EJECT
*****************************************************************
* サブモジュールNO: (1.0) *
* サブモジュール名: 社員検索 *
* 処理概要 : EMP-VALID 順次検索で一致レコード返却 *
*****************************************************************
1000FNDSOR SECTION.
*
PERFORM UNTIL LK-RESULT = 'OK' OR WRK-R01EOF-Y
READ R01INNFIL
AT END
MOVE '1' TO WRK-R01EOF
NOT AT END
IF R01EMP-ID = LK-EMP-ID
MOVE R01KANA-SEI TO LK-KANA-SEI
MOVE R01KANA-MEI TO LK-KANA-MEI
IF LK-KANJI-NAME NOT OMITTED
MOVE R01KANJI-NAME TO LK-KANJI-NAME
END-IF
MOVE R01SUB-CODE TO LK-SUB-CODE
MOVE R01BIRTH-DATE TO LK-BIRTH-DATE
MOVE R01EMP-ID TO LK-EMP-ID-OUT
MOVE R01FILLER TO LK-FILLER
MOVE 'OK' TO LK-RESULT
END-IF
END-READ
END-PERFORM.
*
1000FNDSOR-EXT.
EXIT.