ヘッダーをスキップ
Oracle® Application Express管理ガイド
リリース4.2 for Oracle Database 12c
B71342-01
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

1.10 セッション・ステートおよびユーザー・プリファレンスの管理

セッションは、ページ・ビュー間で永続性(またはステートフルな動作)を確立する論理的な構成体です。各セッションには、一意のIDが割り当てられ、Application Expressエンジンは、このセッションIDを使用して、各ページ・ビューの前後に、アプリケーションで作業中のデータ・セット(セッション・ステート)を格納および取得します。セッションは、削除されるまでデータベース内に存在します。

内容は次のとおりです。


参照:

『Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド』の「セッション・ステートの管理」および「セッション・ステートの管理」

1.10.1 セッション・ステートの管理

セッションはページ・ビュー間で永続性(またはステートフルな動作)を確立します。カレント・セッションまたは最近のセッションに関する詳細を確認できます。カレント・セッション・ステートを消去、または経過時間に基づいてセッションを消去することもできます。

内容は次のとおりです。


参照:

Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイドの「セッションの概要」

1.10.1.1 セッションの詳細確認後のセッション・ステートの削除

セッションの詳細を確認した後に既存のセッションを削除するかどうかを決定できます。「セッションの詳細」ページから、セッション・レコードまたはセッション・ステートを削除できます。

セッションの詳細を表示し、セッション・ステートを削除するには、次の手順を実行します。

  1. Oracle Application Expressへログインします。詳細は、『Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド』のOracle Application Expressへのログインに関する説明を参照してください。

    ワークスペースのホームページが表示されます。

  2. 「管理」アイコンをクリックします。

  3. 管理ページで、「サービスの管理」をクリックします。

  4. 「メタデータの管理」で、「セッション・ステート」をクリックします。

  5. 「最近のセッション(ドリルダウンで詳細を表示)」をクリックします。

  6. ページの外観は、ページ上部にある検索バーを使用してカスタマイズできます。『Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド』の対話モード・レポートのカスタマイズに関するセクションを参照してください。

  7. セッションの詳細を表示するには、セッションIDを選択します。

    セッションの詳細ページが表示されます。

  8. 次のいずれかのボタンをクリックします。

    • ステートの削除: セッション・ステート表(コレクション・データを含む)からセッション・データをクリアしますが、セッション・レコードは削除しません。デバッグ中に開発者がセッションを削除するのは適切な対応です。

      これは、f?p URLでClear Cache引数値SESSIONを使用してカレント・セッションのセッション・ステートをクリアすることに相当します。このオプションは、開発者がデバッグ中に使用することもできます。

    • セッションの削除: セッションに関連付けられた(コレクション・データを含む)セッション・ステートとともにセッションのレコードをSESSIONS表から削除します。

      削除されたセッションを使用しているユーザーは、そのセッションを使用できなくなり、(ほとんどの場合)次のページ・リクエストで再認証を求められます。このオプションは、管理者が特定のユーザーをOracle Application Expressアプリケーションにアクセスできないようにする必要がある場合に使用できます。


参照:

Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイドの「アプリケーションのデバッグ」

1.10.1.2 カレント・セッションのセッション・ステートの表示

現在または最近のセッションに関するセッション・ステートを表示するには、次の手順を実行します。

  1. Oracle Application Expressへログインします。詳細は、『Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド』のOracle Application Expressへのログインに関する説明を参照してください。

    ワークスペースのホームページが表示されます。

  2. 「管理」アイコンをクリックします。

  3. 管理ページで、「サービスの管理」をクリックします。

  4. 「メタデータの管理」で、「セッション・ステート」をクリックします。

  5. 「現行セッションのセッション・ステートのレポート」をクリックします。

  6. ページの外観は、ページ上部にある検索バーを使用してカスタマイズできます。『Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド』の対話モード・レポートのカスタマイズに関するセクションを参照してください。

1.10.1.3 経過時間によるセッションの消去

経過時間別に既存のセッションを消去するには、次の手順を実行します。

  1. Oracle Application Expressへログインします。詳細は、『Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド』のOracle Application Expressへのログインに関する説明を参照してください。

    ワークスペースのホームページが表示されます。

  2. 「管理」アイコンをクリックします。

  3. 管理ページで、「サービスの管理」をクリックします。

  4. 「メタデータの管理」で、「セッション・ステート」をクリックします。

  5. 「経過時間別にセッションを消去」をクリックします。

  6. 「セッション」からリストより古いものを選択します。

  7. 次のいずれかのボタンをクリックします。

    • セッションの消去: 選択した経過時間別に既存のセッションを消去します。

    • セッションをレポート: ワークスペースのセッションの合計数、ユーザー数および古いセッション数の詳細が記載されているレポートを生成します。


参照:

Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイドの「セッション・ステートの表示」

1.10.1.4 カレント・セッションのセッション・ステートの消去

