OS/VS COBOL では、LINKAGE SECTION 区域が 4096 バイトよりも大きい場合は、ストレージ域全体へのアドレス可能度を提供するためのステートメントを組み込む必要があります。Enterprise COBOL プログラムの場合、これらのステートメントは必要ではありません。
以下の例は、OS/VS COBOL プログラムと Enterprise COBOL プログラムの 両方のコーディングを示しています。
移行時には、以下のステップを実行してください。
ADD +4096 TO RECORD-POINTER ...
SERVICE RELOAD ...
OS/VS COBOL Enterprise COBOL
LINKAGE SECTION. LINKAGE SECTION.
01 PARMLIST.
.
.
05 RECORD-POINTERA PIC S9(8) COMP.
05 RECORD-POINTERB PIC S9(8) COMP.
.
.
01 FILE-RECORD. 01 FILE-RECORD.
05 REC-AREA1 PIC X(2500). 05 REC-DATA1 PIC X(2500).
05 REC-AREA2 PIC X(2500). 05 REC-DATA2 PIC X(2500).
. .
. .
PROCEDURE DIVISION. PROCEDURE DIVISION.
. .
. .
EXEC CICS READ DATASET("INFILE") EXEC CICS READ DATASET("INFILE")
RIDFLD(INFILE-KEY) RIDFLD(INFILE-KEY)
SET(RECORD-POINTERA) SET(ADDRESS OF FILE-RECORD)
LENGTH(RECORD-LEN) LENGTH(RECORD-LEN)
END-EXEC END-EXEC
SERVICE RELOAD RECORD-POINTERA
ADD +4096 TO RECORD-POINTERA
GIVING RECORD-POINTERB
SERVICE RELOAD RECORD-POINTERB.