クライアント-アイドル
システム・クライアント-アイドル・イベントは、実行中Oracle Formsアプリケーション内のクライアント層でエンドユーザーのアクティビティを監視します。このイベントは、2つの方法で有効にできます。このイベントを有効に1つの方法は、管理者がアプレット・パラメータidleTimeout
を整数に設定する方法です。これにより、このイベントを起動するまで待機する時間が秒単位で表されます。このアプレット・パラメータを使用するには、最初に適切なFormsテンプレートbase.htmファイルおよびformsweb.cfgに追加する必要があります。
また、このイベントは、SET_APPLICATION_PROPERTY
、CLIENT_IDLE_TIME
に追加された新しい引数を使用してプログラム的に有効/無効にすることもできます。アプレット・パラメータの場合と同様、CLIENT_IDLE_TIMEの値も整数の秒数で表されます。これをPL/SQLで使用する方法の詳細は、Form Builderのヘルプを参照してください。
次のような制限があります。
-
クライアント-アイドルは、クライアント・アプレットがサーバーからのレスポンスを待機している間、またはモード・ダイアログが開いている場合(「アラート」、「ファイルを開く」ダイアログなど)は無視されます。ただし、アイドル時間が経過する前にサーバーが即座に応答した場合、イベントが起動する可能性があります。このような状況はめったにありませんが、開発者はアプリケーションの開発時にこのことを考慮する必要があります。サーバーがタスクを完了するのにかかる時間が長くなることが想定されるときにこの状況を回避するには、アイドル時間をプログラム的に調整することが必要な場合があります。
FORMS_ON_MODAL_DETECT_IDLE
環境変数が1
(TRUE
)に設定されている場合、クライアント・アイドル・イベントを起動できます。TRUE
に設定すると、クライアント・アイドル・イベントはブロックされた条件が解放された直後に実行され、先に実行したトリガーで処理が完了します。これは、モーダルJavaダイアログを公開するカスタムJava Beans、またはネイティブFormsから発生していない他のブロックされた条件を公開するカスタムJava Beanには適用されません。 -
アイドル時間の長さは秒単位で設定しますが、サーバーとの次回の対話までアプリケーションが反応しない可能性があります。この原因は
Heartbeat
またはMaxEventWait
です。