13.3 ボタンの管理

ボタンを使用して、特定のページまたはURLを表示したり、情報をポストまたは処理するようにできます(たとえば、「作成」、「取消」、「次へ」、「前へ」または「削除」ボタンを作成します)。また、条件付きで表示したり、保存されていない変更についてユーザーに警告するようにボタンを構成できます。

13.3.1 実行できるアクション・ボタンについて

ボタンを使用して、ページを送信したり、別のページまたは別のURLにリダイレクトします。

「動作」「アクション」属性は、ボタンがクリックされたときに実行するアクションを決定します。使用可能なオプションは次のとおりです。

  • ページの送信 - 「ボタン名」と等しいREQUEST値とともにカレント・ページを送信します。

  • このアプリケーションのページにリダイレクト - ターゲット・ページでのページ区切りのリセット、リクエスト値の設定、キャッシュのクリアおよびアイテム値の設定のためのオプションの追加属性を指定して、現在のアプリケーションのページにリダイレクトします。

  • 別のアプリケーションのページにリダイレクト - ターゲット・ページでのページ区切りのリセット、リクエスト値の設定、キャッシュのクリアおよびアイテム値の設定のためのオプションの追加属性を指定して、別のアプリケーションのページにリダイレクトします。

    ノート:

    別のアプリケーションのページへのリダイレクトは、ターゲット・アプリケーションでディープ・リンクが有効になっているかどうかに依存します。ディープ・リンクを有効にするには、アプリケーションの「セキュリティ」属性に移動し、「ディープ・リンク」を有効にします。
  • URLにリダイレクト - 指定したターゲットURLにリダイレクトします。

  • 動的アクションで定義 - ページの送信も別のページへのリダイレクトもしません。かわりに、ボタンの動作は「動的アクション」によって定義されます。

13.3.2 ボタンの作成

ページ・デザイナでボタンを作成します。

ページ・デザイナでボタンを作成するには:

  1. ページ・デザイナでページを表示します。
    1. ワークスペースのホームページで、「アプリケーション・ビルダー」アイコンをクリックします。
    2. アプリケーションを選択します。
    3. ページを選択します。
    ページ・デザイナが表示されます。
  2. 必要に応じて、アイテムを含めるリージョンを作成します。
  3. ギャラリで、「ボタン」タブをクリックします。

    ボタンにカーソルをあわせると、ボタンを説明するツールチップが表示されます。

  4. ボタンを右クリックして「追加先」を選択し、適切な位置を選択します。

    ヒント:

    または、マウスを使用してボタンを選択して、「レイアウト」タブの適切な位置までドラッグします。

    プロパティ・エディタの右ペインにボタン属性が表示されます。属性は、グループに編成されます。

    グループまたは属性を検索するには:

    • グループまたは属性の検索 - 「フィルタ・プロパティ」フィールドにキーワードを入力します。プロパティ・エディタにグループまたは属性が表示されます。デフォルトの表示に戻すには、キーワードを削除します。

    • グループに移動 - 「グループに移動」をクリックしてグループを選択します。デフォルトの表示に戻すには、「グループに移動」を再度クリックして、「すべて開く」を選択します。

  5. プロパティ・エディタで該当する属性を編集します。

    ヒント:

    属性についてさらに学習するには、プロパティ・エディタで属性を選択し、中央ペインで「ヘルプ」タブをクリックして、参照してください。

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

13.3.3 ボタンの編集

ページ・デザイナでボタンを編集します。

ページ・デザイナでリージョン・ボタンを編集するには:

  1. ページ・デザイナでページを表示します。
    1. ワークスペースのホームページで、「アプリケーション・ビルダー」アイコンをクリックします。
    2. アプリケーションを選択します。
    3. ページを選択します。
    ページ・デザイナが表示されます。
  2. 「レンダリング」タブまたは「レイアウト」タブのいずれかで、編集するボタンを選択します。

    プロパティ・エディタの右ペインにボタン属性が表示されます。属性は、グループに編成されます。

    グループまたは属性を検索するには:

    • グループまたは属性の検索: 「フィルタ・プロパティ」フィールドにキーワードを入力します。プロパティ・エディタにグループまたは属性が表示されます。デフォルトの表示に戻すには、キーワードを削除します。

    • 「グループに移動」の使用: 「グループに移動」をクリックして、グループを選択します。デフォルトの表示に戻すには、「グループに移動」を再度クリックして、「すべて開く」を選択します。

  3. ボタン属性を編集します。

    ノート:

    属性のヘルプを表示するには、プロパティ・エディタで属性を選択し、中央ペインで「ヘルプ」タブをクリックします。

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

13.3.4 ボタンを使用したブランチ処理について

ボタンを使用したブランチ処理について学習します。

各ページには、任意の数のブランチを含めることができます。ブランチは、アプリケーションの他のページまたはURLにリンクします。Oracle APEXでは、ページ・プロセス中の様々な時点でブランチが考慮されます。プロセス前、計算前、検証前およびプロセス後のどの時点でブランチするかを選択できます。アプリケーション・ビルダーの他のコントロールと同様に、ブランチ処理には条件を設定できます。たとえば、ユーザーがボタンをクリックした場合にブランチできます。ブランチを作成する場合は、ブランチを特定のボタンに関連付けます。ブランチは、ユーザーがボタンをクリックした場合にのみ検討されます。

13.3.5 ボタン名とREQUESTの関係について

「送信」ボタン(ページの送信のアクションが指定されたボタン)に付けた名前によって、ページの送信時に組込み属性REQUESTの値が決まります。

バインド変数:REQUESTを使用して、PL/SQL内のREQUESTの値を参照できます。このバインド変数を使用して、ユーザーがクリックするボタンに応じてプロセス、検証またはブランチを条件付きで実行できます。ユーザーがボタンをクリックした際に実行されるプロセスを作成することもできます。また、より複雑な条件も使用できます。次に例を示します。

If :REQUEST in ('EDIT','DELETE') then ...
If :REQUEST != 'DELETE' then ...

これらの例では、「EDIT」および「DELETE」という名前のボタンが存在すると想定します。この構文は、PL/SQL式の条件にも使用できます。ただし、ボタン名の大/小文字が保持されることに注意してください。ボタン名をLOGINに指定した場合、名前「Login」を検索するリクエストは失敗します。次に例を示します。

<input type="BUTTON" value="Finish" onclick="apex.submit('Finish');">

この例では、FinishREQUESTの名前で、大/小文字が区別されます。

13.3.6 ボタンの条件付き表示

ボタンを条件付きで表示するには、ページ・デザイナで「サーバー側の条件」属性を編集します。

ボタンを条件付きで表示するには:

  1. ページ・デザイナでページを表示します。
    1. ワークスペースのホームページで、「アプリケーション・ビルダー」アイコンをクリックします。
    2. アプリケーションを選択します。
    3. ページを選択します。
    ページ・デザイナが表示されます。
  2. 「レンダリング」タブまたは「レイアウト」タブのいずれかで、編集するボタンを選択します。

    プロパティ・エディタの右ペインにボタン属性が表示されます。属性は、グループに編成されます。

    グループまたは属性を検索するには:

    • グループまたは属性の検索: 「フィルタ・プロパティ」フィールドにキーワードを入力します。プロパティ・エディタにグループまたは属性が表示されます。デフォルトの表示に戻すには、キーワードを削除します。

    • 「グループに移動」の使用: 「グループに移動」をクリックして、グループを選択します。デフォルトの表示に戻すには、「グループに移動」を再度クリックして、「すべて開く」を選択します。

  3. サーバー側の条件を構成します。
    1. 「サーバー側の条件」グループを検索します。
    2. サーバー側の条件、タイプ: このコンポーネントをレンダリングまたは処理するために満たす必要がある条件タイプを選択します。次の表示内容は、選択したタイプによって異なります。
      次に表示される内容は、「サーバー側の条件」、「タイプ」によって異なります。
    3. 残りの属性を構成します。

      ヒント:

      属性についてさらに学習するには、プロパティ・エディタで属性を選択し、中央ペインで「ヘルプ」タブをクリックして、参照してください。

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

13.3.7 保存されていない変更についてユーザーに警告するためのボタン属性の構成

「保存されていない変更の警告」属性を使用して、ユーザーがページから移動しようとしたときに、保存されていない変更についてユーザーに警告します。

「保存されていない変更の警告」属性を構成するには:

  1. ページ・デザイナでページを表示します。
    1. ワークスペースのホームページで、「アプリケーション・ビルダー」アイコンをクリックします。
    2. アプリケーションを選択します。
    3. ページを選択します。
    ページ・デザイナが表示されます。
  2. 「レンダリング」タブまたは「レイアウト」タブのいずれかで、編集するボタンを選択します。

    プロパティ・エディタの右ペインにボタン属性が表示されます。属性は、グループに編成されます。

    グループまたは属性を検索するには:

    • グループまたは属性の検索 - 「フィルタ・プロパティ」フィールドにキーワードを入力します。プロパティ・エディタにグループまたは属性が表示されます。デフォルトの表示に戻すには、キーワードを削除します。

    • グループに移動 - 「グループに移動」をクリックしてグループを選択します。デフォルトの表示に戻すには、「グループに移動」を再度クリックして、「すべて開く」を選択します。

  3. 動作、保存されていない変更の警告: 次のいずれかを選択します。
    • ページのデフォルトc「保存されていない変更の警告」がページ・レベルで有効化されている場合に、ボタンがクリックされたときに保存されていない変更をチェックします。
    • チェックしない: 保存されていない変更のチェックは、ボタンがクリックされたときに実行されません。この設定は、「取消」、「削除」および「変更の適用」ボタンで使用します。
  4. 「保存」をクリックします。

ヒント:

「保存されていない変更の警告」属性は、apex.page.warnOnUnsavedChanges APIを使用して実装されます。

13.3.8 ボタンの確認ダイアログの表示

「確認の要求」属性を有効にしてボタンをクリックした後に、確認ダイアログを表示します。

「確認の要求」属性を有効にすると、ボタンがクリックされた後に確認ダイアログが表示されます。ボタン・アクションは、ページの送信、別のページへのリダイレクト、または動的アクションの起動のいずれであっても、ユーザーがアクションを確認するまで遅延されます。ユーザーが取り消した場合、アクションは実行されません。ダイアログ・メッセージを構成し、「情報」、「警告」、「危険」、「成功」などのスタイル・オプションを適用できます。ダイアログの「確認」ボタンのラベルは、実際のボタン・ラベルと一致します。

ボタンの確認ダイアログを表示するには:

  1. ページ・デザイナでページを表示します。
    1. ワークスペースのホームページで、「アプリケーション・ビルダー」アイコンをクリックします。
    2. アプリケーションを選択します。
    3. ページを選択します。
    ページ・デザイナが表示されます。
  2. 「レンダリング」タブまたは「レイアウト」タブのいずれかで、編集するボタンを選択します。

    プロパティ・エディタの右ペインにボタン属性が表示されます。属性は、グループに編成されます。

    グループまたは属性を検索するには:

    • グループまたは属性の検索 - 「フィルタ・プロパティ」フィールドにキーワードを入力します。プロパティ・エディタにグループまたは属性が表示されます。デフォルトの表示に戻すには、キーワードを削除します。

    • グループに移動 - 「グループに移動」をクリックしてグループを選択します。デフォルトの表示に戻すには、「グループに移動」を再度クリックして、「すべて開く」を選択します。

  3. 動作、確認の要求 - この属性を有効にします。
    「確認」グループが表示されます。
  4. 「確認」で属性を構成します。
    1. 確認、メッセージ - 確認ダイアログに表示するメッセージを入力します。この属性は置換(アプリケーション、ページ・アイテムまたはシステム変数)をサポートします。
    2. 確認、スタイル - ダイアログのスタイルを選択します。オプションは次のとおりです。
      • デフォルト

      • 情報

      • 警告

      • 危険

      • 成功

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