COBOLのデータ構造

COBOLのデータ構造について記載します。

ポイントは2つです。

1. 各データを階層構造で定義(レベル番号)
2. データ項目の構成(レコード、集団項目、基本項目)

1.階層構造で定義

データは階層構造で定義します。

レベル番号

データ項目の階層や従属関係を表すための番号です。
一般的には01~49の範囲で2ずつ繰り上げて割り当てる。(例:01, 03, 05,,,)
最上位のレベル番号01は、最上位の集団項目(=レコード)に割り当てる。

特殊なレベル番号は66, 77, 88。77は独立したデータ項目で、他はしばらく使用しそうもないので理解を飛ばす。

データ項目名

使用可能な文字
・半角英数字
・ハイフン(先頭文字には使用できない)
・アンダースコア(先頭文字には使用できない)
・日本語

文字数は30文字以内

特殊な項目名「FILLER」

無名の項目。
項目名を省略するときに使用する。
予備や調整用の領域に使われるケースが多い。

2.データ項目の構成

集団項目、基本項目を総称してデータ項目と呼びます。データ項目はレコード、集団項目、基本項目からなります。

レコード

01から始まるデータ項目をレコードといいます。レコードは型の定義によらず英数字型として扱います。レコードに含まれるデータ項目が数字型であってもレコードを扱う際には英数字型として扱うので注意が必要です。

集団項目

集団項目や基本項目が複数集まって成り立っている項目。
集団項目の中に集団項目を持つことも出来るのがポイント。
最上位の集団項目をレコードと呼ぶ。

基本項目

最小単位のデータ要素。