プライマリ・コンテンツに移動
Oracle® Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド
リリース18.1
E98591-01
目次へ移動
目次
索引へ移動
索引

前
次

16.1 ページ計算の理解

計算を使用して、ページが送信または表示されたときに、指定したアイテムに値を割り当てます。

16.1.1 ページ計算について

ページ計算では、ページが表示または送信(レンダリングおよび処理)されたときに、指定したアイテムに値が割り当てられます。ページ計算を作成するには、ページ計算の作成ウィザードを実行します。各計算には、計算の作成対象のアイテムおよび計算タイプを指定します。

アプリケーション・レベルの計算を使用して、アイテムに値を割り当てることもできます。ほとんどのページ・レベルの計算では、ページ・アイテムを移入します。一方、ほとんどのアプリケーション・レベルの計算では、アプリケーション・アイテムを移入します。

16.1.2 ページ計算の作成

ページ計算を作成するには、次のステップを実行します。

  1. ページ・デザイナで適切なページにナビゲートします。
  2. 「レンダリング」タブで、「レンダリング前」または「レンダリング後」のノードを展開し、計算を配置する場所を見つけます。
  3. その場所を右クリックして、「計算の作成」を選択します。

    ページ・デザイナが表示されます。

    プロパティ・エディタでは、属性はグループに編成されています。グループまたは属性を検索するには、「フィルタ・プロパティ」フィールドにキーワードを入力します。プロパティ・エディタにグループまたは属性が表示されます。または、「グループに移動」をクリックしてグループを選択できます。

    ヒント:

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

  4. 次の属性を編集します。
    1. 指定、アイテム名 - この計算によって移入されるページまたはアプリケーション・アイテムを入力します。
    2. 実行オプション、順序 - この計算の順序を指定します。これによって実行の順序が決まります。
    3. 実行オプション、ポイント - ページのレンダリングまたは処理のどのポイントでこの計算を実行するかを選択します。最も一般的な計算ポイントは、「送信後」です。
    4. 計算、タイプ - 計算タイプを選択します。オプションのリストを表示するには、ヘルプを参照してください。
  5. 「保存」をクリックします。

16.1.3 ページ計算属性の編集

作成した計算は、ページ計算の編集ページで編集できます。

ページ計算を編集するには、次のステップを実行します。

  1. ページ・デザイナでページを表示します。
  2. 「レンダリング」タブで、「レンダリング前」または「レンダリング後」ノードを展開して、計算を選択します。

    ページ・デザイナが表示されます。

    プロパティ・エディタでは、属性はグループに編成されています。グループまたは属性を検索するには、「フィルタ・プロパティ」フィールドにキーワードを入力します。プロパティ・エディタにグループまたは属性が表示されます。または、「グループに移動」をクリックしてグループを選択できます。

  3. プロパティ・エディタで、適切な属性を編集します。

    ヒント:

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

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

16.1.4 計算ポイントおよびソースの編集

計算を実行するタイミングは、「順序」「ポイント」の属性を編集して制御します。「順序」属性によって、評価の順序が決定されます。「ポイント」属性によって、計算を実行するページのレンダリングまたは処理のポイントが決定されます。最も一般的な計算ポイントは、「送信後」です。

計算ポイントおよびソースを編集するには、次のステップを実行します。

  1. ページ・デザイナでページを表示します。
  2. 「レンダリング」タブで、「レンダリング前」または「レンダリング後」ノードを展開して、計算を選択します。

    ページ・デザイナが表示されます。

    プロパティ・エディタでは、属性はグループに編成されています。グループまたは属性を検索するには、「フィルタ・プロパティ」フィールドにキーワードを入力します。プロパティ・エディタにグループまたは属性が表示されます。または、「グループに移動」をクリックしてグループを選択できます。

  3. プロパティ・エディタで、次の属性を編集します。
    1. 実行オプション、順序 - このコンポーネントの順序を指定します。これによって実行の順序が決まります。2つのコンポーネントの順序値が同じである場合は、アプリケーションを別の環境にエクスポートおよびインポートするときに、異なる順序で実行されることがあります。
    2. 実行オプション、ポイント - ページのレンダリングまたは処理のどのポイントでこの計算を実行するかを選択します。
      たとえば、「新規インスタンス開始時」を選択すると、新しいセッション(またはインスタンス)の生成時に計算が実行されます。最も一般的な計算ポイントは、「送信後」です。
    3. 計算: アイテムの値を計算するための式または問合せを定義します。
    4. エラー、エラー・メッセージ: この計算が失敗した場合に表示されるエラー・メッセージを入力します。

    ヒント:

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

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

16.1.5 計算ポイントおよび計算構文の例

計算のわかりやすい使用例として、電話番号入力用のフォーム・フィールドを含むページがあげられます。この例では、電話番号は1つのデータベース列に格納されますが、データ・エントリ・フォームでは電話番号が市外局番、局番および回線番号の3つの要素に分割されます。この例では、ページ・アイテムはP10_AREA_CODEP10_PREFIXおよびP10_LINE_NUMBERと呼ばれます。

次に、これらのアイテムに格納された値を1つの文字列に結合します。これは、「送信後」計算を使用して行い、結合した値をP10_PHONE_NUMBERというアイテムに格納します。

P10_AREA_CODEP10_PREFIXおよびP10_LINE_NUMBERを結合した値を新規アイテムに格納するための計算を作成するには、次のステップを実行します。

  1. 適切なページにナビゲートします。
  2. P10_PHONE_NUMBERという名前のアイテムを作成して、P10_AREA_CODEP10_PREFIXおよびP10_LINE_NUMBERを結合した値を格納します。
  3. 計算を作成します。
    1. 「レンダリング」タブで、「レンダリング前」を展開します。
    2. 場所を選択して右クリックして、「計算の作成」を選択します。

      ページ・デザイナが表示されます。

      プロパティ・エディタでは、属性はグループに編成されています。グループまたは属性を検索するには、「フィルタ・プロパティ」フィールドにキーワードを入力します。プロパティ・エディタにグループまたは属性が表示されます。または、「グループに移動」をクリックしてグループを選択できます。

      ヒント:

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

  4. プロパティ・エディタで、次の属性を編集します。
    1. 識別、アイテム名: P10_PHONE_NUMBERを選択します。
    2. 実行オプション、順序 - この計算の順序を指定します。これによって実行の順序が決まります。
    3. 実行オプション、ポイント - ページのレンダリングまたは処理のどのポイントでこの計算を実行するかを選択します。最も一般的な計算ポイントは、「送信後」です。
  5. 「計算タイプ」で、次の計算タイプを作成できます。
    1. 静的値:
      • 計算、タイプ: 「静的値」を選択します。

      • 計算、静的値: 次の計算を入力します。

        (&P10_AREA_CODE.) &P10_PREFIX.-&P10_LINE_NUMBER.
        
    2. PL/SQLファンクション本体:
      • 計算、タイプ: 「PL/SQLファンクション本体」を選択します。

      • 計算、PL/SQLファンクション本体: 計算を入力します。

        DECLARE
        l_return_value  VARCHAR2(300) DEFAULT NULL;
        BEGIN
            l_return_value :=
        '('||:P10_AREA_CODE||')'||:P10_PREFIX||'-'||:P10_LINE_NUMBER;
        RETURN l_return_value;
        END;
    3. SQL問合せ(コロン区切りの値を返す):
      • 計算、タイプ: 「SQL問合せ(コロン区切りの値を返す)」を選択します。

      • 計算タイプ、SQL問合せ: 計算を入力します。

        SELECT '('||:P10_AREA_CODE||')'||:P10_PREFIX||'-'||:P10_LINE_NUMBER FROM DUAL
        
    4. PLSQL式:
      • 計算、タイプ: 「PL/SQL式」を選択します。

      • 計算タイプ、PL/SQL式: 計算を入力します。

        '('||:P10_AREA_CODE||')'||:P10_PREFIX||'-'||:P10_LINE_NUMBER
        
  6. 「保存」をクリックします。