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


*CONTROL (*CBL) ステートメント

*CONTROL (または *CBL) ステートメントを使用すると、ソース・テキスト全体でソース・コード、オブジェクト・コード、およびストレージ・マップのリストを選択して表示または抑制することができます。

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

                 .--------------.          
                 V              |          
>>-+-*CONTROL-+----+-SOURCE---+-+--+---+-----------------------><
   '-*CBL-----'    +-NOSOURCE-+    '-.-'   
                   +-LIST-----+            
                   +-NOLIST---+            
                   +-MAP------+            
                   '-NOMAP----'            

これらのオプションを指定することによって得られる出力についての詳しい説明は、Enterprise COBOL プログラミング・ガイド」を参照してください。

*CONTROL ステートメントと *CBL ステートメントは同じ意味です。 *CONTROL が受け入れられるところはどこでも、*CBL は受け入れられます。

*CONTROL または *CBL という文字は、7 桁目以降の任意の桁から始めることができ、 その後に少なくとも 1 つのスペースまたはコンマを挟んで、1 つ以上のオプションのキーワードを続けます。オプションのキーワードは、 1 つまたは複数のスペースまたはコンマで区切らなければなりません。このステートメントは、 その行にある唯一のステートメントである必要があり、 継続させることはできません。 このステートメントはピリオドで終わらせることができます。

*CONTROL ステートメントと *CBL ステートメントは、 プログラムのソース・コードの中に組み込まなければなりません。 例えば、バッチ・アプリケーションの場合は、 *CONTROL ステートメントおよび *CBL ステートメントは PROCESS (CBL) ステートメントと プログラムの終わりの間 (END PROGRAM マーカーが指定されていればその前) に置かれなければなりません。

*CONTROL (*CBL) ステートメントを含むソース・コード行は、 ソース・プログラムのリストには現れません。

固定オプションとしてインストール時に定義されているオプションがあると、固定オプションは次に挙げるすべてのものを優先します。

要求されたオプションは、次のように取り扱われます。

  1. あるオプションまたはそのオプションの否定が *CONTROL ステートメントの中に複数回現れる場合、 そのオプションのうち最後に指定されたものが使用されます。
  2. コンパイラーに対するパラメーターとして CORRESPONDING オプションが要求されていた場合、 否定のオプショナル・ワードを指定した *CONTROL ステートメントは、 リスト出力が禁止されるソース・テキストの部分より前になければなりません。肯定のオプショナル・ワードを指定した *CONTROL ステートメントが現れると、 リスト出力は再開されます。
  3. コンパイラーに対するパラメーターとして CORRESPONDING オプションの否定が要求されていた場合、 リストは常に 禁止されます。
  4. *CONTROL ステートメントは、 それが記述されているソース・プログラム内 (それに含まれるプログラムも含めて) でのみ有効です。 このステートメントは、 複数の COBOL ソース・プログラムのバッチ・コンパイルにわたって有効になることはありません。

ソース・コード・リスト

入力ソース・テキスト行のリスト生成は、次のどちらかのステートメントによって制御されます。

*CONTROL SOURCE        [*CBL SOURCE]
*CONTROL NOSOURCE      [*CBL NOSOURCE]

*CONTROL NOSOURCE ステートメントで、 かつ SOURCE がコンパイル・オプションとして要求されていた場合、 これ以降はソース・リストの印刷は抑止されます。 「ソースの印刷は抑止されました」という通知 (I-レベル) メッセージが表示されます。

オブジェクト・コード・リスト

生成されるオブジェクト・コードのリストは、手続き部の中に書かれた次のどちらかのステートメントによって制御されます。

*CONTROL LIST          [*CBL LIST]
*CONTROL NOLIST        [*CBL NOLIST]

*CONTROL NOLIST ステートメントで、 かつコンパイラー・オプションとして LIST が要求されていた場合、 ここ以降、生成されたオブジェクト・コードのリストは抑止されます。

ストレージ・マップ・リスト

ストレージ・マップの項目のリスト生成は、データ部の中にある次のどちらかのステートメントによって制御されています。

*CONTROL MAP           [*CBL MAP]
*CONTROL NOMAP         [*CBL NOMAP]

*CONTROL NOMAP ステートメントで、 かつ MAP がコンパイル・オプションとして要求されていた場合、 ここ以降はストレージ・マップの項目のリストは抑止されます。

例えば、次のどちらかの組のステートメントを使用すると、A および B が現れないストレージ・マップのリストを作成します。

*CONTROL NOMAP         *CBL NOMAP
    01  A                  01  A
    02  B                  02  B
*CONTROL MAP           *CBL MAP

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

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