「5250 画面とはなにか?」という質問の答えは、主観的です。
この 5250 画面は...
次の 5250 画面と同じと言えるでしょうか?
外観的だけで言うと、「いいえ、違います。見たらわかるでしょう」となるかもしれません。
ただし、表示されている RPG プログラムの機能を理解すると、「これらの画面は同じ画面です」と答えることもできるでしょう。プログラム内で実際に 5250 画面を実際に表示しているのは一箇所のみのため、これらの画面は論理的には同じものでなければなりません。
画面の署名
RAMP-TS では、画面に表示されるレコード様式名に基づき、すべての画面に署名が割り当てられます。署名は RAMP ツールの使用時に確認できます。
さきほど紹介した 2 つのサンプル画面は異なる署名を持っています。これは、2 番目の画面には、サブファイルにより制御されたレコードとサブファイルのレコードが表示されているからです。つまり、RAMP-TS はこれらの画面を別の画面と考えます。
サブファイルに関係しない他の画面でも、同様に異なる署名を持つという状況が発生することがあります。
例えば、配達先の住所が郵送先住所と異なる場合のみ、受注詳細に住所の詳細 ADDINFO というレコード様式が表示されるとします。つまり、OrderDetails という名前の受注詳細画面には、実際は 2 つのバリエーションがある (2 つの異なる署名を持っている) ことを意味します。
このチュートリアルの重要なポイントは、5250 画面には異なる署名があること、およびこれらを使用して種々の状況を処理する方法を理解することです。
異なる署名で表示されている同じ画面を処理する
実際には同じ画面であるべき 2 つの画面に RAMP によって異なる署名が与えられた場合、両方の画面に同じ画面名を付けることで、これを容易に解決できます。
つまり、両方の画面バリエーションを処理する 1 つの画面スクリプトがあるということです。
異なる画面署名ごとにバリアント名を適用する場合もあります。この場合、ある画面スクリプトがどの画面を実際に処理しているかが分かるようになります。
この状況を処理する方法については「RAMP-WIN015 ステップ 1. 2 つの画面バリエーションに同じ名前を割り当てる」を参照してください。
同じ署名で表示されている異なる画面を処理する
異なる画面と見なしても同じ署名を持っている場合があります。
通常、これは IBM i システム・コマンド画面に当てはまります (すべて署名 QDUI132.USRRCD を持っています)。
画面の ID フィールドなどの追加の詳細を選択して、これらの画面を一意に識別することができます。例えば、画面のタイトルがあります。これを行うと、各画面に異なる画面名が割り当てられ、画面はそれ自体の一意の画面処理スクリプトを持ちます。
詳細は、「RAMP-WIN015 ステップ 2. 同じ署名を持つ異なる画面を処理する」を参照してください。
異なる画面をグループまたは一連の画面として処理する
一連の異なる画面全体がよく似た動作特性を持っていることがあります(コード・テーブル・メンテナンス・プログラムなど)。
各画面は異なる署名を持っていますが、すべてに同じ画面名を割り当てた場合、すべての画面を管理する1つの画面スクリプトを持つことができます。
1つの画面スクリプトで多数の異なる画面スクリプトを処理できるため、これは生産的です。
通常は、異なる画面ごとに別のバリアント名を割り当てます。これにより、1つの画面スクリプトでどの画面を実際に処理しているかを判断することができます。
詳細は、「RAMP-WIN015 ステップ 5. 画面のセットを作成する (上級)」を参照してください。