カレント・セッションのセッション・ステートを消去するには、次の手順を実行します。

  1. Oracle Application Expressへログインします。詳細は、『Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド』のOracle Application Expressへのログインに関する説明を参照してください。

    ワークスペースのホームページが表示されます。

  2. 「管理」アイコンをクリックします。

  3. 管理ページで、「サービスの管理」をクリックします。

  4. 「メタデータの管理」で、「セッション・ステート」をクリックします。

  5. 「現行セッションのセッション・ステートの消去」をクリックします。

  6. 次のいずれかのボタンをクリックします。

    • セッション・ステートの表示: カレント・セッションに関する情報を表示します。

    • セッション・ステートの消去: カレント・セッションのセッション・ステートをリセットします。

1.10.2 ユーザー・プリファレンスの管理

プリファレンスを使用すると、特定のApplication Expressユーザーの値を異なるセッションにわたって格納できます。これらのプリファレンスは、設定後、プログラムによって、または手動で削除できます。ユーザー・プリファレンスは、ページ・プロセスの作成またはプリファレンスのアイテム・ソース値の計算によって、あるいはPL/SQL APIを使用してプログラムによって設定できます。

内容は次のとおりです。

1.10.2.1 ユーザー別のプリファレンスの表示

ユーザー別のプリファレンスを表示するには、次の手順を実行します。

  1. Oracle Application Expressへログインします。詳細は、『Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド』のOracle Application Expressへのログインに関する説明を参照してください。

    ワークスペースのホームページが表示されます。

  2. 「管理」アイコンをクリックします。

  3. 管理ページで、「サービスの管理」をクリックします。

  4. 「メタデータの管理」で、「セッション・ステート」をクリックします。

  5. 「ユーザー別のプリファレンス」をクリックします。

    ユーザー別のプリファレンス・ページが表示されます。

  6. ページの外観は、ページ上部にある検索バーを使用してカスタマイズできます。『Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド』の対話モード・レポートのカスタマイズに関するセクションを参照してください。

1.10.2.2 カレント・ユーザー・プリファレンスの表示

カレント・ユーザー・プリファレンスを表示するには、次の手順を実行します。

  1. Oracle Application Expressへログインします。詳細は、『Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド』のOracle Application Expressへのログインに関する説明を参照してください。

    ワークスペースのホームページが表示されます。

  2. 「管理」アイコンをクリックします。

  3. 管理ページで、「サービスの管理」をクリックします。

  4. 「メタデータの管理」で、「セッション・ステート」をクリックします。

  5. 「現行のユーザー・プリファレンスのレポート」をクリックします。

    現行のユーザー・プリファレンス・ページが表示されます。

  6. ページの外観は、ページ上部にある検索バーを使用してカスタマイズできます。『Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド』の対話モード・レポートのカスタマイズに関するセクションを参照してください。

1.10.2.3 特定のユーザーのユーザー・プリファレンスの消去

プリファレンスの消去ページで特定のユーザーのプリファレンスを消去します。

特定のユーザーのユーザー・プリファレンスを消去するには、次の手順を実行します。

  1. 該当するページ定義にナビゲートします。Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイドの「ページ定義へのアクセス」を参照してください。

  2. 「管理」アイコンをクリックします。

  3. 管理ページで、「サービスの管理」をクリックします。

  4. 「メタデータの管理」で、「セッション・ステート」をクリックします。

  5. 「ユーザー別にプリファレンスを消去」をクリックします。

    プリファレンスの消去ページが表示されます。

  6. 特定のユーザーを選択して、「レポート」をクリックします。

    レポートがページの下部に表示されます。

  7. 表示されているユーザー・プリファレンスを消去するには、「ユーザー・プリファレンスの消去」をクリックします。

1.10.2.4 カレント・ユーザー・プリファレンスの消去

カレント・ユーザーのプリファレンスを消去するには、次の手順を実行します。

  1. Oracle Application Expressへログインします。詳細は、『Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド』のOracle Application Expressへのログインに関する説明を参照してください。

    ワークスペースのホームページが表示されます。

  2. 「管理」アイコンをクリックします。

  3. 管理ページで、「サービスの管理」をクリックします。

  4. 「メタデータの管理」で、「セッション・ステート」をクリックします。

  5. 「現行ユーザーのプリファレンスの消去」をクリックします。

    プリファレンスの消去ページが表示されます。

  6. ユーザーを選択して、「レポート」をクリックします。

  7. プリファレンスを消去するには、「ユーザー・プリファレンスの消去」をクリックします。

1.10.2.5 ユーザー・プリファレンスの設定

ユーザー・プリファレンスは、ページ・プロセスの作成またはプリファレンス・アイテムの作成によって、あるいはプログラムを介してアプリケーション内に設定できます。

内容は次のとおりです。

1.10.2.5.1 ページ・プロセスを使用したユーザー・プリファレンスの設定

