Oracle Application Expressには、モーダルおよび非モーダル・ダイアログ・ページに対するサポートが提供されています。モーダルまたは非モーダル・ダイアログ・ページは、テンプレート・タイプが「ダイアログ・ページ」のページ・テンプレートが、カレント・アプリケーション・テーマに1つ以上含まれている場合にのみサポートされます。
親トピック: データベース・アプリケーションのページの管理
新しいページを作成するときに、ウィザードによって、ページ・モードを選択するプロンプトが表示されます。ページ・モードによって、ページが標準アプリケーション・ページであるかダイアログ・ページであるかが決まります。Oracle Application Expressは、次の2つのダイアログ・ページ・タイプをサポートしています。
モーダル・ダイアログ - モーダル・ダイアログは、同じブラウザ・ウィンドウ内に配置されるオーバーレイ・ウィンドウです。モーダル・ダイアログは、ユーザーが終了して閉じるまで、アクティブでフォーカスされたままです。モーダル・ダイアログがアクティブである間は、ダイアログを閉じるまでユーザーは残りのページと対話できません。
非モーダル・ダイアログ - 非モーダル・ダイアログは、個別のポップアップ・ブラウザ・ウィンドウを表示します。ユーザーは、非モーダル・ダイアログおよびページのコンテンツと対話できます。リクエストされる情報が続行に必要でない場合に、非モーダル・ダイアログを使用します。このウィンドウ・タイプは、別の場所で作業が続いている間、開いたままにできます。
親トピック: ダイアログ・ページの作成
Oracle Application Expressには、ユニバーサル・テーマ - 42にダイアログ・ページ・テンプレートが含まれています。ページ・モードを「モーダル」または「非モーダル」に設定すると、Oracle Application Expressは自動的にデフォルトのダイアログ・ページ・テンプレートを使用します。この項では、テーマにダイアログ・テンプレートが含まれていない場合にそれを作成する方法と、ダイアログ・テンプレート属性を編集する方法について説明します。
既存のアプリケーションを使用し、テーマにそのようなダイアログ・ページ・テンプレートが含まれない場合は、ダイアログ・ページ・テンプレートを作成する必要があります。最初から作成できますが、最も簡単な方法は既存のダイアログ・テンプレートをコピーすることです。
ダイアログ・ページ・テンプレートを作成するには、次のステップを実行します。
サンプル・データベース・アプリケーションからダイアログ・ページ・テンプレートをコピーします。
ワークスペースのホームページで、「アプリケーション・ビルダー」アイコンをクリックします。
テンプレートをコピーするアプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テンプレート」を選択します。
「作成」をクリックします。
テンプレートの作成ウィザードで、次のステップを実行します。
テンプレート・タイプ - 「ページ」を選択して、「次へ」をクリックします。
作成方法 - 「既存のテンプレートのコピーとして」を選択して、「次へ」をクリックします。
コピー元 - 「サンプル・データベース・アプリケーション」を選択して、「次へ」をクリックします。
テーマの指定 - コピー元のテーマおよびコピー先のテーマを選択して、「次へ」をクリックします。
新規テンプレート - 「モーダル・ダイアログ」テンプレートを探します。「コピー」で、「はい」を選択します。
「ページ・テンプレートのコピー」を選択して作成します。
ダイアログ・ページ・テンプレートがカレント・テーマでアクティブになっていることを確認します。デフォルトのページ・テンプレートの選択を参照してください。
親トピック: ダイアログ・ページ・テンプレートの使用
ダイアログ・ページ・テンプレートには、ダイアログ・ページの初期化、クローズおよび取消を処理するJavaScriptファンクション・コールが含まれています。ダイアログ・ページ・テンプレートを作成する場合は、これらおよび他のダイアログ・ページ・テンプレート属性を定義する必要があります。
親トピック: ダイアログ・ページ・テンプレートの使用
ページ・デザイナでダイアログとしてページを定義するには、次のステップを実行します。
関連項目:
親トピック: ダイアログ・ページの作成
ダイアログ・ページに「取消」ボタンが含まれる場合は、そのボタンのクリックに基づいた動的アクションを生成し、そのTrueアクション・イベントを「ダイアログを取り消す」に設定する必要があります。この動的アクションは、ページ・テンプレート(apex.navigation.dialog.cancel
)に含まれる取消のJavaScriptコールを使用して、ダイアログの取消を処理します。
関連項目:
親トピック: ダイアログ・ページの作成
「ダイアログを閉じる」ページ・プロセスを作成することによって、Oracle Application Expressでダイアログ・ページを閉じます。以前のリリースでは、このページ・プロセスは「ポップアップ・ウィンドウを閉じる」
と呼ばれていました。このダイアログは、ページ・テンプレート(apex.navigation.dialog.close)
に含まれるクローズのJavaScriptコールを使用して、ダイアログのクローズを処理します。ページ・プロセスは、親ページで参照することがあるダイアログ・ページ・アイテムの戻りもサポートしています。例を表示するには、サンプル・データベース・アプリケーションの任意のダイアログ・ページを編集します。
ヒント:
「ダイアログを閉じる」動的アクションでダイアログ・ページを閉じることもできます。動的アクションとプロセスの両方が、ダイアログ・ページ・アイテムの戻りをサポートしています。ページを送信する必要がある場合はページ・プロセスを使用し、ページを送信する必要がない場合は動的アクションを使用します。両方とも、最終的にはクローズのJavaScriptコールをコールします。または、ダイアログ・ページを閉じて、ブランチで指定したページにリダイレクトするページ・ブランチを作成できます。
ダイアログ・ページを開くには、ボタンまたはリンクを使用します。ダイアログ・ページでは、次のブランチング・オプションがサポートされています。
ダイアログ・ページからダイアログ・ページへの場合。
1つのダイアログ・ページから別のダイアログ・ページに、ブランチできます。
両方のページは、「モーダル・ダイアログ」のような同じページ・モードで、ダイアログのChained属性は「はい」に設定されています。Chained属性を「はい」に設定すると、多くの内部Application Expressウィザードで表示されるチェーンまたはネスト・ダイアログがサポートされます。チェーンまたはネスト・ダイアログを使用すると、ダイアログ・ウィンドウを再度利用して各ページを表示できます。
ダイアログ・ページから標準・ページの場合。
ダイアログ・ページから標準・ページにブランチすると、ダイアログが閉じられ、ユーザーはブラウザ内の新しいページに移動します。新しいページは、親(または起動)ページ、もしくはアプリケーション内の別の標準ページです。
親トピック: ダイアログ・ページの作成
ダイアログ・ページで「ダイアログを閉じる」ページ・プロセスを生成した場合、新しい「ダイアログのクローズ」
動的アクション・イベント・タイプを使用して、親ページにリフレッシュ・アクションを実装する必要があります。「値の設定」のTrueアクションを作成するとき、タイプ設定「ダイアログ戻りアイテム」を使用し、ダイアログの戻りアイテムに基づいて単一の値が設定されるようにできます。
例を表示するには、サンプル・データベース・アプリケーションの製品のページに移動します。製品のページで、「Create Product」ボタンにはダイアログを起動する動的アクションが関連付けられています。ダイアログを閉じると、「ダイアログのクローズ」
動的アクションをトリガーします。定義するすべてのTrueアクションにこのタイプの動的アクションを使用できます。この例では、親ページのレポートをリフレッシュしてページを送信します。
ヒント:
親ページの部分ページ・リフレッシュを行う場合は、ダイアログを閉じるときの動的アクションを実装します(たとえば、レポート・ページおよびフォーム・ページのデータをモーダル・ダイアログ・フォームで編集し、閉じるときにのみレポートがリフレッシュされるようにする場合)。対照的に、マルチ・ステップのモーダル・ウィザードがある場合や、ダイアログを閉じるときに可能なターゲットページが複数ある場合は、ブランチ処理が最適な方法となります。