3.10.4 組込み置換文字列の使用

アプリケーション・ビルダーで使用可能な組込み置換文字列について説明します。

アプリケーション・ビルダーでは、多くの組込み置換文字列がサポートされています。これらの置換文字列を参照して、特定のタイプの機能を実現できます。

ヒント:

バインド変数:USERはデータベース内で特別な意味を持つことに注意してください。また、直接PL/SQLという用語は、プロシージャおよびファンクションなどのストアド・データベース・オブジェクトで使用可能なPL/SQLを表します。

3.10.4.1 APEX_CSP_DISPLAY_NONE

コンテンツ・セキュリティ・ポリシー(CSP)のガイドラインでは、インラインCSSの使用または直接インラインCSSが禁止されています。APEX_CSP_DISPLAY_NONE置換文字列によって、Oracle APEXが、一元管理された置換文字列を使用して安全なCSSインライン例外のみをレンダリングすることが確実になります。

APEX_CSP_DISPLAY_NONE置換文字列を使用して、次のインラインCSSをレンダリングします:

style=display:none;

APEX_CSP_DISPLAY_NONEを参照するためにサポートされている構文:

 #APEX_CSP_DISPLAY_NONE#

APEX_CSP_DISPLAY_NONEの例

次の例は、「ユニバーサル・テーマ」リージョン・テンプレート、「インライン」ダイアログでのAPEX_CSP_DISPLAY_NONEの使用を示しています。

<div id="#REGION_STATIC_ID#_parent">
<div id="#REGION_STATIC_ID#" class="t-DialogRegion #REGION_CSS_CLASSES# js-regionDialog" #REGION_LANDMARK_ATTRIBUTES# #REGION_ATTRIBUTES# #APEX_CSP_DISPLAY_NONE# title="#TITLE!ATTR#">
  <div class="t-DialogRegion-wrap">
    <div class="t-DialogRegion-bodyWrapperOut"><div class="t-DialogRegion-bodyWrapperIn"><div class="t-DialogRegion-body">#BODY##SUB_REGIONS#</div></div></div>
    <div class="t-DialogRegion-buttons">
       <div class="t-ButtonRegion t-ButtonRegion--dialogRegion">
         <div class="t-ButtonRegion-wrap">
           <div class="t-ButtonRegion-col t-ButtonRegion-col--left"><div class="t-ButtonRegion-buttons">#PREVIOUS##DELETE##CLOSE#</div></div>
           <div class="t-ButtonRegion-col t-ButtonRegion-col--right"><div class="t-ButtonRegion-buttons">#EDIT##CREATE##NEXT#</div></div>
         </div>
       </div>
    </div>
  </div>
</div>
</div> 

3.10.4.2 APEX_FILES

ノート:

IMAGE_PREFIXの名前がAPEX_FILESに変更されました。レガシー名IMAGE_PREFIXは引き続きサポートされていますが、Oracleでは新しい名前を使用することをお薦めします。

APEX_FILESの値によって、Oracle APEXで配布されるイメージ・ディレクトリを指し示すためにWebサーバーが使用する仮想パスが決まります。アップロードされたイメージを参照するには、WORKSPACE_FILESおよびAPP_FILESを使用します。

参照タイプ 構文
バインド変数 :APEX_FILES
直接PL/SQL

ノート: 直接PL/SQLは例外です。この例では、G_IMAGE_PREFIXを使用します。

APEX_APPLICATION.G_IMAGE_PREFIX

PL/SQL V('APEX_FILES')
置換文字列 &APEX_FILES.
テンプレート置換 #APEX_FILES#

3.10.4.3 APEX$ROW_NUM

APEX$ROW_NUMは、送信された表形式フォーム・データの現在処理されている行番号を参照します。このプレースホルダは、表形式フォームに関連付けられた検証、プロセスおよび条件内で使用して、現在処理されている表形式フォーム行の行番号を参照できます。

参照タイプ 構文

バインド変数

:APEX$ROW_NUM

PL/SQL

V('APEX$ROW_NUM')

置換文字列

&APEX$ROW_NUM.

3.10.4.4 APEX$ROW_SELECTOR

APEX$ROW_SELECTORは、表形式フォームに関連付けられた検証、プロセスおよび条件内で使用して、表形式フォーム内の行セレクタ・チェック・ボックスを参照します。このプレースホルダでは、現在処理されている表形式フォーム行の表形式フォーム行セレクタ・チェック・ボックスが選択されている場合にXが返され、選択が解除されている場合にはNULLが返されます。

参照タイプ 構文

バインド変数

:APEX$ROW_SELECTOR

PL/SQL

V('APEX$ROW_SELECTOR')

置換文字列

&APEX$ROW_SELECTOR.

3.10.4.5 APEX$ROW_STATUS

APEX$STATUSは、表形式フォームに関連付けられた検証、プロセスおよび条件内で使用して、表形式フォーム内の行ステータスを参照します。このプレースホルダでは、現在処理されている表形式フォーム行が作成された場合はC、更新された場合はU、削除された場合はDというステータスが戻されます。

