第6章 テーブルとレポート COBOLテーブルとレポート
この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com
ビジネスの世界では、Microsoft Excelは最も広く使われているアプリケーションのひとつである。 重要な意思決定に役立つインタラクティブなレポートを簡単に作成できる。 その結果、エクセルは35年以上の歴史があるにもかかわらず、莫大なキャッシュフローを生み出し続けている。
しかし、メインフレームのCOBOLでは、組み込み機能が表やレポートの作成に役立つ。 もちろん、Excelほど洗練されていないし、シームレスでもない。 しかし、それでも強力であり、ミッション・クリティカルなビジネス・アプリケーションをグローバルに実行するのに役立つ。 これらは、COBOLとメインフレームコンピュータの最も重要な関数の1つである。
この章では、COBOLでのテーブルとレポートの使い方を見ていく。 また、文字列操作などの関連する話題も取り上げる。
テーブル入門
ある意味で、COBOLテーブルはスプレッドシートに似ている。 特定の領域に数字を配置したり、計算を行ったり、データを検索したりすることができる。 実際、アプリケーションは無限にあると思われる。 税金を計算したり、保険料を決めたり、売上予測をするためにテーブルをセットすることができる。
COBOLの表は、言語版の配列であることに留意すること。 一般的な言語では、配列は文字列データをストアする。 そして、各データ項目はインデックス番号で参照される。 例えば、Months と呼ぶ、その年の月を表す配列があるとする。 Months[0] は1月、Months [1] は2月といった具合だ。 言い換えれば、Month1やMonth2のように、それぞれにユニークな変数を持つのではなく、これは関連するデータを扱うための、より効率的な方法である。
しかし、COBOLには独自のアプローチがある。次に、レコードは階層的な情報をグループ化するものであるため、テーブルを使用する際にはこれを強制しなければならず、複雑になる可能性がある。
DATA DIVISION のWORKING-STORAGE SECTION でテーブルを宣言し、OCCURS 節を使う。 これは要素の数を示す。
ある小売企業の10店舗分のテーブルを作成したいとしよう。 こうするのだ:
01RETAIL-STORE-TABLE.05RETAIL-RECORDOCCURS10TIMES.10STORE-ADDRESSPIC X(20).10STORE-PHONEPIC X(12).
RETAIL-STORE-TABLE というテーブルのヘッダを設定し、RETAIL-RECORD というデータグループを作成する。 OCCURS 10 TIMES 、そのインスタンスを10個作成する。 それぞれに店の住所と電話番号のフィールドがある。
このテーブルは1レベルテーブルと呼ばれている。レコードは、小売店の数という1つの変数に依存している。
ほとんどの場合、テーブルのデータは外部ファイルから入力される。 しかし、データが比較的小さく、あまり変化しない場合は、DATA DIVISION またはPROCEDURE DIVISION に値 を置くことができる。
ナイキのシューズの売れ筋リストを例にとってみよう:
01NIKE-SHOES.05FILLER ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access