Oracle HTML DBユーザーズ・ガイド
リリース1.6
部品番号: B15713-02
  目次へ移動
目次
索引へ移動
索引

戻る
戻る
次へ
次へ
 

A 使用可能な条件

条件とは、リージョン、アイテム、ボタンおよびタブの表示と、プロセス、計算および検証の実行を制御するために役立つ論理単位です。条件をコントロールまたはコンポーネントに適用すると、条件が評価されます。条件が真であるかどうかによって、コントロールまたはコンポーネントが表示されるかどうか、または処理が実行されるかどうかが決まります。

コントロール(リージョン、ボタンまたはアイテム)またはコンポーネント(タブ、リストまたはナビゲーション・バー)の作成時に条件タイプを選択するか、または条件付き表示属性で条件を選択することによって、条件を指定できます。


参照:

「条件付きのレンダリングおよびプロセスの理解」

Oracle HTML DBで使用可能な条件

次の表に、一般的に使用されているいくつかの条件を示します。 任意のコントロールまたはコンポーネントに使用可能なすべての条件の完全なリストを表示するには、条件付き表示タイプ・リストの右側にある「ビュー」アイコンをクリックします。「タイプ」リストのすぐ下に、一般的な選択項目へのショートカットが表示されます。条件に式が必要な場合は、該当するフィールドにその式を入力します。

表A-1に、Oracle HTML DBで使用可能な条件について説明します。

表A-1 使用可能な条件

条件 説明
常時 常にtrueを戻します。主にページ・アイテムの読取り専用条件に使用されます。
現在の言語!=式1 クライアント・ブラウザが現在実行されていない言語の設定を確認します。現在の言語が「式1」に入力した文字列に含まれている場合は、trueと評価されます。
現在の言語=式1 クライアント・ブラウザが現在実行されている言語の設定を確認します。現在の言語が「式1」に入力した値と一致する場合は、trueと評価されます。
現在の言語が式1に含まれる ブラウザの現在の言語が文字列に含まれているかどうかを判断します。現在の言語が「式1」に入力した文字列と一致する場合は、trueと評価されます。

たとえば、現在の言語がen-USまたはen-GBのいずれかであることを確認するには、この条件を選択して、「式1」に次の文字列を入力します。

en-us,en-gb
現在の言語が式1に含まれない アプリケーションの現在の言語が、指定した文字列に含まれていないことを確認します。現在の言語が「式1」に入力した文字列に含まれていない場合は、trueと評価されます。
カレント・ページ!=式1 カレント・ページが「式1」に入力したページと同じでない場合は、trueと評価されます。
カレント・ページ!=送信ページ(このページはポストされたページではない) 指定したページがポストされていないかどうかを判断します。カレント・ページが「式1」に入力した値と一致しない場合は、trueと評価されます。
カレント・ページ=式1 カレント・ページが「式1」に入力したページと同じである場合は、trueと評価されます。
カレント・ページ=送信ページ(このページはポストされたページ) 指定したページがポストされたかどうかを確認します。カレント・ページが「式1」に入力した値と一致する場合は、trueと評価されます。
カレント・ページが式1(カンマで区切られたページ・リスト)に含まれる カレント・ページが、「式1」に指定したページ・リストに含まれているかどうかを確認します。カレント・ページが1、2、3または4ページのいずれかであることを確認するには、この条件タイプを選択して、「式1」に次の文字列を入力します。
1,2,3,4
カレント・ページが「印刷用」モード ユーザーが「印刷用」モードを選択した際に、特定のページ・コントロールまたはコンポーネントのみを表示します。カレント・ページが「印刷用」モードである場合、この条件はtrueと評価されます。「印刷用」モードを指定するには、f?p構文を使用します。
カレント・ページは「印刷用」モードではない ユーザーが「印刷用」モードを選択した際に、ページ・コントロールまたはコンポーネントを非表示にします。「印刷用」モードを指定するには、f?p構文を使用します。

参照: f?p構文の詳細は、「f?p構文を使用したページのリンク」を参照してください。