参照タイプ 構文

バインド変数

:APEX$ROW_STATUS

PL/SQL

V('APEX$ROW_STATUS')

置換文字列

&APEX$ROW_STATUS.

3.10.4.6 APP_ID

APP_IDは、現在実行されているアプリケーションのアプリケーションIDを示します。

参照タイプ 構文
バインド変数 :APP_ID
直接PL/SQL APEX_APPLICATION.G_FLOW_ID (A NUMBER)
PL/SQL NV('APP_ID')
置換文字列 &APP_ID.
SYS_CONTEXT変数 SYS_CONTEXT('APEX$SESSION', 'APP_ID')

置換文字列の参照の例

次に、置換文字列の参照の例を示します。

f?p=&APP_ID.:40:&APP_SESSION.

SYS_CONTEXT変数の例

次に、SYS_CONTEXT変数の例を示します。

SELECT ... WHERE application_id = SYS_CONTEXT('APEX$SESSION', 'APP_ID')

APEXでは、着信リクエストの処理を開始するとき、APEX$SESSIONコンテキストを設定します。たとえば、'APP_ID'の値を使用して、問合せおよび表データを保護するVPD (仮想プライベート・データベース)セキュリティ・ポリシーでカレント・アプリケーションIDにアクセスできます。

3.10.4.7 APP_ALIAS

APP_ALIASは、カレント・アプリケーションの英数字の名前です。APP_ALIASは、APP_IDが1つのデータベースでホスティングされているすべてのワークスペースおよびすべてのアプリケーションで一意である必要があるという点で、APP_IDと異なります。APP_ALIASは、ワークスペース内で一意である必要があります。たとえば、1つのAPP_ALIASを使用して2つの異なるワークスペースにABCというアプリケーションを作成することができます。APP_ALIASは、APP_IDを使用できる場所であればほぼすべての場合に使用できます。たとえば、次の例に示すように、f?p構文にAPP_ALIASまたはアプリケーションIDを使用できます。

f?p=ABC:1:&APP_SESSION.

この例では、アプリケーションABCのページ1が、カレント・セッションを使用して実行されます。

参照タイプ 構文

バインド変数

:APP_ALIAS

PL/SQL

V('APP_ALIAS')

置換文字列

&APP_ALIAS.

次に、HTMLの例を示します。

Click me to go to page 1 <a href="f?p=&APP_ALIAS.:1:&APP_SESSION."> of the current application</a>

3.10.4.8 APP_AJAX_X01, ... APP_AJAX_X10

APP_AJAX_Xnnは、showモジュールまたはacceptモジュール内で最も最近に渡されたか、または設定されたAPP_AJAX_X01, ... APP_AJAX_X10 URLパラメータを指定します。通常、これらの変数は「On Demand AJAX」プロセスで使用します。

参照タイプ 構文
バインド変数 ... :APP_AJAX_X01, ... :APP_AJAX_X10
PL/SQL ... v('APP_AJAX_X01'), ... v('APP_AJAX_X10')
置換文字列 ... &APP_AJAX_X01., ... &APP_AJAX_X10.

関連項目:

『Oracle APEX APIリファレンス』「APEX_APPLICATION」に記載されているG_X01、... G_X10変数

3.10.4.9 APP_BUILDER_SESSION

ユーザーが開発者としてもワークスペースにログインしている場合、APP_BUILDER_SESSIONには開発環境の現在のセッションIDが含まれています。そうでない場合、APP_BUILDER_SESSIONはnullです。

参照タイプ 構文

バインド変数

:APP_BUILDER_SESSION

PL/SQL

V('APP_BUILDER_SESSION')

置換文字列

&APP_BUILDER_SESSION.

3.10.4.10 APP_DATE_TIME_FORMAT

APP_DATE_TIME_FORMATは、アプリケーションの「アプリケーションの日時書式」です。この値には、アプリケーションの「グローバリゼーション」設定の「アプリケーションの日時書式」属性で指定された書式が反映されます。アプリケーションで「アプリケーションの日時書式」が設定されていない場合、APP_DATE_TIME_FORMATへの参照はデータベース・セッションのNLS日付書式とNLS時刻書式を返します。

参照タイプ 構文

バインド変数

:APP_DATE_TIME_FORMAT

PL/SQL

V('APP_DATE_TIME_FORMAT')

置換文字列

&APP_DATE_TIME_FORMAT.

3.10.4.11 APP_FILES

ノート:

APP_IMAGESの名前がAPP_FILESに変更されました。レガシー名APP_IMAGESは引き続きサポートされていますが、Oracleでは新しい名前を使用することをお薦めします。

この置換文字列を使用して、特定のアプリケーションに固有で、複数のアプリケーションでは共有されていないアップロードされたイメージ、JavaScriptおよびカスケード・スタイルシートを参照します。ファイルをアップロードして、そのファイルをアプリケーション固有に設定した場合は、この置換文字列またはバインド変数を使用する必要があります。

