FILE-CONTROL 段落

FILE-CONTROL 段落は、COBOL プログラム内の各ファイルを外部ファイルに関連 付け、ファイル編成、アクセス・モード、およびその他の情報を指定します。

FILE-CONTROL 段落のフォーマットは次のとおりです。

  • 順次ファイル項目
  • 索引付きファイル項目
  • 相対ファイル項目
  • 行順次ファイル項目

以下の表には、プログラムで使用可能な各種のファイルのリストを示します。

表 1. ファイルのタイプ
ファイル編成 ファイル・システム
順次 SFS, STL, RSD1, Db2®, QSAM2
相対 SFS, STL, Db2
索引付き SFS, STL, Db2
行順次 LSQ
  1. RSD ファイル・システムでは、固定長レコードまたは可変長レコードの順次ファイルのみがサポートされます。
  2. QSAM ファイル・システムでは、固定長レコード、可変長レコード、およびスパン・レコードがサポートされます。
  3. SdU ファイル・タイプを指定すると、STL ファイルを指定した場合と同様に処理されます。

FILE-CONTROL 段落は、FILE-CONTROL という語で開始し、後に分離文字ピリオドが続きます。 ここには、 DATA DIVISION の FD 項目または SD 項目で記述されるそれぞれのファイルに対応して、 1 つの (ただ 1 つの) 項目を記述する必要があります。

各項目内では、SELECT 節が最初でなければなりません。 その他の節の順序は任意です。

下線は、割り当て名 1外部ファイル名コンポーネントで使用できます。

フォーマット 1: 順次ファイル制御項目

構文図を読む構文図をスキップするSELECTOPTIONALfile-name-1ASSIGN TOassignment-name-1USINGdata-name-9 RESERVE integerAREAAREASORGANIZATIONISSEQUENTIALPADDINGCHARACTERISdata-name-5literal-2RECORD DELIMITERISSTANDARD-1assignment-name-2ACCESSMODEISSEQUENTIALPASSWORDISdata-name-6FILESTATUSISdata-name-1data-name-8WITHLOCKONMULTIPLERECORDRECORDS.

フォーマット 2: 索引付きファイル制御項目

構文図を読む構文図をスキップするSELECTOPTIONALfile-name-1ASSIGN TOassignment-name-1USINGdata-name-9 RESERVEintegerAREAAREASORGANIZATIONISINDEXEDACCESSMODEISSEQUENTIALRANDOMDYNAMICRECORDKEYIS data-name-2record-key-name-1SOURCEIS=data-name-10 PASSWORDISdata-name-6entry 1FILESTATUSISdata-name-1data-name-8WITHLOCKONMULTIPLERECORDRECORDS.
項目 1
構文図を読む構文図をスキップするALTERNATERECORDKEYISdata-name-3record-key-name-2SOURCEIS=data-name-11WITHDUPLICATESPASSWORDISdata-name-7
制約事項: レコード・キー名 は、STL ファイル・システムでのみサポートされます。

フォーマット 3: 相対ファイル制御項目

構文図を読む構文図をスキップするSELECTOPTIONALfile-name-1ASSIGN TOassignment-name-1USINGdata-name-9 RESERVE integerAREAAREASORGANIZATIONISRELATIVEACCESSMODEISSEQUENTIALRELATIVEKEYISdata-name-4RANDOMDYNAMICRELATIVEKEYISdata-name-4PASSWORDISdata-name-6FILESTATUSISdata-name-1data-name-8WITHLOCKONMULTIPLERECORDRECORDS.

フォーマット 4: 行順次ファイル制御項目

構文図を読む構文図をスキップするSELECTOPTIONALfile-name-1ASSIGN TOassignment-name-1USINGdata-name-9 ORGANIZATIONIS LINE SEQUENTIALACCESSMODEISSEQUENTIALFILESTATUSISdata-name-1data-name-8.