Micro Focus COBOL

言語リファレンス



Micro Focus


第 19a 版
2000 年 10 月


Copyright © 2002 Micro Focus International Limited. All rights reserved.
本文書、ならびに使用されている固有の商標および名称は、国際法で保護されています。

Micro Focus は、本書の内容が公正かつ正確であるよう万全を期しておりますが、 本書の内容は予告なしに随時変更されることがあります。

本書に述べられているソフトウェアはライセンスに基づいて提供され、その使用 および複写は、ライセンス契約に基づいてのみ許可されます。特に、Micro Focus 社製品のいかなる用途への適合性も明示的に本契約から除外されており、Micro Focus はいかなる必然的損害に対しても一切責任を負いません。

COBOL は情報処理業界の標準言語の 1 つである。 COBOL言語は、いかなる企業または企業グループあるいは組織または組織グループの所有物でもない。

プログラミング・システムおよび言語の正確性および機能に関して、CODASYL プログラミング言語委員会も、 あるいはいかなる協力者も、明示的にも暗示的にも、何らかの保証をするものではない。 さらに、このマニュアルに記載してある内容に関連して、CODASYL プログラミング言語委員会もあるいはいかなる協力者も、 何ら責任を負うものではない。

このマニュアルでは、下記の著作物を引用している。

FLOW-MATIC Programming for the Univac® I and II, Data Automation Systems copyrighted 1958,1959, by Sperry Rand Corporation; IBM® Commercial Translator Form No. F28-8013, copyrighted 1959 by IBM®; FACT, DSI27A5260-2760, copyrighted 1960 by Minneapolis-Honeywell

これらの著作物の著者または著作権保有者はCOBOL仕様中にこれらの資料を全面的にまたは部分的に引用することを特別に承諾してくれている。 この承諾は、プログラミング・マニュアルまたは類似の刊行物の中でCOBOL仕様を引用する場合にも、延長して適用される。

Micro Focus® and Animator® are registered trademarks of Micro Focus Limited. Micro Focus COBOL, VS COBOL, LEVEL II COBOL, LEVEL II COBOL/ET, and Professional COBOL are trademarks of Micro Focus Limited.

IBM® is a registered trademark of International Business Machines Corporation. Systems Application Architecture is a trademark of International Business Machines Corporation.

Microsoft® is a registered trademark of Microsoft Corporation.

Data General® is a registered trademark of Data General Corporation.

PANVALET and Librarian are trademarks of Computer Associates. Ryan McFarland® is a registered trademark of Ryan-McFarland Corporation.

UNIX® is a registered trademark licensed exclusively by X/Open Company Limited.

Copyright © 1978-2001 Micro Focus.
All Rights Reserved


序文

本書は、マイクロコンピュータのためのプログラミングシステムである本システムがサポートする COBOL 言語を解説するものです。 この COBOL 言語は、ANSI COBOL 標準 X3.23-1985 および X3.23a-1989 に基づいており、多くの COBOL 処理系によってサポートされているものです。

対象読者

本書は、既に COBOL 言語に精通している読者を対象として書かれています。

関連図書

本書に関連して参照する必要がある図書としては、入門書、本 COBOLシステムのユーザガイドおよび以下のものがあります。

本書の訂正が、オンディスクドキュメントのマニュアル正誤表 として別途提供されている場合があります。

本書の使用方法

本書は、基本 COBOL 言語用 Micro Focus COBOL 製品により提供されるサポートについて説明しています。同梱の言語リファレンス-追加トピックを、本書と併用してください。言語リファレンス-追加トピックでは、DBCS、Report Writer、SQL および通信などの、その他の言語機能を使用するためのサポートについて説明しています。これらの機能は一般的に使用されるものではないため、最初にこの言語リファレンスを参照するようにしてください。

本書は、本製品によりサポートされる COBOL 言語について記述しています。この言語は、本製品の初期のバージョンの一部では VS COBOL として知られていました。本書および他の関連マニュアルで、修飾語のない COBOL または VS COBOL と記述されている場合はいずれも、本書で説明している言語を指しています。他のバージョンの COBOL を指す場合はつねに、VS COBOL II や ANSI'85 COBOL などのように修飾語を付けて記述されます。

マニュアルの表記

このマニュアルでは、COBOL文の形式を表わすために、下記の表記法を使用しています。

  1. 大文字で記しアンダーラインを引いてある語(例:ABC)。その語が係わる機能を使用する際には、必ず指定しなければならない。これに該当する語を指定しないかまたはつづりを間違えるかすると、COBOLコンパイラによってエラーとされる。COBOL原始プログラムを書く際には、アンダーラインを引く必要はない。

  2. 大文字で記してあるがアンダーラインを引いていない語(例:ABC)。COBOL原始プログラムを読みやすくするためだけに使用する。それらの語は指定しても指定しなくても構わない。ただし、指定する場合は、正しいつづりで書かなければならない。

  3. 日本語で記してある語(例:ファイル名)。プログラマが指定すべき名前を表わす。

  4. { } いくつかの項目を中かっこで囲んである場合。その中から1つを選択して指定しなければならない。中かっこで囲んである項目が1つしかない場合は、その項目を指定しなければならない。その場合、中かっこは繰り返しを表わす。

  5. {||} いくつかの項目を中かっこで囲み縦棒で区切ってある場合。その中から1つ以上を選択して指定しなければならない。ただし、1つの項目は1回だけしか指定することはできない。

  6. [ ]いくつかの項目を角かっこで囲んである場合。その中の項目は任意の選択項目であることを表わす。任意の選択項目は、必要に応じて、指定しても指定しなくても構わない。

  7. 項目が箱と角かっこで囲んである場合:

    lrfrnt01.gif

    その項目はANSI'74 COBOL(American National Standards Institute publication X3.23-1974) の必須項目であるが、言語仕様の機能拡張の結果、省略可能になったことを表わす。 端に示されている記号はCOBOLの方言を示す。 方言を使用するかしないかは自由である。

  8. 反復記号(...)。原始プログラムまたは一連の記述の一部を省略していることを表わす。どの部分が省略されているかは、文脈からわかる。

    一般形式においては、反復記号が表わすのは、利用者が自分の判断で繰り返しを指定できる部分である。その範囲は次のように読み取る。

    句または文の中に反復記号(...)が出てきたならば、その左側へ順にたどって最初に出てくる}または]を見つける。さらに左側へ順にたどって、}または]に論理的に対応する{または[を見つける。この一組の{ }または[ ]で囲まれた一連の語が反復の対象範囲となる。

  9. このリファレンス・マニュアルでは、IBM SAA AD/Cycle COBOL370(COBOL/370) 文の構文およびCOBOL/370を使用してコンパイルする原始プログラムを書く際の規則についても、 説明する。

  10. COBOL/370とIBM VS COBOL IIとの違いは、手続きポインタ形式に関して、 省略時解釈の長さが4バイトではなく8バイトであることである。

  11. このリファレンス・マニュアルでは、マルチベンダー統合体系(MIA) の構文も示す。このMIAはCOBOLプログラミング言語の技術的な必要条件となっている。

    大部分のCOBOL言語には、ANSI X3.23-1974に定義されているCOBOL言語を拡張した 機能が組み込まれている。組み込まれている拡張機能の度合はコンパイラによって違いがある。 つまり、COBOLには「方言」と呼ばれる異なったバージョンがいくつもある。 Micro Focus COBOL製品は、コンパイラをまたがって開発作業を進められるように設計してある。 つまり、この製品は、利用者が使用しているCOBOLシステムだけではなく、 IBM OS/VS COBOLやIBM VS COBOL IIあるいはANS X3.23-1974ないしその更新版である ANS X3.23-1985でプログラムを開発するために使用することができる。 この製品では、ANS X3.23-1985のすべての機能はもちろんのこと、 IBMの2つのCOBOL製品の大部分の拡張機能をも、使用することができる。
    方言を使用している利用者の便宜を図るために、このマニュアルでは、 機能ごとに方言があれば明示している。 ANS X3.23-1974 を超える機能に関する記述は四角で囲んで、 端に下記の楕円形の記号を付している。セクション全体が別の方言である場合は、セクションの見出しの後に記号のみの行がある。別の方言の一部である語句は、そのようにマークが付けられ、それのみで 1 段落となっている。構文の表記では、ANS X3.23-1974 以外の機能は、線で囲まれ、その後またはその行末に記号が付けられている。

    使用される記号は、以下のとおり。

dialo.gif IBM OS/VS COBOL中の ANS X3.23-1974 に対する拡張機能を表わす。
dialv.gif IBM VS COBOL II中の ANS X3.23-1985 に対する拡張機能を表わす。
dial3.gif IBM SAA AD/Cycle COBOL/370中の ANS X3.23-1985 に対する拡張機能であって IBM VS COBOL II には含まれない機能を表わす。
diala.gif ANS X3.23-1985 で新たに定義された機能で ANS X3.23-1974 には無かった機能を表わす。
dialx.gif X/Open CAE仕様のCOBOL言語(XPG-4)に固有のANS X3.23-1985に対する拡張機能を表わす。
dialm.gif Micro Focus COBOLに固有のANS X3.23-1985に対する拡張機能を表わす。


注:


これらの記号は、特定の構文および意味論のサポートを示します。特定の方言に関する予約語を変更するには、コンパイラの指令を使用する必要があります。本書の付録、『予約語および、Compatibility Guideには、さまざまな方言に影響される予約語の一覧があります。

たとえば、IBM OS/VS COBOL 上で使用するプログラムを開発している場合は、記号が付けられていない機能と、OSVS の記号が付けられている機能を使用できます。自分の COBOL 環境専用に開発を行っている場合は、どの機能でも使用できます。システムソフトウェアを起動するときに、 FLAG コンパイラ指令を発行すると、その COBOL システムソフトウェアは、指定された方言のもの以外のあらゆる機能にフラグを付けます。また、FLAGAS コンパイラ指令を使用して、フラグのメッセージをエラーメッセージに変換することもできます。