Rational Developer for System z
Enterprise COBOL for z/OS バージョン 4.1 プログラミング・ガイド


スパン形式の要求

スパン・レコード とは、形式 S のレコードで、1 つ以上の物理ブロックに含めることができる QSAM 論理レコードのことです。

磁気テープまたは直接アクセス装置に割り当てられる QSAM ファイルのスパン・レコードには、RECORDING MODE S をコーディングできます。HFS のファイルについてはスパン・レコードを要求してはなりません。RECORDING MODE 節は省略することができます。 最大レコード長 (バイト数) に 4 を加えた値が、 BLOCK CONTAINS 節で設定されたブロック・サイズより大きい場合、コンパイラーは記録モードが S であると判定します。

プログラム内の形式 S のファイルの場合、コンパイラーは最大レコード長を形式 V について使用されるのと同じ規則で判別します。この長さは、RECORD 節の使用法に基づいています。

フォーマット S レコードを含んでいるファイルを作成する場合に、レコードがブロックの残りのスペースより大きい場合、COBOL はレコードの 1 セグメントを書き込んでブロックを埋めます。レコードの残りの部分は、その長さに応じて、次の 1 つ以上のブロックに格納されます。COBOL は、32,760 バイトまでの長さの QSAM スパン・レコードをサポートします。

形式 S レコードを持つファイルを検索するときには、プログラムは完全なレコードだけを検索することができます。

形式 S ファイルのメリット: 形式 S レコードを持つファイルを定義すると、外部ストレージを効率よく利用できる上に、論理レコード長を使用してファイルを編成することができます。

しかし、形式 S ファイルを処理するためには追加のオーバーヘッドが必要になります。

形式 S ファイルおよび READ INTO: 形式 S ファイルに READ INTO ステートメントを指定した場合、 コンパイラーは、そのファイルの読み取りにのみ使用するレコードのサイズを使用する MOVE ステートメントを生成します。 読み取られたレコードが、レベル 01 レコード記述に対応していない場合には、期待どおりの結果が得られないことがあります。 MOVE ステートメントに関するその他の規則はすべて適用されます。


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

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