カレント・ページが式1(カンマで区切られたページ・リスト)に含まれない カレント・ページが「式1」に入力した、カンマで区切られたページ・リストに含まれていないかどうかを確認します。
存在する(SQL問合せが1行以上を戻す) この条件は、SQL問合せとして表されます。問合せで1行以上が戻される場合、この条件はtrueと評価されます。次に例を示します。
select 1 from emp where deptno = :P101_DEPTNO

この例では、アイテムP101_DEPTNOがバインド変数として参照されます。アプリケーション・プロセスおよびSQL問合せリージョン内でバインド変数を使用すると、アイテムのセッション・ステートを参照できます。P101_DEPTNOの値に指定した部門に1人以上の従業員が存在する場合、この条件はtrueと評価されます。

参照: バインド変数の詳細は、「バインド変数」を参照してください。

なし この条件タイプは、常にfailと評価されます。これは、コントロールまたはコンポーネント(リージョン、ボタン、アイテムなど)のページ上でのレンダリングを一時的に制限したり、プロセス、計算および検証の実行を制限するために役立ちます。
存在しない(SQL問合せが行を戻さない) この条件は、SQL問合せとして表されます。問合せで行が戻されない場合は、trueと評価されます。
PL/SQL式 PL/SQL式は、trueまたはfalseと評価される有効なPL/SQL構文内の任意の式です。次に例を示します。
nvl(:MY_FLOW_ITEM,'NO') = 'YES'

MY_FLOW_ITEMの値がYESの場合、この条件はtrueと評価されます。それ以外の場合は、falseと評価されます。

ブールを戻すPL/SQLファンクション本体 trueまたはfalseを戻すPL/SQLファンクション本体です。次に例を示します。
BEGIN
IF :P1_DAY = 'MONDAY' THEN
    RETURN TRUE;
ELSE
    RETURN FALSE;
END;

リクエスト!=式1 REQUESTは、ページの送信方法を追跡する内部属性です。デフォルトでは、ページの送信時に、ページを送信させたオブジェクトの名前に従ってアプリケーション属性REQUESTの値が設定されます。通常のボタンでは、REQUESTは、ボタンのラベルではなくボタンの名前(「取消」、「保存」など)に設定されます。リクエストは、f?p構文を使用して設定することもできます。

たとえば、ユーザーがボタンをクリックしたり、タブ・メニューを選択した場合にページが送信されます。イベントによっては、REQUESTアプリケーション属性の値を参照して、異なる操作を実行できます。

REQUESTが「式1」に入力した値と同じでない場合、この条件はtrueと評価されます。

参照: 「URL構文の理解」「REQUEST」および「ボタン名とREQUESTの関係の理解」

リクエスト=式1 この条件は、「リクエスト!=式1」の反対の条件です。

REQUESTが「式1」に入力した値と同じである場合、この条件はtrueと評価されます。PL/SQLでは、次の構文を使用してアプリケーション属性を参照することもできます。

V('REQUEST')

参照: 「URL構文の理解」「REQUEST」および「ボタン名とREQUESTの関係の理解」

式1がリクエストを含む REQUESTは、ページの送信方法を追跡する内部アプリケーション属性です。デフォルトでは、ページの送信時に、ページを送信させたイベントに従ってREQUESTの値が設定されます。たとえば、ユーザーがボタンをクリックしたり、タブを選択した場合にページが送信されます。イベントによっては、REQUESTアプリケーション属性の値を参照して、異なる操作を実行できます。

この条件を使用すると、許可するリクエスト(SAVEやUPDATEなど)のリストを「式1」に指定できます。REQUESTの値がリストに含まれている場合、この条件はtrueと評価されます。

参照: 「REQUEST」および「ボタン名とREQUESTの関係の理解」

式1がリクエストを含まない この条件は、「式1がリクエストを含む」の反対の条件です。REQUESTの値が「式1」に含まれていない場合は、trueと評価されます。

参照: 「REQUEST」および「ボタン名とREQUESTの関係の理解」

SQL式 SQL文のWHERE句として評価されます。たとえば、式:MY_ITEM = 'ABC'の場合を考えてみます。

