SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

COBOLプログラミング

COBOLプログラミング 基本編

第2回 OpenCOBOLを使用したCOBOL基本プログラミングの解説

  • X ポスト
  • このエントリーをはてなブックマークに追加

基本的なCOBOLの文法(2)~IDENTIFICATION/ENVIROMENT/DATA DIVISION~

 COBOLでは4つのDIVISION(部)があります。IDENTIFICATION DIVISION(見出し部)、ENVIROMENT DIVISION(環境部)、DATA DIVISION(データ部)、PROCEDURE DIVISION(手続き部)で、順番に記述していく必要があります。それぞれ、どのように記述すればいいか、順を追って説明します。

A.IDENTIFICATION DIVISION

 見出し部と呼ばれる部分です。4つのDIVISIONのうち最初に記述します。このDIVISIONは省略することできません。ここには、プログラム名や作成者、作成日時など当該プログラムの見出しを記述します。OpenCOBOLでは、プログラム名の記述は必須で、その他は特に必要ではありません。見出し部の記述例は以下になります。

固定形式、可変形式による見出し部記述例
000010 IDENTIFICATION DIVISION.
000020 PROGRAM-ID. SAMPLE-PG.

 PROGRAM-ID句で指定した名称とソースファイル名は異なっていても問題ありません。

B.ENVIROMENT DIVISION

 環境部と呼ばれる部分です。IDENTIFICATION DIVISIONの次に記述し、構成節(CONFIGURATION SECTION)と入出力節(INPUT-OUTPUT SECTION)の2つの節からなります。すべての節で指定すべき事が無ければ、記述を省略できます。

(A) 構成節

 構成節には翻訳用計算機と実行用計算機の情報を記述しますが、OpenCOBOLでは指定する必要はありません。デバッグ行をコンパイル対象とする場合は翻訳計算機情報に記述する必要があります。

デバッグ行をコンパイル対象とする場合
000040 CONFIGURATION SECTION.
000050 SOURCE-COMPUTER. LINUX WITH DEBUGGING MODE.
(B) 入出力節

 プログラムで使用する入出力ファイルなどの情報を記述します。

(C) 環境部記述例

 環境部の記述例は以下になります。

固定形式、可変形式による環境部記述例
000030 ENVIRONMENT DIVISION.
000040 CONFIGURATION SECTION.
000050 SOURCE-COMPUTER. LINUX WITH DEBUGGING MODE.
000060 INPUT-OUTPUT SECTION.
000070 FILE-CONTROL.
000080 SELECT INPUT-FILE-1 ASSIGN TO DISK "test.txt"
000090      ACCESS MODE SEQUENTIAL.

C.DATA DIVISION

 データ部と呼ばれる部分です。ENVIROMENT DIVISIONの次に記述し、プログラム処理で使用するデータを定義します。ファイル節、作業場所節、連絡節、報告書節があります。すべての節の使用が無ければ、記述を省略できます。ここでは、ファイル節(FILE SECTION)と作業場所節(WORKING-STRAGE SECTION)について簡単に説明し、他の節は割愛いたします。

(A) ファイル節

 環境部の入出力節で定義した入出力ファイルのファイル構造とレコードのデータ構造を記述します。環境部入出力節で定義したファイルとそれに伴うファイル節の定義例は以下になります。

固定形式、可変形式によるファイル節定義例
000080 SELECT INPUT-FILE-1 ASSIGN TO DISK "test.txt"
000090      ACCESS MODE SEQUENTIAL.
......
000100 DATA DIVISION.
000110 FILE SECTION.
000120 FD INPUT-FILE-1 LABEL RECORDS ARE STANDARD.
000130 01 INPUT-FILE-RECORD.
000140    03 PHONE-NO PIC X(12).
000150    03 POST-NO  PIC X(7).
(B) 作業場所節

 プログラム処理で使用するデータ構造を記述します。作業場所節の記述例は以下になります。

固定形式、可変形式による作業場所節記述例
000100 DATA DIVISION.
000210 WORKING-STRAGE SECTION.
000220 77 LINE-COUNT PIC 9(2).
000230 77 PAGE-COUNT PIC 9(3).
000300 01 IN-RECORD.
000310    03 TOP-CUR  X(30).
000320    03 FILLER   X(3).
000330    03 NEXT-CUR X(20).
(C) データ部記述例

 データ部の全体を通した記述例は以下になります。

固定形式、可変形式によるデータ部記述例
000100 DATA DIVISION.
000210 FILE SECTION.
000220 FD INPUT-FILE-1 LABEL RECORDS ARE STANDARD.
000230 01 INPUT-FILE-RECORD.
000240    03 PHONE-NO PIC X(12).
000250    03 POST-NO  PIC X(7).
000300 WORKING-STORAGE SECTION.
000310 77 LINE-COUNT PIC 9(2).
000320 77 PAGE-COUNT PIC 9(3).
000330 01 IN-RECORD.
000340    03 TOP-CUR  X(30).
000350    03 FILLER   X(3).
000360    03 NEXT-CUR X(20).
000500 LINKAGE SECTION.
000600 REPORT SECTION.
000700 SCREEN SECTION.

次のページ
基本的なCOBOLの文法(3)~PROCEDURE DIVISION 1/2~

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
COBOLプログラミング連載記事一覧

もっと読む

この記事の著者

布施 榮一(ふせえいいち)

布施加工有限会社 代表取締役布施加工って何しているとこなの??実はIT屋さんだったりします(笑)Linux基盤各種サービスの設計構築およびコンサルティングをやっています。ブログもちょこちょこっと書いてます。Alinous-Core 正規販売代理店

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/2303 2008/06/25 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング