VLF-ONE システム IIP (例: DF_OSYSTM) に、RAMP セッションのより高度な制御ができる、以下の再定義可能なメソッドが加わりました。
avRAMP_StartSession |
セッション開始の直前に実行されます。これにより、セッションの開始に使用する aXes URL、ユーザー、パスワードを変更することができます。 |
avRAMP_ProcessAVSIGNALEVENT |
自分の RAMP スクリプトにより起動される AVSIGNALEVENT の信号を途中で受信する、より早く、簡素な新しい方法です。これは、状態の情報を RAMP スクリプトから RDMLX コードに送信する際の方法として推奨されています。 |
avRAMP_QueryCanClose |
RAMP セッションが、通常の VLF-ONE コマンド・ハンドラーのように a uQueryCanClose 要求に応答できるようにします。 |
avRAMP_QueryCanExecute |
RAMP セッションが、ある RAMP セッション要求の実行を許可するかどうかを制御します。 |
avRAMP_EndSession |
セッション終了直前に実行されます。主な役割として、セッションのインスタンス・マネージャのカスタム・オブジェクトへの参照を一掃します。 |
avRAMP_SHOW_CURRENT_FORM |
RAMP スクリプトがファンクション SHOW_CURRENT_FORM を実行する時に実行されます。 |
各メソッドにはパラメータ一式が渡され、関係するコマンド・ハンドラー、RAMP セッションのインスタンス・マネージャ、RAMP セッシヨンを識別できるようになります。
渡される セッション・インスタンス・マネージャ (クラス VF_SY120O) のオブジェクトには新しいプロパティ avRAMP_Reference が含まれており、これによりカスタム情報と RAMP セッション・インスタンスを関連付けることができます。
例 1 - ロックと「通常作業を外れていないか」を追跡
次のようなプロパティを含む Visual LANSA オブジェクト #MySessionInfo を作成したとしましょう。
avRAMP_StartSession で avRAMP_Reference を設定して、新しく作成されたオブジェクト #MySessionInfo を参照します。
avRAMP_EndSession で avRAMP_Reference を NULL 値にリセットして、もう必要のない #MySessionInfo オブジェクトを破棄します。
avRAMP_ProcessAVSIGNALEVENT で、自身の RAMP スクリプトの様々な場面における LOCK (ペイロードにロックのメッセージを伴う)、UNLOCK、UNKNOWNSCREEN の信号を監視します。
次に avRAMP_QueryCanClose および avRAMP_QueryCanExecute で、#SessionInfo.Locked、#SessionInfo.LockMessage、#SessionInfo.OnUnknownScreen を使って、RAMP セッションが置かれている状態によって、フレームワーク画面のナビゲーション要求を受け入れたり、拒否したりします。
例 2 - 5250 画面利用のヒートマップ
システムの IIP に画面名をキーとするトータルのコレクションを定義したとしましょう。このキー付きのコレクションを使って、RAMP のデスティネーション画面が何回訪問されたかをカウントします。
avRAMP_ProcessAVSIGNALEVENT で RAMP デスティネーション到達のスクリプトにより送信される信号 DESTINATION を監視します。
イベント・ペイロードで提供された画面名を使用して、画面利用コレクションを更新します。
さらに、IIP には DumpScreenStats という名前のプライベート・メソッドが含まれています。これはサーバーに画面利用コレクションの詳細を送信して、データベース・テーブルに格納します。これは後に画面利用のヒートマップ作成に使用されます。詳細の送付後、画面利用のコレクションは空にされます。
メソッド DumpScreenStats は IIP 内部のタイマーにより起動されて定期的に実行され、IIP 標準の avCloseMAINWindow からも実行されます。
例3 - aXes 起動に利用される URL に詳細を追加
次のように aXes 起動に利用される URL に &DEVICE=MYDEVICE を追加します。
ただし、EPC142005 ホットフィックスのレベル 1 以上のバージョンが必要なことに注意してください。