PANEL-WORKER

1. パネル・グループとは?

同じようにメニューや画面を作っても、どこかしら OS/400のユーティリティーとユーザーが開発したPGM とでは、出面の動きが速いと感じたことはないだろうか?
これは遠隔地でのオンライン業務になるほど顕著であり、ユーザーPGM で作成した画面の切り替わりは遅くても OS/400の WRKOUTQWRKACTJOB はすばやくスマートに画面が切り替わる。
これは表示オブジェクトのアーキテクチャーが明らかに異なる結果である。
画面PGMをユーザーが作成するときはほとんどが DSPF で作成しているが、OS/400 のユーティリティーはそうではない。
OS/400のユーティリティーの大半は実は「パネル・グループ」と呼ばれるオブジェクトでできている。( *PNLGRP )
パネル・グループは元来は IBMの社内使用のためのものであったが、V2R2V3 からユーザーにも使用が開放されている。

パネル・グループとは HTML と同じようなタグ言語である。
:PNLGRP に始まり、:EPNLGRP で終わるというように一連のタグの組み合わせでできており、何行目の何桁目という指定ではなく HTML と同じようにシステムによる自動配列である。
例えば, ○ ○ ○ と3つの項目が並んでして、1つの○を除去してもバランスよく再配列される。
これによって微妙な配置の苦労から解放される。

パネル・グループのもうひとつの特徴はイベント駆動型の完全なオブジェクト指向であるということである。
イベント駆動(イベント・ドリブンとも言う)とはVisualBASIC などでも使う「ボタンを押したら何〜する。」という記述をすることである。
つまりユーザーの操作などの事象の発生を受ける関数などを記述する方法であるが、VisualBASIC、VisualC++、Java などのイベント駆動言語に比べて、パネル・グループは関数を呼び出すのではなく、オブジェクト(プログラム)を呼び出すことになる。
全くこれこそがオブジェクトの再利用ということになる。
例えば オプション=4 を入力すると、すべてのオプションの項目に 4 を入れるオブジェクト(PGM) を作ったとしよう。
そのオブジェクトはすべてのどのようなパネル・グループでもテストなしで使用することができる。

弊社製品のPANEL-WORKER はこれらのパネル・グループを自動生成して画面照会や入力/印刷/メニューなどの App を生成するツールである。
さてPANEL-WORKER のユーザーは別としてパネル・グループの使用が国内でそれほど普及していない原因は、パネル・グループの起動には API を使う必要があるからであると思われる。
しかしこの便利でスマートなパネル・グループはある程度の開発者であれば一度使ってみることをお勧めする。
これから示す具体的なサンプルから学習していけばパネル・グループは決して難しいものではない。
弊社製品EnterpriseServer のiSeries400側のインターフェースのすべてはパネル・グループでできている。