COBOL言語のデータ項目について理解しよう!|基礎ガイド

COBOL(コボル)言語のデータ種類や属性が定義できるデータ項目とは

基礎-データ項目-イメージ

COBOL(コボル)言語のデータ項目とは?

COBOL(コボル)言語のデータ項目は、「レベル番号、項目名、PICTURE句、USAGE句、VALUE句」で定義されます。

1.レベル番号

・レベル番号は、01:レコード(集団項目)、02~49:レコードに従属する項目(集団項目、基本項目)、66:RENAME句として定義する項目、77:独立項目、88:条件名項目を使用することができます。

2.項目名

・任意の30文字以下の文字列が使用できます。処理系によって日本語が記述できないものもあるため注意が必要です。

3.PICTURE句

・項類を決定します。

項類には「英文字項目:A、英数字項目:A、X、9、数字項目:9、P、S、V、日本語項目:N、日本語編集項目:N、B」があります。

4.USAGE句

・データ形式を定義します。レベル番号01~49、77のデータ項目に指定ができます。

特に指定がない場合は標準のデータ形式となります。その他指定できるものとしては、「PACKED-DECIMAL:内部10進形式(パック形式)、BINARY:2進形式」などを指定することができます。

5.VALUE句

・プログラム開始直後にデータ項目の初期化ができます。

文字定数を指定する際は、引用符で囲んで指定します。数字定数を指定する際は、引用符は不要です。日本語定数を指定する際は、引用符の前に「N」を指定します。(「N」を指定しなくても引用符のみで表現する処理系もあります)

では実際にこれらを使用したプログラムを作成してみましょう。

使用例:

基礎-データ項目プログラム1-使用例

実行結果:

基礎-データ項目プログラム1-実行結果

COBOL(コボル)言語のデータ項目における基本事項やルールについて

1.データ項目として定義する基本項目は、これ以上分解できないデータのことを指します。

2.データ項目として定義する集団項目は、基本項目をいくつか集めたデータのことを指します。

最上位にある集団項目をレコードと呼び、ファイルの入出力処理はレコード単位で行います。

3.集団項目は英数字、基本項目は英字、数字、英数字、日本語の指定ができます。

4.レベル番号は複数記述できることからインデントにより階層を分けて記述するとわかりやすくなります。

COBOL(コボル)言語のデータ項目における注意点

データ項目の定義はできるだけ標準に沿って記述するようにしましょう。例えば日本語定数は「N」を付加しなくても日本語と認識するコンパイラもありますが、必ずしもそうではありません。例えばCOBOL言語から別の言語に移植する場合にうまく別の言語に変換できない、変換しないといけない場所の特定が難しくなる場合がありますので使用の際は注意しましょう。

また、COBOL言語には第4次規格から追加された定義や桁数が見直された項目があります。例えば、ブーリアン型のデータや数字の最大桁数が31桁(通常18桁)になったことなどです。これらの規格の違いについても理解していきましょう。

データ項目を考えたCOBOL(コボル)プログラムの活用法

COBOL言語のデータ項目は先ほどご紹介した通り、レベル番号、基本項目名、3つの句で構成されていることが理解いただけたかと思います。ここではPICTURE句として定義できる、英字、数字、英数字、日本語について実際にデータ項目の定義を行ってみましょう。実際に定義することができたら、今度は他の句についてもさまざまな指定ができますので、ご自身で記述して実際の動きを確認してみましょう。

サンプルプログラム:

  1. DENTIFICATION DIVISION.
  2. PROGRAM-ID. COBOL_SAMPLE2.
  3. ENVIRONMENT DIVISION.
  4. DATA DIVISION.
  5. WORKING-STORAGE SECTION.
  6. 01 WK-SYUDAN.
  7.  05 EIJI PIC A(06) VALUE "ABCDE".
  8.  05 SUJI PIC 9(06) VALUE 12345.
  9.  05 EI-SUJI PIC X(06) VALUE "AB345".
  10.  05 NIHONGO PIC N(06) VALUE "日本語".
  11. PROCEDURE DIVISION.
  12.  DISPLAY EIJI.
  13.  DISPLAY SUJI.
  14.  DISPLAY EI-SUJI.
  15.  DISPLAY NIHONGO.
  16. STOP RUN.

実行結果:

基礎-データ項目プログラム2-実行結果1

今回はCOBOL言語のデータ項目についてご紹介しました。どのプログラム言語を学ぶ際にもまず初めに理解しておく必要がある内容になりますので、実際にプログラミングして覚えていきましょう。また、他のプログラミング言語を学ばれている方は、その言語と比較しながら違いについても理解してみましょう。

この記事を読んだ人は、こちらの記事も読んでいます

【未経験者歓迎】COBOLプログラマー・システムエンジニアの募集

株式会社COBOLの求人・転職・募集情報を見る

COBOL入門のカテゴリー

取引企業様 募集中
COBOL技術者 募集
COBOL魂
読者採用
COBOL入門