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

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

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

開発者は、ページ・プロセスの作成またはプリファレンス・アイテムの作成、あるいはPL/SQL APIを使用してプログラムを介して、アプリケーション内でユーザー・プリファレンスを設定できます。

2.11.1.1 ページ・プロセスを作成してユーザー・プリファレンスを設定

ページ・プロセスを作成してユーザー・プリファレンス値を設定します。

ページ・プロセスの作成によってユーザー・プリファレンスを設定するには:

  1. ページ・デザイナでページを表示して、「プロセス」タブをクリックします。
  2. 「プロセス」で、右クリックして「プロセスの作成」を選択します。
    プロセス属性がプロパティ・エディタに表示されます。
  3. 「指定」で、次の項目を指定します。
    1. 名前 - プロセスの名前を入力します。
    1. タイプ - 「ユーザー・プリファレンス」を選択します。
  4. 「設定」、「タイプ」 - 「プリファレンスをリセット(現行のユーザーのすべてのプリファレンスを削除)」を選択します。
  5. 「実行オプション」で、次の項目を指定します。
    1. 順序: このコンポーネントの順序を指定します。これによって実行の順序が決まります。
    2. ポイント - プロセスを実行するポイントを選択します。
  6. その他の属性を確認して入力します。

    ヒント:

    属性の詳細は、プロパティ・エディタで属性を選択し、中央ペインで「ヘルプ」タブをクリックして、参照してください。

  7. 「保存」をクリックします。

参照:

Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド"ページ・プロセスの作成

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

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

ユーザー・プリファレンスに基づいてアイテムのソースを定義するには:

  1. ページ・デザイナでページを表示します。
  2. 「レンダリング」タブをクリックします。
  3. アイテムを含むリージョンを見つけて、右クリックして「ページ・アイテムの作成」を選択します。
    アイテム属性がプロパティ・エディタに表示されます。

    ノート:

    属性の詳細は、属性を選択して、中央ペインで「ヘルプ」タブをクリックします。

  4. 「指定」で、次の項目を指定します。
    1. 名前 - アイテムの名前を入力します。
    1. タイプ - 「非表示」を選択します。
  5. 「設定」、「保護された値」 - アイテムを保護し、ページがポストされたときに値を操作できないようにするかどうかを指定します。「はい」を選択します。
  6. 「レイアウト」で、次の項目を指定します。
    1. 順序 - このアイテムの表示順序を入力します。順序および他のレイアウト設定によって、リージョン内の他のアイテムに対して相対的に、このアイテムの表示位置が決定されます。
    1. リージョン - アイテムを表示するリージョンを選択します。すべてのアイテムをリージョンで指定する必要があります。
  7. 「ソース」で、次のようにします。
    1. タイプ - このアイテムの値が基づいているソース・タイプを選択します。
    2. 使用 - 優先する値を選択します(セッション・ステートからの値またはアイテム・ソース値)。
  8. 「デフォルト」、「タイプ」 - このアイテムのデフォルト値のタイプを選択します。
  9. 「保存」をクリックします。

2.11.1.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プロシージャ

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

「ユーザー別のプリファレンス」ページで、ユーザー別のユーザー・プリファレンスを表示します。

ユーザー別のプリファレンスを表示するには:

  1. 「ワークスペース管理」ページにナビゲートします。
    1. Oracle Application Expressにサインインします。
    2. 「ワークスペース」ホームページ上部で、「管理」メニューをクリックし、「管理」をクリックします。

    「ワークスペース管理」ページが表示されます。

  2. 管理ページで、「サービスの管理」をクリックします。
  3. 「メタデータの管理」で、「セッション・ステート」をクリックします。
  4. 「ユーザー別のプリファレンス」をクリックします。

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

  5. ページの外観は、ページ上部にある検索バーを使用してカスタマイズできます。

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

現行のユーザーのプリファレンスを表示します。