参照タイプ 構文
バインド変数 :APP_FILES
直接PL/SQL 使用不可。
PL/SQL V('APP_FILES')
置換文字列 &APP_FILES.
テンプレート置換 #APP_FILES#

3.10.4.12 APP_NLS_DATE_FORMAT

APP_NLS_DATE_FORMATは、データベース・セッションの「アプリケーション日付書式」です。この値には、アプリケーションの「グローバリゼーション」設定の「アプリケーション日付書式」属性で指定された書式が反映されます。ただし、「アプリケーション日付書式」が設定されていない場合、APP_NLS_DATE_FORMATは、APEXエンジンへのリクエストの開始時にデータベース・セッションのNLS_DATE_FORMAT値を返します。

参照タイプ 構文
バインド変数 :APP_NLS_DATE_FORMAT
PL/SQL V('APP_NLS_DATE_FORMAT')
置換文字列 &APP_NLS_DATE_FORMAT.

3.10.4.13 APP_NLS_TIMESTAMP_FORMAT

APP_NLS_TIMESTAMP_FORMATは、データベース・セッションの「アプリケーションのタイムスタンプ書式」です。この値には、アプリケーションの「グローバリゼーション」設定の「アプリケーションのタイムスタンプ書式」属性で指定された書式が反映されます。ただし、「アプリケーションのタイムスタンプ書式」が設定されていない場合、APP_NLS_TIMESTAMP_FORMATは、APEXエンジンへのリクエストの開始時にデータベース・セッションのNLS_TIMESTAMP_FORMAT値を返します。

表3-2 APP_NLS_TIMESTAMP_FORMAT構文

参照タイプ 構文
バインド変数 :APP_NLS_TIMESTAMP_FORMAT
PL/SQL V('APP_NLS_TIMESTAMP_FORMAT')
置換文字列 &APP_NLS_TIMESTAMP_FORMAT.

3.10.4.14 APP_NLS_TIMESTAMP_TZ_FORMAT

APP_NLS_TIMESTAMP_TZ_FORMATは、データベース・セッションのアプリケーションの「アプリケーションのタイムスタンプ・タイムゾーン書式」です。この値には、アプリケーションの「グローバリゼーション」設定の「アプリケーションのタイムスタンプ・タイムゾーン書式」属性で指定された書式が反映されます。ただし、「アプリケーションのタイムスタンプ・タイムゾーン書式」が設定されていない場合、APP_NLS_TIMESTAMP_TZ_FORMATは、APEXエンジンへのリクエストの開始時にデータベース・セッションのNLS_TIMESTAMP_TZ_FORMAT値を返します。

参照タイプ 構文
バインド変数 :APP_NLS_TIMESTAMP_TZ_FORMAT
PL/SQL V('APP_NLS_TIMESTAMP_TZ_FORMAT')
置換文字列 &APP_NLS_TIMESTAMP_TZ_FORMAT.

3.10.4.15 APP_PAGE_ALIAS

APP_PAGE_ALIASは、カレント・アプリケーション・ページの英数字の名前です。ページの別名は大/小文字が区別されず、これはオプションのページ属性です。APP_PAGE_ALIASは、アプリケーション内で一意です。APP_PAGE_ALIASは、APP_PAGE_IDを使用できる場所であればほぼすべての場合に使用できます。

参照タイプ 構文

バインド変数

:APP_PAGE_ALIAS

PL/SQL

v('APP_PAGE_ALIAS')

置換文字列

&APP_PAGE_ALIAS.

次に、HTMLの例を示します。

カレント・ページの別名は、&APP_PAGE_ALIASです。

3.10.4.16 APP_PAGE_ID

APP_PAGE_IDは、カレント・アプリケーション・ページIDです。たとえば、アプリケーションが3ページ目に存在した場合、結果は3になります。この構文の使用は、複数のアプリケーションで汎用的に動作する必要があるアプリケーション・コンポーネントを記述する場合に有効です。

参照タイプ 構文

バインド変数

:APP_PAGE_ID

PL/SQL

:APP_PAGE_ID

PL/SQLおよび直接PL

NV('APP_PAGE_ID')

置換文字列

&APP_PAGE_ID.

次に、置換文字列の参照の例を示します。

f?p=&APP_ID.:&APP_PAGE_ID.:&APP_SESSION.

3.10.4.17 APP_REGION_ID

APP_REGION_IDは、現在実行されているリージョンのIDを示します。

参照タイプ 構文

バインド変数

:APP_REGION_ID

PL/SQL

v('APP_REGION_ID')

置換文字列

&APP_REGION_ID.

3.10.4.18 APP_REGION_STATIC_ID

APP_REGION_STATIC_IDは、現在実行されているリージョンの静的IDを示します。開発者が静的IDを入力しなかった場合は、NULLが返されます。

表3-3 APP_REGION_STATIC_ID構文

参照タイプ 構文

バインド変数

