Rational Developer for System z
Enterprise COBOL for z/OS バージョン 4.1 コンパイラーおよびランタイム 移行ガイド


新規ファイルの処理

COBOL プログラムが、プログラムの実行前に使用可能にされた新規ファイルにレコードを 書き込む場合は、DD ステートメントまたは割り振りで指定するファイル属性が、プログラム で指定した属性と矛盾しないようにしてください。ほとんどの場合、以下の例 (この例は、DD ステートメントとプログラム内 の FILE-CONTROL および FD 記入項目との関係を示しています) に示されているように、ファイルを事前定義するときに指定する必要があるのは最小限のパラメーターだけです。
図 1. JCL、FILE-CONTROL 記入項目、および FD 記入項目の例
JCL DD Statement:

 1 
//OUTFILE  DD  DSNAME=OUT171,UNIT=SYSDA,SPACE=(TRK,(50,5)),
//             DCB=(BLKSIZE=400)


/*

Enterprise COBOL  Program Code:

ENVIRONMENT DIVISION.
  INPUT─OUTPUT SECTION.
    FILE─CONTROL.
      SELECT CARPOOL  2 
          ASSIGN TO OUTFILE  1 
          ORGANIZATION IS SEQUENTIAL
          ACCESS IS SEQUENTIAL.
    .
    .
    .
DATA DIVISION.
  FILE SECTION.
    FD CARPOOL  2 
      LABEL RECORD STANDARD
      BLOCK CONTAINS 0 CHARACTERS
      RECORD CONTAINS 80 CHARACTERS
ここで、
 1 
DD ステートメントの ddname は、ASSIGN 文節の assignment-name に 対応します。
//OUTFILE  DD  DSNAME=OUT171 …
以下の assignment-name は、DD ステートメントの OUTFILE の ddname を 指します。
ASSIGN TO OUTFILE
 2 
COBOL FILE-CONTROL 記入項目でファイルを指定する場合、そのファイル を file-name 用の FD 記入項目で記述する必要があります。
SELECT CARPOOL

FD CARPOOL
データ・セットの長さ属性を明示的に指定する必要がある場合 (たとえば、ISPF 割り振 りパネルを使用する場合、または DD ステートメントが、プログラムで RECORD CONTAINS 0 を 使用するバッチ・ジョブのためのものである場合)、次の規則に従ってください。
たとえば、可変長レコードを持つファイルについての以下のコードがプログラムに含まれて いるとします。
  FILE SECTION.
    FD  COMMUTER-FILE-MST
        RECORDING MODE IS V
        RECORD CONTAINS 10 TO 50 CHARACTERS.
    01  COMMUTER-RECORD-A           PIC X(10).
    01  COMMUTER-RECORD-B           PIC X(50).

DD ステートメントまたは割り振りで指定する LRECL は 54 にする必要があります。


ご利用条件 | フィードバック

このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)