Rational Developer for System z
Enterprise COBOL for z/OS バージョン 4.1 言語解説書


START ステートメント

START ステートメントは、その後の順次レコード検索のために、索引付き ファイルまたは相対ファイル内での位置決めの手段を提供します。

START ステートメントを実行する場合には、 関連する索引付きファイルまたは相対ファイルは、 INPUT モードまたは I-O モードのいずれかでオープンされている必要があります。

構文図を読む構文図をスキップする
フォーマット 

>>-START--ファイル名-1------------------------------------------>

>--+------------------------------------------------------------------+-->
   '-KEY--+----+--+-EQUAL--+----+-----------------------+--データ名-1-'   
          '-IS-'  |        '-TO-'                       |                 
                  +-=-----------------------------------+                 
                  +-GREATER--+------+-------------------+                 
                  |          '-THAN-'                   |                 
                  +->-----------------------------------+                 
                  +-NOT LESS--+------+------------------+                 
                  |           '-THAN-'                  |                 
                  +-NOT <-------------------------------+                 
                  +-GREATER--+------+--OR EQUAL--+----+-+                 
                  |          '-THAN-'            '-TO-' |                 
                  '->=----------------------------------'                 

>--+--------------------------------------+------------------->
   '-INVALID--+-----+--命令ステートメント-1-'   
              '-KEY-'                           

>--+------------------------------------------+--------------->
   '-NOT INVALID--+-----+--命令ステートメント-2-'   
                  '-KEY-'                           

>--+-----------+-----------------------------------------------><
   '-END-START-'   

ファイル名-1
順次アクセス・モードまたは動的アクセス・モードのファイルを指定しなければなりません。 ファイル名-1 は、データ部の FD 項目に定義されている必要があり、また、 ソート・ファイルにすることはできません。

KEY 句

KEY 句を指定すると、ファイル位置標識は、 ファイル内で比較の条件を満たすキー・フィールドを持つ論理レコードに位置付けられます。

KEY 句を指定しない場合は、 KEY IS EQUAL (基本レコード・キーに一致する) が暗黙に指定されます。

データ名-1
修飾形でもよいが、添え字付きにはできません。

START ステートメントが実行されると、 キー・データ名の現行値とファイルの指標内の該当キー・フィールドが比較されます。

ファイル制御項目の中に FILE STATUS 節が指定されている場合は、 START ステートメントの実行時に、関連するファイル状況キーが更新されます (ファイル状況キーを参照)。

INVALID KEY 句

ファイル内のどのレコードでも比較の条件が満たされない場合は、無効キー条件となります。 つまり、ファイル位置標識の位置は未定義となり 、(指定されている場合は) INVALID KEY 命令ステートメントが実行されます。(『共通の処理機能』にあるINTO 句および FROM 句を参照してください。)

INVALID KEY 句および利用可能な EXCEPTION/ERROR プロシージャーは、両方とも省略することができます。

END-START 句

この明示的範囲終了符号は、START ステートメントの範囲を区切るために使用されます。 END-START を使用すると、 条件付き START ステートメントを他の条件ステートメント内にネストすることができます。 END-START 句は、命令 START ステートメントと共に使用することもできます。

詳しくは、範囲区切りステートメントを参照してください。

索引付きファイル

KEY 句を指定したときは、比較のために使用されるキー・データ項目はデータ名-1 です。

KEY 句を指定しない場合は、EQUAL TO 比較のために使用されるキー・データ項目は、 基本 RECORD KEY です。

START ステートメントが正しく実行されると、データ名-1 が関連付けられている RECORD KEY または ALTERNATE RECORD KEY は、 後続の READ ステートメントで使用される参照キーとなります。

データ名-1
これは以下のいずれかにすることができます。
  • 基本 RECORD KEY。
  • 任意の ALTERNATE RECORD KEY。
  • 左端の文字位置がレコード・キーの左端の文字位置と対応しているファイルにおいて、 そのレコード記述内のデータ項目。このデータ項目は修飾できます。 データ項目のサイズは、そのファイルのレコード・キーの長さ以下でなければなりません。

カテゴリーにかかわらず、データ名-1 は、比較演算を行うために、英数字項目として扱われます。

ファイル位置標識は、比較を満たすキー・フィールドを持つファイル内の最初のレコードに位置付けられます。 比較の際にオペランドの長さが等しくない場合には、 長い方のフィールドの右側が短い方のフィールドに合わせて切り捨てられたかのようにして処理します。 PROGRAM COLLATING SEQUENCE 節が指定されていても効力を持たないことを除いて、 他の数字および英数字比較の規則がすべて適用されます。

START ステートメントが正常に実行すると、データ名-1 が関連付けられている RECORD KEY は、 後続の READ ステートメントの参照キーになります。

START ステートメントの実行が正常に行われないと、参照キーは定義されません。

相対ファイル

KEY 句を指定する場合は、データ名-1 に RELATIVE KEY を指定する必要があります。

KEY 句の指定の有無にかかわらず、比較の際に使用されるキー・データ項目は、 RELATIVE KEY データ項目です。 数字比較の規則が適用されます。

ファイル位置標識は、指定された比較の条件を満たすキーを持つファイル内の論理レコードを指示します。


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

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