:APP_REGION_STATIC_ID

PL/SQL

v('APP_REGION_STATIC_ID')

置換文字列

&APP_REGION_STATIC_ID.

3.10.4.19 APP_REQUEST_DATA_HASH

APP_REQUEST_DATA_HASHは、URLのリクエスト、アイテム名およびアイテム値部分のハッシュ値です。主に、2つのブラウザ・リクエストによって異なるパラメータがAPEXに渡されたかどうかを検出する場合に役立ちます。

表3-4 APP_REQUEST_DATA_HASH構文

参照タイプ 構文
バインド変数 :APP_REQUEST_DATA_HASH
PL/SQL V('APP_REQUEST_DATA_HASH')
置換文字列 &APP_REQUEST_DATA_HASH.

3.10.4.20 APP_SESSION

APP_SESSIONは、最もよく使用される組込み置換文字列です。この置換文字列を使用して、セッション番号を渡すことによりセッション・ステートを維持するアプリケーション・ページ間のハイパーテキスト・リンクを作成できます。APP_SESSIONのかわりに置換文字列SESSIONを使用することもできます。

表3-5 APP_SESSION構文

参照タイプ 構文
バインド変数 :APP_SESSION
PL/SQL V('APP_SESSION')
短縮PL/SQL V('SESSION')
置換文字列 &APP_SESSION.
SYS_CONTEXT変数 SYS_CONTEXT('APEX$SESSION', 'APP_SESSION')

次の例を参考にしてください。

  • HTMLリージョン内からの参照:
    <a href="f?p=100:5:&APP_SESSION.">click me</a> 
    
  • PL/SQLを使用した参照:
    htf.anchor('f?p=100:5:'||V('APP_SESSION'),'click me');
    
  • SQL問合せを使用した参照:
    SELECT htf.anchor('f?p=100:5:'||:APP_SESSION,'click me') FROM DUAL;
    
  • SYS_CONTEXT変数の使用:

    SELECT ... WHERE apex_session_id = SYS_CONTEXT('APEX$SESSION', 'APP_SESSION')
    

    APEXでは、着信リクエストの処理を開始するとき、APEX$SESSIONコンテキストを設定します。たとえば、'APP_SESSION'の値を使用して、問合せおよび表データを保護するVPD (仮想プライベート・データベース)セキュリティ・ポリシーでカレント・アプリケーション・セッションにアクセスできます。

3.10.4.21 APP_SESSION_VISIBLE

APP_SESSION_VISIBLEは、組込み置換APP_SESSIONに似ています。この置換文字列を使用して、セッション番号を渡すことによりセッション・ステートを維持するアプリケーション・ページ間のハイパーテキスト・リンクを作成します。ユーザーがアプリケーションへ認証されていない場合およびAPEXのゼロ・セッションID機能を使用している場合、APP_SESSION_VISIBLEは、常にゼロを返します。

参照タイプ 構文
バインド変数 :APP_SESSION_VISIBLE
PL/SQL V('APP_SESSION_VISIBLE')
置換文字列 &APP_SESSION_VISIBLE.

次の例を参考にしてください。

  • HTMLリージョン内からの参照:
    <a href="f?p=100:5:&APP_SESSION_VISIBLE.">click me</a>
    
  • PL/SQLを使用した参照:
    sys.htf.anchor('f?p=100:5:'||V('APP_SESSION_VISIBLE'),'click me');
    
  • SQL問合せを使用した参照:
    SELECT sys.htf.anchor('f?p=100:5:'||:APP_SESSION_VISIBLE,'clickme') FROM DUAL;
    

3.10.4.22 APP_TITLE

APP_TITLEは、カレント・アプリケーションの英数字のタイトルです。タイトルは、APP_TITLEというアプリケーション置換文字列から導出されます。定義されていない場合は、「ロゴ」属性が使用されます(タイプがテキストの場合)。いずれもない場合は、アプリケーション名が使用されます。

参照タイプ 構文

バインド変数

:APP_TITLE

PL/SQL

v('APP_TITLE')

置換文字列

&APP_TITLE.

次に、HTMLの例を示します。

The title of the current application is: &APP_TITLE!HTML.

3.10.4.23 APP_UNIQUE_PAGE_ID

APP_UNIQUE_PAGE_IDは、各ページ・ビューに固有なOracle順序から生成される整数です。この数値は、アプリケーションでの重複ページの送信を防止するために使用され、その他の用途にも使用できます。たとえば、一意のURLを作成してブラウザのキャッシュの問題を防止するために、この数値を、fプロシージャへのコール内のリクエスト列またはデバッグ列に埋め込むことができます。

参照タイプ 構文

バインド変数

:APP_UNIQUE_PAGE_ID

PL/SQL

V('APP_UNIQUE_PAGE_ID')

置換文字列

&APP_UNIQUE_PAGE_ID.

次に、HTMLの例を示します。