ページ・プロセスの作成によってユーザー・プリファレンスを設定するには、次の手順を実行します。

  1. 該当するページ定義にナビゲートします。Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイドの「ページ定義へのアクセス」を参照してください。

  2. 「ページ・プロセスの作成」ウィザードにアクセスします。

    • ツリー・ビューの場合: 適切なイベントの下にある「プロセス」を見つけます。右クリックして、「作成」を選択します。

    • コンポーネント・ビューの場合: 「プロセス」の下にある「作成」アイコンをクリックします。

  3. プロセス・カテゴリで、「セッション・ステート」を選択し、「次へ」をクリックします。

  4. プロセス・タイプで、「プリファレンスをリセット(現行のユーザーのすべてのプリファレンスを削除)」を選択し、「次へ」をクリックします。

  5. 名前、順序およびプロセス・ポイントを指定して、「次へ」をクリックします。

  6. 画面に表示される手順に従い、「プロセスの作成」をクリックします。

1.10.2.5.2 ユーザー・プリファレンスに基づいたアイテムのソースの設定

アイテム・ソース・タイプをプリファレンスとして定義することによって、ユーザー・プリファレンスに基づいてアイテムのソースを設定できます。

ユーザー・プリファレンスに基づいてアイテムのソースを定義するには、次の手順を実行します。

  1. 該当するページ定義にナビゲートします。Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイドの「ページ定義へのアクセス」を参照してください。

  2. 「ページ・アイテムの作成」ウィザードにアクセスします。

    • ツリー・ビューの場合: 「ページ・レンダリング」で「リージョン」を展開し、「アイテム」を右クリックして「ページ・アイテムの作成」を選択します。

    • コンポーネント・ビューの場合: 「アイテム」の下にある「作成」アイコンをクリックします。

  3. アイテム・タイプで、「非表示」を選択して、「次へ」をクリックします。

  4. 「非表示のアイテム・タイプ」で、次のいずれかを選択して、「次へ」をクリックします。

    • 非表示: 非表示のアイテムはHTMLフォームで公開されますが、表示されません。

    • 非表示で保護: 非表示の保護されたアイテムもHTMLフォームで公開されますが、表示されません。ただし、ページのポスト時に値を変更できません。

  5. アイテム名、順序およびリージョンを指定して、「次へ」をクリックします。

  6. ソースで、プリファレンスのソース・タイプを選択して適切なソース値を入力し、「次へ」をクリックします。アイテム・ソースがnullであると、デフォルト値が使用されます。

    特定のフィールドの詳細は、アイテムのヘルプを参照してください。

  7. 「アイテムの作成」をクリックします。

1.10.2.5.3 プログラムでのユーザー・プリファレンスの設定

ユーザー・プリファレンスをプログラム的に設定または参照するには、PL/SQL APIを使用する必要があります。ユーザー・レベルのキャッシュが、プログラムを介して使用できます。ユーザー・レベルのプリファレンスNAMED_PREFERENCEを設定するには、SET_PREFERENCEプロシージャを使用します。次に例を示します。

APEX_UTIL.SET_PREFERENCE(
 p_preference=>'NAMED_PREFERENCE',
 p_value =>:ITEM_NAME);

ユーザー・プリファレンスの値を参照するには、GET_PREFERENCEファンクションを使用します。次に例を示します。

NVL(APEX_UTIL.GET_PREFERENCE('NAMED_PREFERENCE'),15)

前述の例では、プリファレンスに値が含まれていない場合、このプリファレンスの値はデフォルトの15になります。


参照:

『Oracle Application Express APIリファレンス』のGET_PREFERENCEファンクションおよびSET_PREFERENCEプロシージャに関する説明

1.10.2.6 プログラムでのユーザー・プリファレンスの削除

ユーザー・プリファレンスをプログラムによって削除するには、PL/SQL APIを使用する必要があります。ユーザー・レベルのプリファレンスNAMED_PREFERENCEを削除するには、REMOVE_PREFERENCEプロシージャを使用します。次に例を示します。

APEX_UTIL.REMOVE_PREFERENCE(
p_preference=>'NAMED_PREFERENCE');

1.10.2.7 ページ・プロセスを使用したユーザー・プリファレンスのリセット

ユーザー・プリファレンスをリセットするには、ページ・プロセスを作成し、プロセス・タイプの「プリファレンスをリセット」を選択します。

ページ・プロセスを使用してユーザー・プリファレンスをリセットするには、次の手順を実行します。

  1. 該当するページ定義にナビゲートします。Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイドの「ページ定義へのアクセス」を参照してください。

  2. 「ページ・プロセスの作成」ウィザードにアクセスします。

    1. ツリー・ビューの場合: 適切なイベントの下にある「プロセス」を見つけます。右クリックして、「プロセスの作成」を選択します。

    2. コンポーネント・ビューの場合: 「プロセス」の下にある「作成」アイコンをクリックします。

  3. プロセス・カテゴリで、「セッション・ステート」を選択し、「次へ」をクリックします。

  4. プロセス・タイプで、「プリファレンスをリセット(現行のユーザーのすべてのプリファレンスを削除)」を選択し、「次へ」をクリックします。

  5. 名前、順序およびプロセス・ポイントを指定して、「次へ」をクリックします。

  6. 画面に表示される手順に従います。

  7. 「プロセスの作成」をクリックします。