カレント・ユーザー・プリファレンスを表示するには:

  1. 「ワークスペース管理」ページにナビゲートします。
    1. Oracle Application Expressにサインインします。
    2. 「ワークスペース」ホームページ上部で、「管理」メニューをクリックし、「管理」をクリックします。

    「ワークスペース管理」ページが表示されます。

  2. 管理ページで、「サービスの管理」をクリックします。
  3. 「メタデータの管理」で、「セッション・ステート」をクリックします。
  4. 「現行のユーザー・プリファレンス」をクリックします。

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

    ページの外観は、ページ上部にある検索バーを使用してカスタマイズできます。

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

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

特定のユーザーのユーザー・プリファレンスを消去するには:

  1. 「ワークスペース管理」ページにナビゲートします。
    1. Oracle Application Expressにサインインします。
    2. 「ワークスペース」ホームページ上部で、「管理」メニューをクリックし、「管理」をクリックします。

    「ワークスペース管理」ページが表示されます。

  2. 管理ページで、「サービスの管理」をクリックします。
  3. 「メタデータの管理」で、「セッション・ステート」をクリックします。
  4. 「ユーザー別にプリファレンスを消去」をクリックします。
  5. 「プリファレンスのパージ」ページで、特定のユーザーを選択して「レポート」をクリックします。

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

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

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

「現行のユーザー・プリファレンス」ページで現行のユーザーのプリファレンスを消去します。

カレント・ユーザーのプリファレンスを消去するには:

  1. 「ワークスペース管理」ページにナビゲートします。
    1. Oracle Application Expressにサインインします。
    2. 「ワークスペース」ホームページ上部で、「管理」メニューをクリックし、「管理」をクリックします。

    「ワークスペース管理」ページが表示されます。

  2. 管理ページで、「サービスの管理」をクリックします。
  3. 「メタデータの管理」で、「セッション・ステート」をクリックします。
  4. 「現行ユーザーのプリファレンスの消去」をクリックします。
  5. 「プリファレンスの表示」または「プリファレンスをリセット」をクリックします。
  6. 「プリファレンスの表示」を選択した場合、「現行のユーザー・プリファレンス」ページが表示されます。ユーザー・プリファレンスをリセットするには、「リセット」をクリックします。

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

PL/SQL APIを使用して、ユーザー・プリファレンスをプログラムによって削除します。

ユーザー・プリファレンスをプログラムによって削除するには、REMOVE_PREFERENCEプロシージャを使用して、NAMED_PREFERENCEというユーザー・レベルのプリファレンスを削除します。次に例を示します。

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

参照:

『Oracle Application Express APIリファレンス』のREMOVE_PREFERENCEに関する説明

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

ページ・プロセスを作成してユーザー・プリファレンスをリセットします。

ページ・プロセスを使用してユーザー・プリファレンスをリセットするには:

  1. ページ・デザイナでページを表示して、「プロセス」タブをクリックします。
  2. 「プロセス」で、右クリックして「プロセスの作成」を選択します。
    プロセス属性がプロパティ・エディタに表示されます。

    ヒント:

    属性の詳細は、プロパティ・エディタで属性を選択し、中央ペインで「ヘルプ」タブをクリックして、参照してください。

  3. 「指定」で、次の項目を指定します。
    1. 名前 - プロセスの名前を入力します。
    1. タイプ - 「セッション・ステートのクリア」を選択します。
  4. 「設定」の「タイプ」で、「現在のセッションのクリア」を選択します。
  5. 「実行オプション」で、次の項目を指定します。
    1. 順序: このコンポーネントの順序を指定します。これによって実行の順序が決まります。
    2. ポイント - プロセスを実行するポイントを選択します。
    3. プロセスの実行 - プロセスを実行する頻度を選択します。
  6. その他の属性を確認して入力します。
  7. 「保存」をクリックします。

参照:

Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド"ページ・プロセスの作成