SELECT 'f?p=100:1:'||:APP_SESSION||':'||:APP_UNIQUE_PAGE_ID||
    ':::P1_EMPNO:'||employee_id,
   first_name,
    job_id
FROM employees

リクエスト列にAPP_UNIQUE_PAGE_IDが使用されていることに注意してください。これによって、このURLが一意になり、ブラウザによる過度のキャッシュの問題を回避できます。

3.10.4.24 APP_USER

APP_USERは、アプリケーションを実行しているカレント・ユーザーです。認証モデルに応じて、ユーザーの値の設定も異なります。アプリケーションがデータベース認証を使用して実行されている場合、ユーザーの値はデータベースの擬似列USERと同じになります。アプリケーションが、ユーザー認証を必要とする認証スキームを使用する場合、APP_USERの値はその認証スキームによって設定され、通常は、認証時に使用されるユーザー名に設定されます。

参照タイプ 構文
バインド変数 :APP_USER
PL/SQL V('APP_USER')
置換文字列 &APP_USER.
SYS_CONTEXT変数 SYS_CONTEXT('APEX$SESSION', 'APP_USER')

次の例を参考にしてください。

  • HTMLリージョン内からの参照:
    Hello you are logged in as &APP_USER.
    
  • PL/SQLを使用した参照:
    htp.p('Hello you are logged in as'||V('APP_USER')); 
    
  • バインド変数としての参照:
    SELECT * FROM some_table WHERE user_id = :APP_USER
    
  • SYS_CONTEXT変数の使用:
    SELECT ... WHERE username = SYS_CONTEXT('APEX$SESSION', 'APP_USER')
    

    APEXでは、着信リクエストの処理を開始するとき、APEX$SESSIONコンテキストを設定します。たとえば、'APP_USER'の値を使用して、問合せおよび表データを保護するVPD (仮想プライベート・データベース)セキュリティ・ポリシーでカレント・アプリケーション・ユーザーにアクセスできます。

    関連項目:

    「パブリック・ユーザー」属性の詳細は、「認証」を参照してください

3.10.4.25 APP_VERSION

APP_VERSIONを使用して、入力したバージョンのアプリケーションを取得します。APP_VERSIONを使用してアプリケーションに表示するか、外部静的ファイルに追加して、アプリケーションの更新時にブラウザ・キャッシュを自動的に無効にすることができます。

参照タイプ 構文
置換文字列 #APP_VERSION#

3.10.4.26 AUTHENTICATED_URL_PREFIX

このアプリケーション・レベルの属性は、有効な認証済接頭辞(ログインしているURLの接頭辞)を示します。相対パスまたはhttpで始まるフルパスを使用できます。このアイテムは、アプリケーションが認証済(ログイン済)モードとパブリック(未ログイン)・モードの両方で実行可能な場合に有効です。AUTHENTICATED_URL_PREFIXを使用すると、認証済のページへのリンクを作成できます。このアイテムは、Basicデータベース認証の使用時に最も有効です。これは、URLの変更に認証が必要になる場合があるためです。

参照タイプ 構文

バインド変数

:AUTHENTICATED_URL_PREFIX

PL/SQL

V('AUTHENTICATED_URL_PREFIX')

置換文字列

&AUTHENTICATED_URL_PREFIX.

3.10.4.27 BROWSER_LANGUAGE

BROWSER_LANGUAGEは、Webブラウザの現行の言語プリファレンスを参照します。

参照タイプ 構文

バインド変数

:BROWSER_LANGUAGE

直接PL/SQL

APEX_APPLICATION.G_BROWSER_LANGUAGE

PL/SQL

V('BROWSER_LANGUAGE')

置換文字列

&BROWSER_LANGUAGE.

3.10.4.28 CURRENT_PARENT_TAB_TEXT

CURRENT_PARENT_TAB_TEXTは、ページ・テンプレートで最も有効です。ただし、この文字列は、2つのレベルのタブ(親タブと標準タブ)が使用されるアプリケーションでのみ使用できます。この文字列は、親タブ・ラベルの参照に使用します。この置換文字列を使用すると、現在選択されている親タブを、ページ・テンプレート内で繰り返すことができます。

参照タイプ 構文

バインド変数

使用不可。

置換文字列

&CURRENT_PARENT_TAB_TEXT.

3.10.4.29 DEBUG

DEBUGフラグの有効値は、YesまたはNoです。デバッグを有効にすると、アプリケーション処理の詳細が表示されます。カスタム・コードを記述する場合は、デバッグ・モードがYesに設定されている場合にのみデバッグ情報を生成できます。

参照タイプ 構文

バインド変数

:DEBUG

直接PL/SQL

APEX_APPLICATION.G_DEBUG

PL/SQL

V('DEBUG')

置換文字列

&DEBUG.

次に、DEBUGの現行の値を保持する置換文字列の参照の例を示します。

f?p=100:1:&APP_SESSION.::&DEBUG

3.10.4.30 HOME_LINK