HTML DBエンジンは、次の文を処理します。

select 1 from dual where :MY_ITEM = 'ABC'

行が戻された場合、この条件はtrueと評価されます。

SQLレポート(「OK」をクリックすると「戻る」ボタンを表示) この条件は、ページ区切りが含まれているレポートに使用します。この条件は、結果セット内でページを戻るボタンを含めるタイミングを自動的に判断します。
SQLレポート(「OK」をクリックすると「次へ」ボタンを表示) この条件は、ページ区切りが含まれているレポートに使用します。この条件は、結果セット内でページを進むボタンを含めるタイミングを自動的に判断します。
式1のテキスト!=式2 (&ITEM置換を含む) この条件を使用すると、文字列を含む2つの式を比較できます。いずれかの式には、&MY_ITEM構文を使用して、セッション・ステートへの参照を含めることができます。

参照: &MY_ITEM構文の詳細は、「置換文字列の使用」を参照してください。

式1のテキスト=式2 (&ITEM置換を含む) この条件は、「式1のテキスト!=式2(&ITEM置換を含む)」の反対の条件です。文字列を含む2つの式を比較します。 いずれかの式には、&ITEM.構文を使用して、セッション・ステートへの参照を含めることができます。

アイテムF100_P2_DAY_DATEが「Wednesday」と同じであるかどうかを確認するには、この条件を選択して、「式1」および「式2」に次のとおり入力します。

  • 式1: F100_P2_DAY_DATE

  • 式2: Wednesday

参照: &MY_ITEM構文の詳細は、「置換文字列の使用」を参照してください。

認証済ユーザー(非パブリック・ユーザー) 現行ユーザーが組込み認証スキーマまたはカスタム認証スキームのいずれかを使用して認証されたかどうかを確認します。

参照: 認証の詳細は、「認可を介したセキュリティの提供」を参照してください。

パブリック・ユーザー(認証されていないユーザー) パブリック・ユーザーは、アプリケーション属性として定義されます。特定のアプリケーションに対してパブリック・ユーザーを設定するには、Application Builderのホームページに移動し、そのアプリケーションに対応する編集リンクをクリックします。

パブリック・ユーザーは、複数のユーザーで使用されるユーザーです。アプリケーションには、認証およびログインが必要なパブリック・ページが含まれる場合があります。ユーザーがパブリック・ユーザーである(ユーザーがユーザー自身として認証されたか、またはアプリケーション属性Public Userで識別されたパブリック・ユーザー以外のユーザーとして認証された)場合、この条件はtrueを戻します。

参照: 「セッション管理」

式1のアイテムの値!=0(ゼロ) 「式1」内のアイテムの値が0(ゼロ)ではないかどうかを確認します。
式1のアイテムの値=式2 アイテムの値を特定の文字列と比較します。この条件を使用した比較では、大/小文字が区別されます。

たとえば、アイテムF100_P2_WORDの値が文字列「the quick brown fox」に含まれているかどうかを確認するには、「式1」および「式2」フィールドに次のとおり入力します。

  • 式1: F100_P2_WORD

  • 式2: the quick brown fox

式1のアイテムの値=0(ゼロ) 「式1」内のアイテムの値が0(ゼロ)であるかどうかを確認します。
式1のアイテムの値が空白を含まない 「式1」に指定したアイテムの値に空白が含まれていない場合は、trueと評価されます。
式1のアイテムの値が英数字 「式1」の文字列に英数字のみが含まれている場合は、trueと評価されます。
式1のアイテムの値が、式2のコロンで区切られたリストに含まれる この条件タイプを使用すると、特定の文字列がセッション・ステート・アイテムの値に含まれているかどうかを確認できます。「式1」に指定した文字列が、「式2」に指定したアイテムの値に含まれているかどうかを確認します。
式1のアイテムの値が、式2のコロンで区切られたリストに含まれない 「式1」に指定した値に、コロンで区切られた要素リストの文字列が含まれている場合は、trueと評価されます。

P1_TODAYが「Monday」、「Tuesday」または「Wednesday」のいずれかであるかどうかを確認するには、この条件を選択して、「式1」および「式2」に次のとおり入力します。

  • 式1: P1_TODAY

  • 式2: Monday: Tuesday:Wednesday

式1のアイテムの値がNOT NULL 「式1」に、アプリケーションまたはページ・アイテムの名前(大文字)を入力します。アイテムのキャッシュの現在の値がNULLでない(値を持つ)場合は、trueと評価されます。そうでない場合は、falseと評価されます。
式1のアイテムの値がNULL 「式1」のアイテムが値を持たない場合は、trueと評価されます。
式1のアイテムの値がNULLまたは0 (ゼロ) 「式1」のアイテムの値がNULLまたは0(ゼロ)のいずれかである場合は、trueと評価されます。
式1のアイテムの値が数値 「式1」のアイテムの値が数値である場合は、trueと評価されます。
式1のユーザー設定項目の値!=式2 この条件は、「式1のユーザー設定項目の値=式2」の反対の条件です。「式1」に指定したユーザー設定項目の名前が「式2」の文字列と同じでない場合は、trueと評価されます。
式1のユーザー設定項目の値=式2 ユーザー設定項目の値を確認します。「式1」に指定したユーザー設定項目の名前が「式2」の文字列と同じである場合は、trueと評価されます。
カンマで区切られたアイテム・リストのアイテムを変更した場合 「式1」に指定したアイテム・リストに含まれる、NULLでない任意のセッション・ステート・アイテムの値を変更した場合は、trueと評価されます。
カンマで区切られたページ・リストのアイテムを変更した場合 「式1」に指定したページ・リストに含まれる、NULLでない任意のセッション・ステート・アイテムの値を変更した場合は、trueと評価されます。
カレント・アプリケーションのアイテムを変更した場合 カレント・アプリケーションのNULLでない任意のセッション・ステート・アイテムの値を変更した場合は、trueと評価されます。
カレント・ページのアイテムを変更した場合 カレント・ページのNULLでない任意のセッション・ステート・アイテムの値を変更した場合は、trueと評価されます。
カレント・セッションのアイテムを変更した場合 カレント・セッションのNULLでない任意のセッション・ステート・アイテムの値を変更した場合は、trueと評価されます。
cgi_env DAD_NAME !=式1の場合 この条件は、「When cgi_env DAD_NAME=式1」の反対の条件です。

アプリケーションのカレント・ページを呼び出すURLに使用されているDAD(データベース・アクセス記述子)を確認し、それを「式1」と比較します。DADが「式1」と同じでない場合は、trueと評価されます。

cgi_env DAD_NAME=式1の場合 アプリケーションのカレント・ページを呼び出すURLに使用されているDAD(データベース・アクセス記述子)を確認し、それを「式1」と比較します。DADが「式1」と同じである場合は、trueと評価されます。
cgi_env HTTP_HOST !=式1の場合 この条件は、「When cgi_env HTTP_HOST=式1」の反対の条件です。

CGI環境変数HTTP_HOSTの値を確認します。これは、owa_util.get_cgi_env ('HTTP_HOST')によって戻される値です。この値が「式1」の文字列と同じでない場合は、trueと評価されます。

cgi_env HTTP_HOST=式1の場合 CGI環境変数HTTP_HOSTの値を確認します。これは、owa_util.get_cgi_env ('HTTP_HOST')によって戻される値です。この値が「式1」の文字列と同じである場合は、trueと評価されます。
cgi_env SERVER_NAME !=式1の場合 この条件は、「When cgi_env SERVER_NAME=式1」の反対の条件です。

CGI環境変数SERVER_NAMEの値を確認します。これは、owa_util.get_cgi_env ('SERVER_NAME')によって戻される値です。この値が「式1」の文字列と同じでない場合は、trueと評価されます。

cgi_env SERVER_NAME=式1の場合 CGI環境変数SERVER_NAMEの値を確認します。これは、owa_util.get_cgi_env ('SERVER_NAME')によって戻される値です。この値が「式1」の文字列と同じである場合は、trueと評価されます。