COBOL 言語の紹介 Next

Micro Focus COBOL"

言語リファレンス



Micro Focus®

第 23 版
2003 年 5 月


Copyright © 2003 Micro Focus International Limited.
All rights reserved.

Micro Focus は、本書の内容が公正かつ正確であるよう万全を期しているが、 本書の内容は予告なしに随時変更されることがある。 本書に述べられているソフトウェアはライセンスに基づいて提供され、その使用 および複写は、ライセンス契約に基づいてのみ許可される。特に、Micro Focus 社製品のいかなる用途への適合性も明示的に本契約から除外されており、Micro Focus はいかなる必然的損害に対しても一切責任を負うものではない。

Animator®、COBOL Workbench®、EnterpriseLink®、Mainframe Express®、Micro Focus®、Net Express®、REQL® および Revolve® は、Micro Focus International Limited の登録商標である。また、AAI"、Analyzer"、Application to Application Interface"、AddPack"、AppTrack"、AssetMiner"、CCI"、DataConnect"、Dialog System"、EuroSmart"、FixPack"、LEVEL II COBOL"、License Management Facility"、License Server"、Mainframe Access"、Mainframe Manager"、Micro Focus COBOL"、Object COBOL"、OpenESQL"、Personal COBOL"、Professional COBOL"、Server Express"、SmartFind"、SmartFind Plus"、SmartFix"、SourceConnect"、Toolbox"、VS COBOL"、WebSync"、および Xilerator"は同社の商標である。その他の商標は、当該企業の商標または登録商標である。

このドキュメントは、CD-ROMに含まれるソフトウェア製品ユーザ用のものを除き、Micro Focus International Limitedによる事前の書面による同意の前に、いかなる電子媒体または機会により読み取り可能な書式へ、複写、複製、送付、改訂を行うことはできない。

ライセンス所有者は、CD-ROMに含まれるソフトウェア製品ユーザ用ドキュメントを複製できる。ただし、ライセンス契約によりソフトウェアへのアクセスが認められたユーザのサポートに必要な範囲に限る。ドキュメントを再製する場合は、一部または全部を問わず、この版権の記述の全体が含まれなければならない。

U.S. GOVERNMENT RESTRICTED RIGHTS. It is acknowledged that the Software and the Documentation were developed at private expense, that no part is in the public domain, and that the Software and Documentation are Commercial Computer Software provided with RESTRICTED RIGHTS under Federal Acquisition Regulations and agency supplements to them. Use, duplication or disclosure by the U.S. Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of The Rights in Technical Data and Computer Software clause at DFAR 252.227-7013 et. seq. or subparagraphs (c)(1) and (2) of the Commercial Computer Software Restricted Rights at FAR 52.227-19, as applicable. Contractor is Micro Focus International Limited, 9420 Key West Avenue, Rockville, Maryland 20850. Rights are reserved under copyright laws of the United States with respect to unpublished portions of the Software.


このドキュメントについて

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

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仕様を引用する場合にも、延長して適用される。

対象読者

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

関連図書

本書に関連して参照する必要がある図書としては、入門書、本 COBOLシステムのユーザガイドおよび言語リファレンス - 追加トピックがある。

本書の使用方法

本書は、基本 COBOL 言語用 Micro Focus COBOL 製品により提供されるサポートについて説明する。また、言語リファレンス - 追加トピック を併用すること。言語リファレンス-追加トピックでは、DBCS、Report Writer、SQL および通信などの、その他の言語機能を使用するためのサポートについて説明している。さらに、DOS/VS COBOLやSiemens BS2000 COBOLなど、多くの方言のサポートについても、説明している。

表記

本書では、COBOL文の形式を表わすために、下記の表記法を使用する。

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

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

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

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

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

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

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

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

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

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

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

  9. 一般形式で「整数」という語が使われている場合は、整数の数字定数を意味するものとする。また、その形式において明示的に許可されていないかぎり、符号付きの数字やゼロであってはならない。

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

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

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

  12. 大部分の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製品の大部分の拡張機能をも、使用することができる。

  13. 方言を使用している利用者の便宜を図るために、このマニュアルでは、 機能ごとに方言があれば明示している。 ANS X3.23-1974 を超える機能に関する記述は四角で囲んで、 端に下記の楕円形の記号を付している。セクション全体が別の方言である場合は、セクションの見出しの後に記号のみの行がある。別の方言の一部である語句は、そのようにマークが付けられ、それのみで 1 段落となっている。構文の表記では、ANS X3.23-1974 以外の機能は、線で囲まれ、その後またはその行末に記号が付けられている。

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

    IBM OS/VS COBOL中の ANS X3.23-1974 に対する拡張機能を表わす。
    IBM VS COBOL II中の ANS X3.23-1985 に対する拡張機能を表わす。
    IBM SAA AD/Cycle COBOL/370中の ANS X3.23-1985 に対する拡張機能であって IBM VS COBOL II には含まれない機能を表わす。
    IBM COBOL for OS/390 & V2R2でサポートされているが、IBM SAA AD/Cycle COBOL/370ではサポートされていない、ANS X3.23-1985に対する拡張機能を表す。
    ANS X3.23-1985 で新たに定義された機能で ANS X3.23-1974 にはなかった機能を表わす。
    X/Open CAE仕様のCOBOL言語(XPG-4)に固有のANS X3.23-1985に対する拡張機能を表わす。
    Micro Focus COBOLに固有のANS X3.23-1985に対する拡張機能を表わす。
    dialm.gif ANS X3.23-1985ではサポートされていない、ISO/IEC 1989:2002で定義された機能を表す。


    注:


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

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

  14. 方言により異なる効力を持つ機能もあり、方言制御指令を指定して、互換性を持たせる方言を選択することができる。このような機能は、二重線で囲まれている。

    ANS X3.23-1985 以外の機能に必要なその他の予約語は、適切な方言制御指令が存在する場合にのみ予約されている。これにより、確実に、指定した方言での予約語のみが目的のシステムで予約されているようにすることができる。その他の予約語を必要とせず、その効果がすべての方言で同じである機能のみを使用する場合は、方言制御指令を指定する必要はない。

    dialect-control指令にANS X3.23-1985方言を指定すると、ANS X3.23-1985内では使用できないいくつかのANS X3.23-1974の機能に警告メッセージが付けられる。

  15. 本書中に「注記にとどまる」と記してある場合は、該当するコーディングが、文法的には COBOL コンパイラに受け入れられるが、実行用プログラムを生成する際には無視されることを意味する。

  16. 16進数は、小文字の x の後に引用符で囲んで示される(例:x"9D") 。
COBOL 言語の紹介 Next