HOME_LINKは、アプリケーションのホームページです。ページが指定されておらず、かつ認証スキームのロジックによって代替ページが指定されていない場合、APEXエンジンによって、この場所にリダイレクトされます。ホームURLは、ユーザー・インタフェース・ページの「属性」で定義します。

参照タイプ 構文
直接PL/SQL APEX_APPLICATION.G_HOME_LINK
PL/SQL V('HOME_LINK')
テンプレート参照 #HOME_LINK#
置換文字列 &HOME_LINK.

3.10.4.31 JET_BASE_DIRECTORY

JET_BASE_DIRECTORY置換文字列を使用して、APEXに付属するOracle JavaScript拡張機能ツールキット(JET)のベース・ディレクトリを参照します。JET_BASE_DIRECTORYを参照するためにサポートされている構文は、次のとおりです。

#JET_BASE_DIRECTORY#

3.10.4.32 JET_CSS_DIRECTORY

JET_CSS_DIRECTORY置換文字列を使用して、APEXに付属するOracle JavaScript拡張機能ツールキット(JET)のベース・ディレクトリを参照します。JET_CSS_DIRECTORYを参照するためにサポートされている構文は、次のとおりです。

#JET_CSS_DIRECTORY#

3.10.4.33 JET_JS_DIRECTORY

JET_JS_DIRECTORY置換文字列を使用して、APEXに付属するOracle JavaScript拡張機能ツールキット(JET)のコンポーネントのJavaScriptディレクトリを参照します。JET_JS_DIRECTORYを参照するためにサポートされている構文は、次のとおりです。

#JET_JS_DIRECTORY#

3.10.4.34 LOGIN_URL

現在ログインしていないユーザー用のログイン・ページへのリンクを表示するには、LOGIN_URLを使用します。

関連項目:

認証およびセキュリティ・ページ

参照タイプ 構文
バインド変数 :LOGIN_URL
直接PL/SQL APEX_APPLICATION.G_LOGIN_URL
PL/SQL V('LOGIN_URL')
置換文字列 &LOGIN_URL.
テンプレート置換 #LOGIN_URL#

3.10.4.35 LOGOUT_URL

LOGOUT_URLはアプリケーション・レベルの属性であり、ログアウトURLの指定に使用されます。これは、ユーザーをログアウト・ページにナビゲートさせるか、またはオプションで直接ユーザーをログアウトさせるURLです。ログアウト・ナビゲーション・バー・エントリを作成するには、&LOGOUT_URLの最後にピリオドを追加します(&LOGOUT_URL.)。ページ・テンプレートをコーディングしている場合は、#LOGOUT_URL#を使用します。

参照タイプ 構文

バインド変数

:LOGOUT_URL

PL/SQL

V('LOGOUT_URL')

置換文字列

&LOGOUT_URL.

テンプレート置換

#LOGOUT_URL#

3.10.4.36 APP_TEXT$Message_Name、APP_TEXT$Message_Name$Lang

APP_TEXT$Message_Name、APP_TEXT$Message_Name$Langの組込み置換では、APEX_LANG.MESSAGEなど、アプリケーションで定義されたテキスト・メッセージまたはシステムで定義されたテキスト・メッセージにアクセスできます。Message_Nameはテキスト・メッセージの名前であり、Message_Nameを有効な識別子(A-Z、0-9、$、#、_)にする必要があります。オプションの$Langパラメータは特定の翻訳にアクセスするために使用でき、$Langはデフォルトでページ・リクエストの現在の言語に設定されます。

参照タイプ 構文

バインド変数

:APP_TEXT$Message_Name、:APP_TEXT$Message_Name$Lang

PL/SQL

V('APP_TEXT$Message_Name')、V('APP_TEXT$Message_Name$Lang')

置換文字列

&APP_TEXT$Message_Name.、&APP_TEXT$Message_Name$Lang.

次は、HTMLエスケープを使用した、デフォルトの語とフランス語のテキスト・メッセージMY_MESSAGEの例です。

Default text: &APP_TEXT$MY_MESSAGE!HTML.
Pardon my French: &APP_TEXT$MY_MESSAGE$FR!HTML.

3.10.4.37 OWNER

#OWNER#置換は、APEXアプリケーションの解析対象スキーマを返します。#OWNER#は、この値をSQL問合せ、PL/SQL、または置換内で参照するために使用します。

3.10.4.38 PRINTER_FRIENDLY

PRINTER_FRIENDLYの値によって、APEXエンジンを印刷表示モードで実行するかどうかが決まります。この設定は、印刷されたドキュメントに不要な要素をページから排除するための条件で参照できます。

参照タイプ 構文
直接PL/SQL APEX_APPLICATION.G_PRINTER_FRIENDLY (VARCHAR2 DATATYPE)
PL/SQL V('PRINTER_FRIENDLY')
置換文字列 &PRINTER_FRIENDLY.

3.10.4.39 PROXY_SERVER

PROXY_SERVERは、アプリケーション属性です。この属性は、ソースがURLであるリージョンによって使用される場合があります。次に、直接PL/SQL参照用の適切な構文を示します。この参照は、データベースからリモートWebサーバーにアクセスするためのPL/SQLを記述する場合に使用します(たとえば、データベースに付属するutl_httpパッケージを使用する場合)。

APEX_APPLICATION.G_PROXY_SERVER

3.10.4.40 PUBLIC_URL_PREFIX

PUBLIC_URL_PREFIXは、アプリケーション・レベルの属性であり、ログイン・モードをパブリック表示に切り替えるURLを指定します。

参照タイプ 構文

バインド変数

:PUBLIC_URL_PREFIX

PL/SQL

V('PUBLIC_URL_PREFIX')

置換文字列

&PUBLIC_URL_PREFIX.

テンプレート置換

#PUBLIC_URL_PREFIX#

3.10.4.41 REQUEST

REQUESTの値は、各アプリケーション・ボタンによって、そのボタンの名前またはそのボタンに関連付けられているリクエスト値属性に設定され、これにより、受入れ処理が可能になり、ユーザーがボタンをクリックすると、そのボタンの名前を参照するようになります。f?p構文では、REQUESTは4つ目の引数を使用して設定できます。

REQUESTは、通常、受入れプロセス(ページのポスト時に発生するプロセス)中に参照されます。

参照タイプ 構文

バインド変数

:REQUEST

直接PL/SQL

APEX_APPLICATION.G_REQUEST

PL/SQL

V('REQUEST')

置換文字列

&REQUEST.

関連項目:

REQUESTの使用

3.10.4.42 REQUESTの使用

REQUESTは、通常、受入れプロセス(ページのポスト時に発生するプロセス)中に参照されます。この項では、REQUEST置換文字列の使用方法に関する追加情報について説明します。

関連項目:

REQUEST

3.10.4.42.1 ポストされたページのREQUESTの有効範囲および値について

ページをポストすると、受入れプロセスが起動されます。受入れプロセスは、計算、検証、プロセスおよびブランチで構成されています。REQUESTの値は、受入れプロセスの各フェーズで使用可能です。アプリケーションが別のページにブランチされると、REQUESTはNULLに設定されます。

REQUESTの値は、ユーザーがクリックするボタンの名前か、またはユーザーが選択するタブの名前です。たとえば、名前がCHANGEでラベルがApply Changeというボタンがあるとします。ユーザーがこのボタンをクリックすると、REQUESTの値がCHANGEになります。

3.10.4.42.2 「対象ボタン」属性について

検証、プロセスおよびブランチには「対象ボタン」属性があります。この属性は、選択リストとして表示され、カレント・ページにあるボタン名を含みます。「対象ボタン」から選択した場合、ボタンのREQUEST値を検証、プロセスまたはブランチに関連付けます。

ページの送信にボタンを使用する場合、REQUEST値がページに渡されます。受入れプロセス・ロジックにより、「対象ボタン」属性を使用する各検証、プロセスおよびブランチが評価され、コンポーネントを実行(起動)するかどうかが決定されます。コンポーネントの1つが実行される場合、関連付けられたボタンをユーザーが実際にクリックしてページが送信されたとはみなさないでください。同じリクエスト値を使用する別のボタンがページを送信した可能性があります。同様に、ページのJavaScriptもページを送信してリクエスト値を渡します。

3.10.4.42.3 宣言条件を使用したREQUESTの参照について

多くの開発者は、条件を使用してREQUESTを参照します。たとえば、ユーザーがレポート・ページ上の「実行」をクリックしたときにページ区切りをリセットする必要がある場合があります。ページ区切りは、送信時ページ・プロセスを作成してリセットできます。ページ・プロセスには、条件「リクエスト=式1」を使用して条件を付けることができます。

送信時ページ・プロセスに条件を設定するには:

  1. 「条件」で、条件タイプ「リクエスト=式1」を選択します。

  2. 式1で「実行」を実行します。

3.10.4.42.4 表示プロセスでのREQUESTの使用について

REQUESTは、f?p構文を使用してページに移動するときの表示プロセスにも使用できます。たとえば:

f?p=100:1:&APP_SESSION.:GO

f?p構文の4つ目の引数がREQUESTです。この例では、カレント・セッションのアプリケーション100のページ1に移動し、REQUESTの値がGOに設定されます。すべてのプロセスまたはリージョンでは、表示プロセスを使用してREQUESTの値を参照できます。

次に、PL/SQLを使用した同様の例を示します。

IF V ('REQUEST') = 'GO' THEN
   htp.p('hello');
END IF;

htp.p('hello')は、特定のテキスト文字列を出力するためのPL/SQL Webツールキット・パッケージへのコールであることに注意してください。

3.10.4.42.5 BRANCH_TO_PAGE_ACCEPTの使用について

表示プロセスで特殊なリクエストBRANCH_TO_PAGE_ACCEPTを使用して、自動的にページを送信できます。たとえば:

f?p=100:1:&APP_SESSION.:BRANCH_TO_PAGE_ACCEPT|SAVE:::P1_DATA:value

BRANCH_TO_PAGE_ACCEPTの使用は、ページ1にナビゲートし、アイテムP1_DATAに値を入力し、SAVEリクエストでページを送信するボタンをクリックすることと同じです。

3.10.4.43 SCHEMA OWNER

PL/SQLコードからアプリケーションへのコールを生成する場合、APEXスキーマの所有者を参照する必要があります。次に、直接PL/SQLの参照用の適切な構文を示します。

APEX_APPLICATION.G_FLOW_SCHEMA_OWNER

また、#FLOW_OWNER#を使用してSQL問合せおよびPL/SQL(リージョンやプロセスなど)でこの値を参照することもできます。

3.10.4.44 SQLERRM

SQLERRMは、アプリケーション・リージョン・エラー・メッセージでのみ使用可能なテンプレート置換です。リージョン・テンプレート置換を参照するためにサポートされている構文は、次のとおりです。

#SQLERRM#

3.10.4.45 SYSDATE_YYYYMMDD

SYSDATE_YYYYMMDDは、データベース・サーバーの現在の日付にYYYYMMDD書式マスクを適用して表示します。この値を、SYSDATE()ファンクションを繰り返しコールするかわりに使用できます。次のリストに、SYSDATE_YYYYMMDDを参照するためにサポートされている構文を示します。

  • バインド変数

    :SYSDATE_YYYYMMDD
    
  • PL/SQL

    V('SYSDATE_YYYYMMDD')
    
  • 直接PL/SQL

    APEX_APPLICATION.G_SYSDATE (DATE DATATYPE)
    
参照タイプ 構文

バインド変数

:SYSDATE_YYYYMMDD

直接PL/SQL

APEX_APPLICATION.G_SYSDATE (DATE DATATYPE)

PL/SQL

V('SYSDATE_YYYYMMDD')

3.10.4.46 THEME_DB_FILES

ノート:

THEME_DB_IMAGESの名前がTHEME_DB_FILESに変更されました。レガシー名THEME_DB_IMAGESは引き続きサポートされていますが、Oracleでは新しい名前を使用することをお薦めします。

テーマの「ファイルの接頭辞」設定に関係なく、データベースにテーマ定義とともに格納されているファイルを常に参照するには、THEME_DB_FILES置換文字列を使用します。テンプレート置換のためにサポートされている構文は、次のとおりです。

#THEME_DB_FILES#

3.10.4.47 THEME_FILES

ノート:

THEME_IMAGESの名前がTHEME_FILESに変更されました。レガシー名THEME_IMAGESは引き続きサポートされていますが、Oracleでは新しい名前を使用することをお薦めします。

テーマ定義とともに格納されているファイルを参照するには、THEME_FILES置換文字列を使用します。テンプレート置換のためにサポートされている構文は、次のとおりです。

#THEME_FILES#

3.10.4.48 WORKSPACE_FILES

ノート:

WORKSPACE_IMAGEの名前がWORKSPACE_FILESに変更されました。レガシー名WORKSPACE_IMAGEは引き続きサポートされていますが、Oracleでは新しい名前を使用することをお薦めします。

この置換文字列を使用して、ワークスペース内の複数のアプリケーションで共有されているアップロードされたイメージ、JavaScriptおよびカスケード・スタイルシートを参照します。

参照タイプ 構文
バインド変数 :WORKSPACE_FILES
直接PL/SQL 使用不可
PL/SQL V('WORKSPACE_FILES')
置換文字列 &WORKSPACE_FILES.
テンプレート置換 #WORKSPACE_FILES#

関連項目:

APP_FILESおよびAPEX_FILES

3.10.4.49 WORKSPACE_ID

ワークスペースIDを参照するには、この置換文字列を使用します。

参照タイプ 構文
バインド変数 :WORKSPACE_ID
PL/SQL V('WORKSPACE_ID')
置換文字列 &WORKSPACE_ID.
SYS_CONTEXT変数 SELECT ... WHERE workspace_id = SYS_CONTEXT('APEX$SESSION', ''WORKSPACE_ID')

次の例を参考にしてください。

  • HTMLリージョン内からの参照:
    Hello your workspace id is &WORKSPACE_ID.
    
  • PL/SQLを使用した参照:
    htp.p('Hello your workspace id is '||V('WORKSPACE_ID'));
    
  • バインド変数の使用:
    SELECT * FROM some_table WHERE workspace_id = :WORKSPACE_ID
    
  • SYS_CONTEXT変数の使用:
    SELECT ... WHERE workspace_id = SYS_CONTEXT('APEX$SESSION', 'WORKSPACE_ID')
    

    APEXでは、着信リクエストの処理を開始するとき、APEX$SESSIONコンテキストを設定します。たとえば、'WORKSPACE_ID'の値を使用して、問合せおよび表データを保護するVPD (仮想プライベート・データベース)セキュリティ・ポリシーで現在のワークスペースID値にアクセスできます。