このセクションでは、アプリケーション・ビルダーを使用するために重要な前提知識について説明します。Oracle HTML DBでは、アプリケーション・ビルダーを使用して、動的にレンダリングされたアプリケーションを構築します。
内容は次のとおりです。
アプリケーションは、タブ、ボタンまたはハイパーテキスト・リンクを使用して相互にリンクされた、データベース・ドリブンのWebページのコレクションです。アプリケーション内のページは、共通のセッション・ステート定義および認証方式を共有します。アプリケーション・ビルダーは、アプリケーションを構成するページを構築するためのツールです。
アプリケーション・ビルダーにアクセスするには、次のステップを実行します。
Oracle HTML DBにログインします。
「作業領域」ホームページが表示されます。
アプリケーション・ビルダーのホームページを表示するには、次のいずれかの操作を実行します。
「アプリケーション・ビルダー」アイコンをクリックしてアプリケーション・ビルダーのホームページにドリルダウンする。
アイコンの右側にある下矢印をクリックしてプルダウン・メニューを表示する。次に、該当するメニュー・オプションを選択する。
注意: 一貫性を保つため、このドキュメントでは、ナビゲーションを説明する際にプライマリ・ナビゲーション・パス(またはドリルダウン方式)を使用します。 |
アプリケーション・ビルダーのホームページには、インストールまたは作成したすべてのアプリケーションが表示されます。
ページ上部のコントロールを使用して、次の操作を実行できます。
アプリケーションの検索。「アプリケーション」フィールドにキーワードを入力し、「実行」をクリックします。すべてのアプリケーションを表示するには、「アプリケーション」フィールドを空のままにして「実行」をクリックします。「表示」リストから選択して、表示する行数を制御します。
ビューの変更。デフォルトでは、各アプリケーションは大きいアイコンとして表示されます。「ビュー」リストから選択して、ページの外観を変更できます。使用可能なビュー・オプションは次のとおりです。
アイコン(デフォルト): 各アプリケーションをアプリケーション名で識別される大きいアイコンとして表示します。
詳細: 各アプリケーションをレポートで1行に表示します。各行には、アプリケーションID、アプリケーション名、アプリケーションの最終更新日およびアプリケーションの最終更新者が含まれます。
「表示」リストから選択して、表示するアプリケーション数を制御できます。
アプリケーションのインポート。エクスポートしたアプリケーション・ファイルをインポートするには、「インポート」をクリックします。
アプリケーションの作成。新しいアプリケーションを作成するか、デモンストレーション・アプリケーションをインストールするには、「作成」をクリックします。
アプリケーションの表示。特定のアプリケーションを表示するには、アプリケーション・アイコンまたはアプリケーション名をクリックします。
特定のアプリケーションを表示するには、アプリケーション・ビルダーのホームページでそのアプリケーションを選択します。アプリケーションのホームページが表示されます。アプリケーションID、アプリケーション名および解析対象スキーマがページの上部に表示されます。
次に、次の4つの大きいアイコンが表示されます。
アプリケーションの実行: カレント・アプリケーションのページをHTML DBエンジンに送信し、表示可能なHTMLをレンダリングします。
属性の編集: 標準属性(アプリケーション全体に共通の属性)、セキュリティ属性およびグローバリゼーション属性にアクセスできる「アプリケーション属性」ページにリンクします。
共有コンポーネント: アプリケーション内のすべてのページに表示または適用できる共有コンポーネントおよびユーザー・インタフェース・コントロールのリストにリンクします。
エクスポート/インポート: 「エクスポート/インポート」ウィザードにリンクします。 アプリケーション全体と関連ファイル(カスケード・スタイルシート、イメージ、静的ファイル、スクリプト・ファイル、テーマ、ユーザー・インタフェースのデフォルト値、作業領域など)をインポートおよびエクスポートするには、このウィザードを使用します。
検索バーがページの中央に表示されます。この検索バーを使用して次の操作を実行できます。
ページIDまたはページ名の検索。 「ページ」フィールドに大/小文字を区別しないキーワードまたは文字列を入力し、「実行」をクリックします。アプリケーションのすべてのページを表示するには、「ページ」フィールドを空のままにして「実行」をクリックします。「行」リストから選択して、表示する行数を制御します。
ページ・ビューの変更。デフォルトでは、各ページは大きいアイコンとして表示されます。「ビュー」リストから選択して、ページの外観を変更できます。「表示」リストから選択して、表示するページ数を制御できます。
「ビュー」リストから選択して、ページの表示方法を制御できます。使用可能なビュー・オプションは次のとおりです。
アイコン(デフォルト): 各ページをページ名で識別される大きいアイコンとして表示します。
詳細: 各ページをレポートで1行に表示します。各行には、ページID、ページ名、ページの最終更新日およびページの最終更新者が含まれます。
このビューには「ロック」アイコンと「実行」アイコンも含まれています。アプリケーション開発中の競合を回避するには、「ロック」アイコンを使用します。ページをHTML DBエンジンに送信し、表示可能なHTMLをレンダリングするには、「実行」アイコンをクリックします。
「タスク」リストがアプリケーションのホームページの右側に表示されます。
「タスク」リストには次のリンクが含まれます。
「このアプリケーションの削除」: カレント・アプリケーションを削除します。詳細は、「アプリケーションの削除」を参照してください。
ページ・グループの管理: 「ページ・グループ」ページへリンクします。ページをページ・グループとして編成すると、アプリケーション内のページに簡単にアクセスできるようになります。詳細は、「ページのグループ化」を参照してください。
ページ・ロックの管理: 「ロックされたページ」ページへリンクします。アプリケーションのページをロックすると、アプリケーション開発時の競合を回避できます。詳細は、「ページのロックおよびロック解除」を参照してください。
アプリケーション・レポートの表示: アプリケーションのサマリー・レポートへのリンクが表示されます。詳細は、「アプリケーション・レポートの表示」を参照してください。
アプリケーション属性は、アプリケーション全体に適用されます。アプリケーションを作成した後、アプリケーション属性を確認し、必要に応じて更新します。
このセクションの構成は次のとおりです。
標準アプリケーション属性は、「アプリケーション属性の編集」ページに表示されます。これらの属性を使用して、アプリケーションの名前および可用性と定義済の置換文字列を制御します。また、「アプリケーション属性の編集」ページには、定義済のビルド・オプション、関連付けられたテーマ、テンプレートのデフォルトおよびコンポーネントのデフォルトが表示されます。必要な値には赤いアスタリスク(*)が付いています。
このセクションの構成は次のとおりです。
アプリケーション属性を編集するには、次のステップを実行します。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「属性の編集」をクリックします。
「アプリケーション属性」ページが表示されます。
「標準属性の編集」をクリックします。
「アプリケーション属性の編集」ページが表示されます。
次のセクションでは、「アプリケーション属性の編集」ページで使用可能な属性について説明します。
このセクションの構成は次のとおりです。
名前を使用して、アプリケーションの基本特性(アプリケーション名、英数字の別名(オプション)、バージョン番号、アプリケーション所有者など)を定義します。表5-1に、すべてのアプリケーション定義属性を示します。
表5-1 アプリケーション定義属性
可用性属性を使用して、アプリケーションのステータスとビルド・ステータスを定義し、アプリケーションを管理します。たとえば、ステータス「制限されたアクセス」を選択すると、アプリケーションにアクセスして実行できるユーザーを指定できます。表5-2に、この属性を示します。
表5-2 アプリケーションの可用性の属性
属性 | 説明 |
---|---|
ステータス | アプリケーションが使用可能または使用不可であることを指定します。オプションは次のとおりです。
|
ビルド・ステータス | カレント・アプリケーションのビルド・ステータスを指定します。
参照: Oracle HTML DB管理者としてのアプリケーション・ビルド・ステータスの管理については、「アプリケーションのビルド・ステータスの変更」を参照してください。 |
使用できないアプリケーションに対するメッセージ | ステータスを「使用不可」、「使用不可(PL/SQLで表示されるステータス)」または「使用不可(URLにリダイレクト)」に設定すると、この属性に入力したテキストが表示されます。ステータスを「使用可能」に設定すると、この属性に入力したテキストは表示されません。 |
カンマ区切りのユーザー・リスト限定(ステータスが「制限されたアクセス」の場合のみ) | この属性はステータス「制限されたアクセス」と組み合せて使用します。ステータスを「制限されたアクセス」に設定すると、この属性に示されているユーザーのみがアプリケーションを実行できます。この属性を使用するには、次のステップを実行します。
|
グローバル通知属性を使用して、アプリケーション・ユーザーのシステム・ステータスと通信できます。たとえば、スケジュールされた停止時間をユーザーに通知したり、アプリケーションの可用性に関するその他のメッセージをユーザーに送信する場合に使用できます。 アプリケーションで使用されているページ・テンプレートに#GLOBAL_NOTIFICATION#
置換文字列が含まれている場合は、ここに入力したテキストが置換文字列のかわりに表示されます。
グローバル通知を作成するには、次のステップを実行します。
ページ・テンプレートに#GLOBAL_NOTIFICATION#
置換文字列を含めます。
「アプリケーション属性の編集」ページにナビゲートし、グローバル通知属性にメッセージを入力します。
「変更の適用」をクリックします。
このフィールドを使用して、アプリケーションの静的置換文字列を定義します。静的置換文字列は、アプリケーション内の多くの箇所に存在するフレーズまたはラベルに使用できます。静的置換文字列を定義すると、このページで定義する置換文字列を1回変更するだけで、アプリケーションの複数の場所にあるテキスト文字列をまとめて変更できます。
これらの属性を使用して、このアプリケーションのロゴとして使用するイメージを識別します。「イメージ」で、イメージ名を識別します。「イメージ」属性でイメージを識別し、#LOGO#
置換文字列をページ・テンプレートに含めると、HTML DBエンジンによってイメージ・タグが生成されます。「ロゴ・イメージ属性」を使用して、ロゴ・イメージの特定のイメージ属性を識別します。次に例を示します。
width="100" height="20" alt="Company Logo"
既存のビルド・オプションを表示します。ほとんどのアプリケーション属性は、ビルド・オプション属性を持ちます。特定のインストールからそのオブジェクトを排除する場合以外は、ビルド・オプションを指定しないでください。ビルド・オプションは、INCLUDE
またはEXCLUDE
という2つの値をとることができます。属性を含めるように指定すると、HTML DBエンジンは、実行時にその属性を認識します。ただし、属性を排除するように指定すると、HTML DBエンジンは、その属性を存在しないものとして処理します。
アプリケーションに適用される現行のテーマを表示します。テーマは、アプリケーション全体のレイアウトおよびスタイルの定義に使用できるテンプレートのコレクションです。各テーマには多数のテンプレートが集められ、アプリケーションに必要となる可能性があるすべてのユーザー・インタフェース・パターンが収録されています。
「テンプレートのデフォルト」には、このアプリケーションのデフォルトのテンプレートが表示されます。アプリケーション・レベルで新しいテンプレートを指定するには、次のいずれかの操作を実行します。
新しいテーマを選択します。
「テーマを定義」ページで新しいデフォルトのページ・テンプレートを選択します。
「ページ属性」ページの「ページ・テンプレート」リストから選択しても、このデフォルトを上書きできます。
表5-3に、カレント・アプリケーションのテンプレートのデフォルト属性を示します。
表5-3 アプリケーション・テンプレートのデフォルト属性
属性 | 説明 |
---|---|
デフォルト・ページ・テンプレート | ページを表示するためのデフォルトのページ・テンプレートを指定します。「ページ属性」ページの「ページ・テンプレート」リストから選択すると、この値を上書きできます。
参照: 「ページ属性の編集」 |
出力モード・ページ・テンプレート | HTML DBエンジンが「印刷用」モードの場合に使用するテンプレートを指定します。
HTML DBエンジンをコールしてページをレンダリングするときに、指定した出力モード・ページ・テンプレートを使用してページを表示する必要があるかどうかを指定するオプションがあります。 「はい」に指定すると、印刷用テンプレートを使用してページが表示されます。HTML DBエンジンは、HTMLフォーム・フィールド内のすべてのテキストをテキストとして表示します。印刷用テンプレートには、 参照: 「印刷用ページの最適化」 |
エラー・ページ・テンプレート | (オプション)インライン表示されるエラーではなく、個別のページに表示されるエラーに使用するページ・テンプレートを指定します。 |
コンポーネントのデフォルトは、ウィザードの実行時に使用するデフォルトのテンプレートを指定します。これらの設定は、各コントロールまたはコンポーネントの属性ページで上書きできます。表5-4に、カレント・アプリケーションのコンポーネントのデフォルトを示します。
表5-4 コンポーネントのデフォルト
属性 | 説明 |
---|---|
カレンダ | 新しいカレンダを作成する場合に使用するデフォルトのカレンダ・テンプレートです。 |
ラベル | 新しいページ・アイテムを作成する場合に使用するデフォルトのラベル・テンプレートです。 |
レポート | 新しいレポートを作成する場合に使用するデフォルトのレポート・テンプレートです。 |
リスト | リストを作成する場合に使用するデフォルトのテンプレートです。 |
ブレッドクラム | ブレッドクラムを作成する場合に使用するデフォルトのテンプレートです。 |
ボタン | テンプレートによって制御される新しいボタンを作成する場合に使用するデフォルトのテンプレートです。 |
リージョン | 新しいリージョンを作成する場合に使用するデフォルトのリージョン・テンプレートです。 |
チャート・リージョン | チャートを作成する場合に使用するデフォルトのリージョン・テンプレートです。 |
フォーム・リージョン | フォームを作成する場合に使用するデフォルトのリージョン・テンプレートです。 |
レポート・リージョン | レポートを作成する場合に使用するデフォルトのリージョン・テンプレートです。 |
表形式フォーム・リージョン | 表形式フォームを作成する場合に使用するデフォルトのリージョン・テンプレートです。 |
ウィザード・リージョン | 新しいウィザード・コンポーネントを作成する場合に使用するデフォルトのリージョン・テンプレートです。 |
ブレッドクラム・リージョン | 新しいブレッドクラムを作成する場合に使用するデフォルトのリージョン・テンプレートです。 |
リスト・リージョン | 新しいリストを作成する場合に使用するデフォルトのリージョン・テンプレートです。 |
アプリケーションに対するセキュリティを提供するには、「セキュリティ属性の編集」ページで属性を編集します。選択したセキュリティ属性は、アプリケーション内のすべてのページに適用されます。
このセクションの構成は次のとおりです。
「セキュリティ属性の編集」ページにアクセスするには、次のステップを実行します。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「属性の編集」をクリックします。
「アプリケーション属性」ページが表示されます。
「セキュリティ属性の編集」をクリックします。
「セキュリティ属性の編集」ページが表示されます。
次のセクションでは、「セキュリティ属性の編集」ページで使用可能な属性について説明します。
このセクションの構成は次のとおりです。
認証は、ユーザーがアプリケーションにアクセスする前に、そのユーザーの本人確認を行うプロセスです。アプリケーションに対して複数の認証スキームを定義しても、一度にカレントに設定できるスキームは1つだけです。表5-5に、認証で使用可能な属性を示します。
表5-5 認証属性
属性 | 説明 |
---|---|
ホーム・リンク | URL、またはアプリケーションを実行するときに実行されるプロシージャを指定します。
たとえば、ホーム・リンクに、アプリケーションのホームページの検索に使用する相対URLを含めることができます。たとえば、 この属性を使用してプロシージャに名前を付けることもできます。たとえば、アプリケーション・ホームとして機能するHTMLページをコールする 注意: 認証後に表示されるページを決定するために「ホーム・リンク」属性は使用しないでください。認証後に表示されるページは、アプリケーションの認証スキーム内の他のコンポーネントによって決定されます。 参照: 「HOME_LINK」 |
ログインURL | HTML内の&LOGIN_URL.またはテンプレート内の#LOGIN_URL#置換文字列を置換します。
参照: 「LOGIN_URL」および「認証スキームの作成」 |
パブリック・ユーザー | データベース・アクセス記述子(DAD)を介してデータベースへの接続に使用するOracleスキーマ(ユーザー)を指定します。デフォルト値は、HTMLDB_PUBLIC_USER です。
ユーザーの本人確認が行われると、HTML DBエンジンが組込み置換文字列
カレント・アプリケーション・ユーザー( たとえば、ユーザーがパブリック・ユーザーの場合はログイン・ボタンを表示し、ユーザーがパブリック・ユーザーでない場合にはログアウト・リンクを表示するように設定できます。この値を参照するには、 |
認証スキーム | 新しい認証スキームを定義するには、このボタンをクリックします。
参照: 「認証の仕組みの理解」および「認証スキームの作成」 |
認可は、ユーザー権限に基づいて、特定のコントロールまたはコンポーネントへのユーザーのアクセスを制御します。「認可スキーム」リストから選択して、アプリケーションの認可スキームを指定できます。アプリケーション全体に割り当てることができる認可は1つのみです。ただし、認可スキームは、個々のページ、ページ・コントロール(リージョン、ボタン、アイテムなど)または共有コンポーネント(メニュー、リスト、タブなど)に割り当てることができます。
新しい認可スキームを作成するには、「認可スキームの定義」をクリックします。
認可スキームはバイナリ操作で、結果は成功(true)または失敗(false)のいずれかになります。 成功すると、コンポーネントまたはコントロールを表示できます。 失敗すると、コンポーネントまたはコントロールの表示または処理のいずれも行うことはできません。認可スキームをページに割り当てることに失敗すると、そのページではなくエラー・メッセージが表示されます。ただし、認可スキームをページ・コントロール(リージョン、ボタン、アイテムなど)に割り当てる場合は、失敗してもエラー・ページは表示されません。かわりに、コントロールが表示されないか、またはその処理や実行が行われません。
カレント・アプリケーションのデータベース・スキーマを指定するには、解析対象スキーマを使用します。現行の作業領域がアクセスできるスキーマのみ選択できます。定義後は、アプリケーションによって発行されるすべてのSQLおよびPL/SQLコマンドが、定義したデータベース・スキーマの権限で実行されます。
セッション・ステート保護を有効にすると、ハッカーがアプリケーション内のURLを改ざんするのを防ぐことができます。URL改ざんにより、プログラム・ロジック、セッション・ステートの内容および情報プライバシーが悪影響を受ける可能性があります。
アプリケーションのセッション・ステート保護を有効または無効にするには、「セッション・ステート保護」リストから選択します。セッション・ステート保護を有効に設定すると、ページおよびアイテム・レベルで定義されたセッション・ステート保護コントロールがオンになります。
セッション・ステート保護を構成するには、「セッション・ステート保護の管理」をクリックします。
仮想プライベート・データベース(VPD)は、開発者がセキュリティ・ポリシーをデータベースの表およびビューに割り当てることができるApplication Program Interface(API)を提供します。開発者はPL/SQLを使用して、ストアド・プロシージャを含むセキュリティ・ポリシーを作成し、RDBMSパッケージをコールしてそのプロシージャを表またはビューにバインドできます。このようなポリシーは、データベース内に格納されているアプリケーション・データのコンテンツか、またはOracleデータベースが提供するコンテキスト変数に基づいています。これによって、VPDではアクセス・セキュリティ・メカニズムをアプリケーションから取り除き、集約できます。
このフィールドで入力したPL/SQLは、ユーザーの認証直後に実行されます。V('USER')
は、このファンクションからアクセス可能です。カレント・コールのセッション・ステートは、このコールが実行される時点ではまだ初期化されません。アプリケーションがVPDを使用して、同じデータベースで複数の顧客をサポートする必要がない場合は、この属性をNULLのままにしてください。
Oracle HTML DBでは、同時に複数の言語で実行可能なアプリケーションを開発できます。単一のOracle HTML DBアプリケーションを言語変換して、異なる言語に対応させることができます。「グローバリゼーション属性の編集」ページで属性を使用して、アプリケーションのプライマリ言語などのグローバリゼーション・オプションを指定します。
このセクションの構成は次のとおりです。
「グローバリゼーション属性の編集」ページにアクセスするには、次のステップを実行します。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
アプリケーション・ビルダーが表示されます。
「属性の編集」をクリックします。
「アプリケーション属性」ページが表示されます。
「グローバリゼーション属性の編集」をクリックします。
「グローバリゼーション属性の編集」ページが表示されます。
次のセクションでは、「グローバリゼーション属性の編集」ページで使用可能な属性について説明します。
アプリケーションを開発する言語を指定します。この言語が、すべての変換の元となるベース言語になります。たとえば、英語で作成されたアプリケーション100が、フランス語に変換され、アプリケーション101として公開されたとします。英語がアプリケーションのプライマリ言語になります。
アプリケーションに対するすべての変更は、ここで指定したプライマリ言語で行う必要があります。
Oracle HTML DBがアプリケーション言語を判別または派生する方法を指定します。アプリケーションのプライマリ言語は静的にする(Webブラウザの言語から派生される)か、またはユーザー・プリファレンスまたはアイテムから決定されるようにできます。 データベース言語の設定では、日付の表示方法と特定の情報のソート方法を決定します。
このオプションを使用すると、派生したブラウザ言語のサポートを無効にできます。アプリケーションのプリファレンスから派生したアプリケーション言語を指定するオプションも表示されます。
自動CSVエンコーディングでは、アプリケーションにおけるすべてのCSVレポート出力のエンコーディングが制御されます。 「自動CSVエンコーディング」のデフォルト値は「いいえ」です。 「自動CSVエンコーディング」が「はい」に設定されていると、CSVレポートの出力が、ローカライズされたデスクトップ・アプリケーションと互換性のあるキャラクタ・セットに適切に変換されます。 CSVエンコーディングのキャラクタ・セットは、「アプリケーション言語の派生元」の設定によって決定されます。
Oracle HTML DBのページのエンコーディングは、Oracle HTML DBへのアクセスに使用されるデータベース・アクセス記述子(DAD)のキャラクタ・セットによって決定されます。 たとえば、データベース・アクセス記述子のキャラクタ・セットがAL32UTF8の場合、Oracle HTML DBのインスタンスのすべてのアプリケーションにおけるすべてのページがUTF-8でエンコードされます。
デフォルトでは、レポート・リージョンからのCSV出力はデータベース・アクセス記述子と同じキャラクタ・セットでエンコードされます。 ただし、一部のデスクトップ・スプレッドシート・アプリケーションでは、クライアント側のデスクトップ・オペレーティング・システムのキャラクタ・セットでデータをエンコードする必要があります。 マルチバイト・データの場合は、レポート・リージョンからのCSV出力をデスクトップ・スプレッドシート・アプリケーションから開くと、文字化けすることがよくあります。 これは、CSV出力がそのデスクトップ・アプリケーションに必要なエンコーディングと異なる方法でエンコードされているためです。 「自動CSVエンコーディング」を有効にすると、この問題が解決されます。
たとえば、Oracle HTML DBアプリケーションでのユーザーの言語プリファレンスがde
の場合、CSVデータはデータベース・アクセス記述子のキャラクタ・セット設定にかかわらずWestern European Windows 1252
でエンコードされます。 ユーザーの言語プリファレンスがzh-cn
の場合、CSVデータは中国語(GBK)でエンコードされます。
ページは、Oracle HTML DBアプリケーションの基本的なビルディング・ブロックです。各ページにはボタン、フィールド(アイテム)およびアプリケーション・ロジック(またはプロセス)を配置できます。ページでは、条件付きナビゲーションを使用したあるページから次のページへのブランチ、計算の実行、検証(編集確認など)の実行、およびレポート、カレンダおよびチャートの表示を行うことができます。
このセクションの構成は次のとおりです。
ページ定義にアクセスすると、ページを定義するコントロールを表示、作成および編集できます。
既存のページのページ定義にアクセスするには、次のステップを実行します。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーション・ビルダーのホームページが表示されます。
アプリケーションを選択します。
アプリケーションのホームページが表示されます。
ページを選択します。
ページ定義が表示されます。
各ページ定義の上部にブレッドクラム・トレイルが表示されます。ブレッドクラム・トレイルは、Oracle HTML DBのすべてのページに表示されます。各ブレッドクラム・エントリは、カレント・アプリケーションの他のページに対する相対位置を示し、代替ナビゲーション・パスとして機能します。ブレッドクラム・エントリをクリックすると、即時に他のページに移動できます。
ページの右側にカレント・ページの識別番号(ID)が表示されます。このページ番号は、信号機に似ている小さなアイコンの横に表示されます。このアイコンは「ページの実行」アイコンと呼ばれます。このアイコンをクリックすると、カレント・ページが実行され、表示可能なHTMLにレンダリングされます。
次に、ページのナビゲーション・バーが表示されます。ページのナビゲーション・バーで使用可能なオプションは、次のとおりです。
ページ:カレント・ページの識別番号(ID)を表示します。他のページを直接表示するには、「ページ」フィールドにページIDを入力して「実行」をクリックします。前後のページにアクセスするには、矢印ボタンをクリックします。
ビュー:カレント・ページ・ビューを制御します。代替レポートを表示するには、リストから選択し、「実行」をクリックします。詳細は、「代替ページ・ビューへのアクセス」を参照してください。
「戻る」および「次へ」:これらのボタンは左山カッコ(<)と右山カッコ(>)の記号に似ています。前後のページIDに移動するには、これらのボタンをクリックします。
属性の編集: 「ページの属性」にリンクします。このページを使用して、ページ名やオプションの別名などの高レベルのページ属性を編集したり、定義済のタブ・セット、指定されたテンプレートおよび定義済の認可スキームの情報を表示することができます。詳細は、「ページ属性の編集」を参照してください。
作成:新しいページを作成するウィザードにリンクします。詳細は、「ページ定義からのページの作成」を参照してください。
ページ名および最終更新日がページのナビゲーション・バーの右側に表示されます。
各ページの定義は3つのセクションに分かれています。
「ページ・レンダリング」には、ページのレンダリング時に実行されるユーザー・インタフェース・コントロールとロジックが表示されます。
「ページ・プロセス」リストには、ページ・プロセス時に評価および実行されるロジック・コントロール(計算やプロセスなど)が表示されます。
「共有コンポーネント」には、アプリケーション内の複数のページからコールできる共通のコンポーネントが表示されます。
「開発者」ツールバーを使用すると、カレント・ページの編集、新しいページ、リージョンまたはページ・コントロールの作成、セッション・ステートの表示、編集リンクのオン/オフの切替えを簡単に実行できます。「アプリケーション属性の編集」ページで可用性ステータスを変更することによって、「開発者」ツールバーを表示するかどうかを制御できます。
「開発者」ツールバーは、次のリンクで構成されています。
Edit Application : アプリケーションのホームページにリンクします。詳細は、「アプリケーション・ビルダーのホームページの概要」を参照してください。
Edit Page: 現在実行されているページのページ定義にアクセスします。詳細は、「ページ定義の編集」を参照してください。
Create: 新しいページ、リージョン、ページ・コントロール(アイテム、ボタン、ブランチ、計算、プロセスまたは検証)または共有コントロール(ナビゲーション・バー・アイコン、タブ、LOV、リストまたはブレッドクラム)を作成するためのウィザードにリンクします。詳細は、「「開発者」ツールバーからのページの作成」を参照してください。
Session: カレント・ページのセッション・ステート情報を含む新しいウィンドウを表示します。詳細は、「セッション・ステートの表示」を参照してください。
Debug: ページのデバッグ・モードとデバッグなしモードを切り替えます。詳細は、「デバッグ・モードへのアクセス」を参照してください。
Show Edit Links: 「Show Edit Links」と「Hide Edit Links」を切り替えます。「Show Edit Links」をクリックすると、編集可能なページ上の各オブジェクトの横に編集リンクが表示されます。各編集リンクは、2つのコロン(::)に似ており、ナビゲーション・バー・アイテム、タブ、リージョン・タイトル、ボタン、アイテムの右側に表示されます。このリンクをクリックすると、オブジェクトを編集するための別のウィンドウが表示されます。
ページは、アプリケーションの基本的なビルディング・ブロックです。各ページには、ページID、名前、および通常はヘッダー、タイトル、フッターなどのテキスト属性が含まれます。ページ・コントロール(リージョン、アイテムおよびボタン)を作成して、ページにコンテンツを追加します。ページ・テンプレートおよびページ・リージョン・テンプレートは、各ページのルック・アンド・フィールを制御します。
このセクションの構成は次のとおりです。
各ページ定義は、コントール、コンポーネント、およびページを定義するアプリケーション・ロジックすべてに対する中央ナビゲーション・ポイントとして機能します。
タイトル(リージョン、ボタン・アイテム、計算、プロセスなど)を選択すると、定義したすべてのコントロールまたはコンポーネントのサマリー・ビューにアクセスできます。たとえば、「リージョン」を選択すると、カレント・ページで現在定義されているすべてのリージョンのサマリー・レポートが表示されます。このサマリー・ビューを使用して次の操作を実行できます。
使用可能なフィールドおよび選択リストから新しく選択して、一度に複数の属性を編集できます。
「編集」アイコンをクリックして、定義ページにリンクできます。
各ページ上部のボタンをクリックすると、他のサマリー・ビューにアクセスできます。サマリー・ビューの編集内容を保存するには、「変更の適用」をクリックします。
ページ定義で名前を選択して、特定のコントロールまたはコンポーネントの属性を表示することもできます。たとえば、ページ定義にCustomersという名前のリージョンが含まれているとします。リージョン名「Customers」をクリックすると、そのリージョンの属性ページが表示されます。
「コピー」アイコンおよび「作成」アイコンをクリックして、新しいコントロールまたはコンポーネントをコピーまたは作成できます。「作成」アイコンは、小さなページに重なっているプラス(+)記号のように見えます。「作成」アイコンをクリックすると、新しいコントロールまたはコンポーネントを作成できます。
「コピー」アイコンは、2つの小さなページが重なっているように見えます。「コピー」アイコンをクリックすると、既存のコントロールまたはコンポーネントのコピーを作成できます。
ページ属性は、特定のページにのみ適用されます。ページ属性には、ページ定義からアクセスします。
ページ属性を編集するには、次のステップを実行します。
ページ定義にナビゲートします。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
ページを選択します。
ページ定義が表示されます。
「ページ属性」ページが表示されます。必要な値には赤いアスタリスク(*)が付いています。
次のトピックでは、「ページ属性」ページ固有のセクションについて説明します。
次の属性を使用して、ページ名、英数字の別名(オプション)、関連付けられたページ・グループなど、カレント・ページの一般的な属性を定義します。 表5-6に、この属性を示します。
表5-6 ページ属性: 名前
属性 | 説明 |
---|---|
名前 | アプリケーション開発者のカレント・ページの名前を指定します。この名前は、ページIDおよびページ・タイトルとともに、多くのOracle HTML DBページおよびレポートで使用されます。 |
ページの別名 | このページの英数字の別名を入力します。この別名は、カレント・アプリケーション内で一意である必要があります。
たとえば、アプリケーション100のページ1で作業している場合、別名「 f?p=100:home |
グループ | このページと関連付けるページ・グループを指定します。ページ・グループは、機能に影響しませんが、開発者がアプリケーション内のページを管理するのに役立ちます。
参照: 「ページのグループ化」 |
次の属性を使用して、選択されるページ、標準タブ・セット、タイトル、カーソル・フォーカスなど、カレント・ページの一般的な表示属性を定義します。 表5-7に、この属性を示します。
表5-7 ページ属性: 表示属性
属性 | 説明 |
---|---|
ページ・テンプレート | このページの外観を制御するページ・テンプレートを選択します。ページ・テンプレートを選択すると、現行のテーマ内に定義されたデフォルト・ページ・テンプレートが上書きされます。 |
標準タブ・セット | このページに使用する標準タブ・セットを選択します。標準タブ・セットは、特定のページおよびページIDに関連付けられます。標準タブを使用すると、特定のページにユーザーをリンクできます。
参照: 「タブの作成」 |
タイトル | ブラウザ・ウィンドウのタイトル・バーに表示するタイトルを入力します。HTML DBエンジンは、ページ・テンプレートで使用される#TITLE# 置換文字列のかわりに、ここで指定するタイトルを使用します。このタイトルは、HTMLタグ<TITLE></TITLE> の間に挿入されます。
|
カーソル・フォーカス | カーソル・フォーカスをページの最初のフィールドに配置するかどうかを選択します。 |
この属性を使用して、ページ・テンプレート・ヘッダー内の#HEAD#
置換文字列を置換します。ここで入力する値は、HTML <HEAD>
タグの後に挿入されます。これらの属性の一般的な用途は次のとおりです。
この属性を使用して、ページのロード中にJavaScriptのコールなどのイベントを追加します。「ページのHTMLボディ属性」で、ページ・テンプレートの#ONLOAD#
置換文字列に置換されるJavaScriptまたはテキストを入力します。この機能を使用するには、ページ・テンプレートに#ONLOAD#
置換文字列が含まれている必要があります。
「ページのHTMLボディ属性」を使用して、開始タグ<BODY>
のコンテンツに書込みできます。通常のページ・テンプレートでは、次の例に示すとおり、開始の<body>
タグで#ONLOAD#
を使用する場合があります。
<html> <head> ... </head> <body #ONLOAD# >
これらの属性を使用して、カレント・ページの認可スキーム、認証およびURLアクセス保護を指定します。 表5-9に、この属性を示します。
表5-9 ページ属性: セキュリティ
「複製ページの送信を許可」リストを使用して、Oracle HTML DBユーザーがページを1行で繰り返し処理できるかどうかを指定します。重複するページ送信が繰り返し処理されないようにするには、この属性を「いいえ」に設定します。
重複するページ送信の例を次に示します。
ユーザーが「送信」ボタンを繰り返しクリックした場合
ブランチ・タイプ「ページにブランチ」を作成して、ユーザーがブラウザの再ロード・ボタンをクリックした場合
ビルド・オプションを使用すると、機能を有効または無効にできます。ほとんどのアプリケーション属性は、ビルド・オプション属性を持ちます。 特定の構成からそのページを排除する場合以外は、カレント・ページのビルド・オプションを指定しないでください。
ビルド・オプションは、INCLUDE
またはEXCLUDE
という2つの値をとることができます。属性を含めるように指定すると、HTML DBエンジンは、実行時にその属性をアプリケーション定義の一部として認識します。逆に、属性を排除するように指定すると、HTML DBエンジンは、その属性を存在しないものとして処理します。
この属性を使用して、カレント・ページのヘルプ・テキストを入力します。
ヘルプ・テキストは、ヘルプ・システムを使用して表示されます。このヘルプ・システムは開発する必要があります。特定のページのヘルプを表示するには、ヘルプ・テキストを表示するために作成したページからHTMLDB_APPLICATION.HELP
プロシージャをコールします。たとえば、次のようなナビゲーション・バー・アイコンを使用できます。
f?p=4000:4600:&APP_SESSION.::&DEBUG::LAST_STEP:&APP_PAGE_ID
ページ・レベル・ヘルプは、次の構文を使用したショートカットをサポートします。
"SHORTCUT_NAME"
ページ定義の「ページ・レンダリング」セクションを使用すると、定義されているリージョン、ボタン、アイテム、ページ・レンダリングの計算およびページ・プロセスの属性を指定できます。
リージョンはページのセクションで、ページ内のコンテンツのコンテナとして機能します。リージョンのコンテンツは、リージョン・ソースによって決まります。たとえば、リージョンには、定義したSQL問合せに基づくレポートまたは静的なHTMLが含まれる場合があります。
参照:
|
アプリケーションを設計する際、ボタンを使用してユーザーを特定のページまたはURLに移動させたり、情報をポストまたは処理することができます。ボタンは、事前定義されたリージョン・テンプレート位置またはフォーム内のアイテムに配置できます。
アイテムは、テキスト・フィールド、テキスト領域、パスワード、選択リスト、チェック・ボックスなどを示します。アイテム属性は、ページ上のアイテムの表示および動作に影響します。 たとえば、これらの属性は、ラベルの表示位置、アイテムの大きさおよびアイテムの表示位置(左右、上下)に影響します。
アイテムには、ページ・アイテムとアプリケーション・アイテムという2つのカテゴリが存在します。ページ・アイテムはページ上に配置され、「表示形式」、「ラベル」、「ラベル・テンプレート」などの関連付けられたユーザー・インタフェースのプロパティを持ちます。アプリケーション・アイテムはページに関連付けられないため、ユーザー・インタフェースのプロパティを持ちません。アプリケーション・アイテムは、グローバル変数として使用できます。
ページ定義の「ページ・プロセス」セクションで、計算、検証、プロセス、ブランチなどのアプリケーション・ロジックを指定します。通常、HTML DBエンジンは、ページ定義に表示された順序でこのロジックを実行します。
このセクションの構成は次のとおりです。
検証を宣言的に定義するには、検証方法を選択します。検証メッセージ・フィールドに、実際の検証の編集確認を入力します。検証が失敗した場合は、後続のページ・プロセスまたは計算が行われないことに注意してください。また、入力した検証は、選択した検証タイプと一貫性がある必要があることも注意してください。検証タイプの詳細は、オンライン・ヘルプを参照してください。
新しい検証を作成するには、次のステップを実行します。
注意: 検証に対して入力するテキストは、3,950文字以下にする必要があります。 |
該当するページ定義にナビゲートします。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
ページを選択します。
ページ定義が表示されます。
「検証」で、「作成」アイコンをクリックします。
検証レベルを選択します。アイテム・レベル検証は、1つのアイテムに固有です。ページ・レベル検証は、1つのアイテムに適用されるのではなく、ページ全体に適用されます。
アイテム・レベル検証を選択した場合、検証するアイテムを選択し、「次へ」をクリックします。
表5-10に示す検証方法を選択します。
表5-10 検証方法
検証方法 | 説明 |
---|---|
SQL | アイテム値をデータベース内のデータと比較します。
たとえば、SQL検証を使用して、フィールドに入力された姓がデータベースに存在しているかどうかを検証できます。 次のExists SQL検証では、フィールド名が SELECT 1 FROM customers WHERE last_name = :P1_LAST_NAME |
PL/SQL | 入力されたデータを検証するために複雑なロジックが必要な場合に有効です。
たとえば、住所が米国以外の場合に、ユーザーに州または都道府県の入力を求める住所フォームの検証を作成する必要があるとします。 次のPL/SQLを使用して、ブールを戻すファンクションとしてこの検証を作成できます。 BEGIN IF :P1_COUNTRY = 'US' AND :P1_PROVINCE IS NULL THEN RETURN FALSE; ELSE RETURN TRUE; END IF; END; 次のように、PL/SQL式として実装される同じ検証を作成することもできます。 NOT (:P1_COUNTRY='US' AND :P1_PROVINCE IS NULL); |
アイテム・レベルNULL | セッション・ステートのアイテム値がNULLかどうかを確認します。
たとえば、アイテム検証を作成し、「アイテムがNOT NULL」の検証方法を選択することで、ユーザーがフィールドに値を入力したことを検証できます。 |
アイテム文字列の比較 | アイテム値を特定の文字列と比較します。
アイテムの値をリテラル文字列と比較する文字列の比較検証がいくつかあります。 たとえば、検証タイプ「式1のアイテムが式2に含まれる」を選択して、指定した値リストに対してフィールドへのユーザー入力を検証します。 「式1」に、検証するアイテムの名前をコロンなしで入力します。次に例を示します。 P1_VALUE 「式2」に検証の対象とする文字列値を入力します。次に例を示します。 ABC/DEF/GHI |
正規表現 | 正規表現は、テキスト・パターンを記述するメソッドを提供します。 正規表現検証を使用すると、データ検証を実行できます。
たとえば、入力されたデータの文字列が6つの数字を含むグループで常に構成され、各グループがカンマで区切られていることを検証する場合は、次の正規表現検証を使用できます。 ^([[:digit:]]{6},)+$ この正規表現検証では、次のエントリは有効とみなされます。
ただし、次の表現は有効とみなされません。
|
SQL、PL/SQLおよびアイテム文字列の比較検証の場合、作成する検証のタイプを選択し、「次へ」をクリックします。
順序および検証名を指定し、「次へ」をクリックします。
検証方法に応じて、検証が失敗した場合に表示する検証またはメッセージ・テキストを入力します。「次へ」をクリックします。
この検証に適用される条件を定義し、「作成」をクリックします。
検証エラー・メッセージをインライン表示(検証が実行されたページで表示)するか、個別のエラー・ページで表示するかを選択できます。
検証エラー・メッセージの表示方法を定義するには、次のステップを実行します。
該当するページ定義にナビゲートします。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
ページを選択します。
ページ定義が表示されます。
「検証」で、該当する検証を選択します。
検証の属性ページが表示されます。
「エラー・メッセージ」までスクロールします。
「エラー・メッセージ」に、エラー・メッセージ・テキストを入力します。
「エラー・メッセージ表示位置」から表示位置を選択します。
この属性で検証エラー・メッセージの表示位置を指定します。検証エラー・メッセージは、エラー・ページに表示したり、既存ページ内にインラインで表示できます。インライン・エラー・メッセージは、通知領域(ページ・テンプレートの一部として定義される)に表示したり、フィールド・ラベル内に表示できます。
すべての処理(検証を含む)を停止するハード・エラーを作成する場合は、エラー・ページにエラーを表示する必要があります。
「フィールドでインライン表示」または「フィールドおよび通知でインライン表示」を選択した場合は、アイテムをエラー・メッセージに関連付ける必要があります。アイテムをエラー・メッセージに関連付けるには、「関連付けられたアイテム」リストからアイテムを選択します。
「変更の適用」をクリックします。
「条件」で、検証を実行するタイミングおよび検証を実行するかどうかを制御できます。
既存の検証に対して条件を作成するには、次のステップを実行します。
該当するページ定義にナビゲートします。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
ページを選択します。
ページ定義が表示されます。
「検証」で、該当する検証を選択します。
検証の属性ページが表示されます。
「条件」までスクロールします。
ユーザーが特定のボタンをクリックしたときに検証を実行させるには、「対象ボタン」リストから選択します。
「条件タイプ」リストから選択します。
選択した条件タイプに応じて、式属性に値を入力します。指定した条件に一致した場合、検証がレンダリングまたは処理されます。
「変更の適用」をクリックします。
ブランチは、特定のページ、プロシージャまたはURLへ移動する指示です。たとえば、ページ1の送信後、ページ1からページ2にブランチできます。
新しいブランチを作成するには、「ページ・ブランチの作成」ウィザードを実行して、ブランチ・ポイントおよびブランチ・タイプを指定します。ブランチ・タイプは、作成するブランチのタイプを定義します。ブランチ・タイプの詳細は、オンライン・ヘルプを参照してください。
Oracle HTML DBアプリケーションの標準タブをクリックすると、HTML DBエンジンは、セッション・ステートを設定し、計算を実行してから、ユーザーをターゲット・ページにリンクします。プロセスまたは明示的に定義されたブランチは実行しません。標準タブをクリックせずにページを送信すると、HTML DBエンジンは、明示的に定義されたブランチを実行して、後続のページを表示します。
ブランチを実行するタイミングを制御するには、「ブランチ・ポイント」リストからブランチ・ポイントを選択します。使用可能なオプションは次のとおりです。
送信時: 計算の前: 計算、検証またはプロセスの前にブランチが実行されます。このオプションは、プロセスを起動する必要がないボタン(「取消」ボタンなど)に使用します。
送信時: 検証の前: 計算の後、検証またはプロセスの前にブランチが実行されます。検証が失敗すると、ページ・プロセスは停止し、ロールバックが実行され、ページにエラーが表示されます。このデフォルト動作のために、ブランチを作成して検証を提供する必要がありません。ただし、計算の結果に応じてブランチする必要がある場合があります(たとえば、前のブランチ・ポイントに戻る場合)。
送信時: プロセスの前: 計算および検証の後、プロセスの前にブランチが実行されます。このオプションを使用すると、検証されたセッション・ステートに基づいて、ページ・プロセスの実行前にブランチされます。
送信時: プロセスの後: 計算、検証およびプロセスの後にブランチが実行されます。このオプションを使用すると、計算、検証およびプロセスの実行後にURLまたはページにブランチされます。このオプションを使用する際、任意のブランチ・ポイントに複数のブランチが存在する場合は、ブランチを順序付ける必要があります。
ロード時: ヘッダーの前: ページのレンダリング前にブランチが実行されます。このオプションを使用すると、カレント・ページではなく別のページが表示されるか、またはユーザーが別のURLまたはプロシージャにリダイレクトされます。
選択したブランチ・タイプによっては、「アクション」属性に次の追加情報を指定できます。
ブランチ先ページのページID
最後にブランチ・ターゲット・ページをレンダリングするPL/SQLプロシージャ
URLアドレス
ページ計算を使用して、ページが送信または表示されたときに、指定したアイテムに値を割り当てます。アプリケーション・レベルの計算を使用して、アイテムに値を割り当てることもできます。ほとんどのアプリケーション・レベルの計算は、アプリケーションのすべてのページで実行されます。一方、ページ・レベルで作成された計算は、ページのレンダリングまたは処理時にのみ実行されます。
このセクションの構成は次のとおりです。
ページ計算を作成するには、「ページ計算の作成」ウィザードを実行します。各計算には、計算の作成対象のアイテムおよび計算タイプを指定します。
ページ計算を作成するには、次のステップを実行します。
該当するページ定義にナビゲートします。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
ページを選択します。
ページ定義が表示されます。
「計算」で、「作成」アイコンをクリックします。
「アイテムの位置」で、計算の実行位置を選択し、「次へ」をクリックします。 位置のオプションは次のとおりです。
このページのアイテム
他のページのアイテム
アプリケーション・レベル・アイテム
「アイテム」で、計算を実行するアイテムと計算ポイントを選択します。
計算アイテム: 計算によって更新されるアイテムを選択します。
順序: 評価の順序を選択します。
計算ポイント: 計算を実行するポイントを選択します。計算ポイント「新しいインスタンス開始時」では、新しいセッション(またはインスタンス)の生成時に計算が実行されます。
計算タイプ: 作成する計算の方法を選択します。
「次へ」をクリックします。
「計算」で、選択した計算タイプに対応する計算を入力し、「次へ」をクリックします。
「条件」では、計算を条件付きにすることができます。 計算を条件付きにするには、「条件タイプ」リストから条件タイプを選択し、式のフィールドにテキストを入力します。
「作成」をクリックします。
計算の使用例には、電話番号を入力するためのフォーム・フィールドのあるページがあります。 この例では、電話番号がデータベースの1つの列に格納されていますが、データ入力フォームでは電話番号が市外局番、市内局番および回線番号の3つの部分に分割されています。 この例では、それらのページ・アイテムはP10_AREA_CODE
、P10_PREFIX
およびP10_LINE_NUMBER
と呼ばれます。
次に、それらのアイテムに格納されている値を1つの文字列に結合する必要があるとします。 これは、「送信後」の計算を使用し、結合した値をP10_PHONE_NUMBER
というアイテム内に格納することによって行うことができます。
P10_AREA_CODE
、P10_PREFIX
およびP10_LINE_NUMBER
の結合した値を新しいアイテムに格納する計算を作成するには、次のステップを実行します。
該当するページ定義にナビゲートします。
P10_AREA_CODE
、P10_PREFIX
およびP10_LINE_NUMBER
の結合した値を格納する、P10_PHONE_NUMBER
という新しいアイテムを作成します。詳細は、「ページ・レベル・アイテムの作成」を参照してください。
「計算」で、「作成」アイコンをクリックします。
「位置」で、「このページのアイテム」を選択して「次へ」をクリックします。
「計算アイテム」で、「P10_PHONE_NUMBER」を選択します。
「順序」で、評価の順序を選択します。
「計算」では、次のいずれかの計算タイプの作成を選択できます。
静的割当て:
「計算タイプ」で、「静的割当て」を選択して「次へ」をクリックします。
次の計算を入力します。
(&P10_AREA_CODE.) &P10_PREFIX.-&P10_LINE_NUMBER.
「次へ」をクリックします。
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;
「次へ」をクリックします。
SQL問合せ:
「計算タイプ」で、「SQL問合せ」を選択して「次へ」をクリックします。
次の計算を入力します。
SELECT '('||:P10_AREA_CODE||')'||:P10_PREFIX||'-'||:P10_LINE_NUMBER FROM DUAL
「次へ」をクリックします。
PL/SQL式:
「計算タイプ」で、「PL/SQL式」を選択して「次へ」をクリックします。
次の計算を入力します。
'('||:P10_AREA_CODE||')'||:P10_PREFIX||'-'||:P10_LINE_NUMBER
「次へ」をクリックします。
「作成」をクリックします。
計算を作成した後、「ページ計算の編集」ページでそれを編集できます。
ページ計算を編集するには、次のステップを実行します。
該当するページ定義にナビゲートします。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
ページを選択します。
ページ定義が表示されます。
「計算」で、計算名を選択します。
「ページ計算の編集」ページが表示されます。
「変更の適用」をクリックします。
ページ・プロセスでは、ページのレンダリング中または送信中に、指定されたポイントでアクションが実行されます。たとえば、ページ・プロセスを作成して、ロジックを実行したり、HTML DBエンジンをコールできます。ページ・プロセスは、ページのロードや送信など、特定のイベントが発生したときに実行するロジックの単位です。
ファンクションの観点からみると、ページ・レベルのプロセスとアプリケーション・レベルのプロセスに違いはありません。これらの2つのプロセス・タイプの違いは、プロセスが定義された場所(ページ・レベルかアプリケーション・レベルか)です。
このセクションの構成は次のとおりです。
プロセスを作成するには、「プロセスの作成」ウィザードを実行します。ウィザードの実行中にプロセス名を定義し、順序、プロセスの実行ポイントおよびプロセス・カテゴリを指定します。「ページ・プロセスの編集」ページで、これらのほぼすべての属性を変更できます。
該当するページ定義にナビゲートします。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
ページを選択します。
ページ定義が表示されます。
「プロセス」で、「作成」アイコンをクリックします。
カテゴリを選択します。 表5-11に、使用可能なページ・プロセス・カテゴリを示します。
表5-11 プロセス・カテゴリ
プロセス・カテゴリ | 説明 |
---|---|
データ操作 | データ操作プロセス・タイプは、データ操作言語(DML)のアクションをサポートするためにウィザードによってよく使用されます。Oracle HTML DBは、次の宣言的なデータ操作プロセスをサポートしています。
|
ポップアップ・ウィンドウを閉じる | このプロセス・タイプが実行されると、ポップアップ・ウィンドウが閉じ、コール・ウィンドウがリフレッシュされます。 |
フォーム・ページ区切り | マスター・ディテール・フォームに関連付けられたディテール・レコードを使用してページ区切りを実装します。 このプロセスは、マスター・ディテール・フォーム(「マスター・ディテール」ウィザードのフォームなど)で最もよく使用されます。マスター表をチェックして、現在のディテール・レコード・セットおよび次のディテール・レコードを確認します。 |
オンデマンド | 特定のページからコールされた場合のみ実行される、アプリケーション・レベルのプロセスを作成します。このプロセス・タイプをページ・レベルで作成すると、既存のアプリケーション・レベルのプロセスへの参照が作成されます。 |
PL/SQL | 指定したPL/SQLを実行します。このプロセス・タイプを使用して、プロセスに直接入力したPL/SQLブロックを実行したり、既存のAPIをコールします。 |
ページ区切りをリセット | 「レポート」リージョンで、ページ区切りを最初の結果セットへリセットします。HTML DBエンジンは、指定された結果セット内のユーザーの位置を追跡します。このプロセス・カテゴリは、ユーザーを最初の結果セットに戻します。つまり、レポート・リージョンに関連付けられたカウンタをリセットして、次回結果セットが表示するときに、結果セットの最初の部分を戻します。 |
セッション・ステート | 既存のセッション・ステート・アイテムの値をNULLに設定します。このプロセス・タイプを選択すると、既存のユーザー設定、アプリケーション、セッションまたはアイテムのキャッシュが消去されます。 |
Webサービス | Webサービスをページ上のプロセスとして実装します。このプロセスを実行すると、リクエストがサービス・プロバイダに送信されます。 |
画面に表示されるステップに従います。
プロセスを作成すると、「ページ・プロセスの編集」ページで属性を編集することによって、プロセスを実行するタイミングおよびプロセスの内容を制御できます。
既存のページ・プロセスを編集するには、次のステップを実行します。
該当するページ定義にナビゲートします。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
ページを選択します。
ページ定義が表示されます。
プロセス名を選択します。
「ページ・プロセスの編集」ページが表示されます。
プロセスを実行するタイミングを制御するには、「プロセス・ポイント」で順序番号およびプロセス・ポイントを指定します。「プロセスの実行」で次のいずれかのオプションを選択すると、後続のページへのアクセス時におけるプロセスの実行を制限できます。
ページへのアクセスごとに1回
セッションごとまたはリセット時に1回
PL/SQLのプロセス・タイプに適切なコードを入力します。「PL/SQL無名ブロック」プロセスの場合は、「プロセス」で適切なコードを入力します。「キャッシュの消去」プロセスの場合は、「ソース」に適切なコードを入力します。プロセスが失敗した場合のために、「プロセス・エラー・メッセージ」フィールドにエラー・メッセージを定義できます(オプション)。
アプリケーション・ビルダーには、ページを定義するコンポーネントおよびコントロールの管理に役立つ多くのビューが含まれています。
このセクションの構成は次のとおりです。
代替ページ・ビューにアクセスするには、次のステップを実行します。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
ページを選択します。
ページ定義が表示されます。
「ビュー」リストから、ビューを選択し、「実行」をクリックします。使用可能なオプションは次のとおりです。
イベント
オブジェクト
履歴
エクスポート
グループ
参照
次のセクションでは、各ビューについて説明します。
ページ・イベント・ビューには、現在定義されているすべてのページ・コントロールおよびページ・プロセスの詳細が表示されます。HTML DBエンジンによるページのレンダリング、ロジックの起動およびプロセスの実行の方法および順序を示す時系列のビューが表示されます。次のビュー・オプションのいずれかを選択することで、表示する情報の量を制御できます。
すべての表示: 現在定義されていないものも含め、すべての使用可能なページ・コントロールおよびページ・プロセスが表示されます。
使用済の表示: 現在使用しているページ・コントロールおよびページ・プロセスが表示されます(デフォルト)。
特定のページ・コントロールまたはページ・プロセスの詳細を表示するには、該当するハイパーテキスト・リンクをクリックします。また、各エントリの左側の小さいアイコンをクリックすると、新しいページ・コントロールおよびページ・プロセスを作成できます。
カレント・ページを実行するには、「実行」アイコンをクリックします。
「エクスポート」を使用すると、カレント・ページがエクスポートされます。一部のページは、共有コンポーネントを参照している可能性があることに注意してください。アプリケーション内のすべてのページをエクスポートするには、アプリケーションのエクスポートを完了する必要があります。
「ページ・グループ」・ビューには、カレント・ページと同じページ・グループに含まれるすべてのページが表示されます。ページIDをクリックしてページ・グループを編集します。ページ名をクリックしてページ定義を表示します。
共有コンポーネントは、アプリケーション内のすべてのページに表示または適用される共通の要素です。共有コンポーネントの例を次に示します。
ロジック・コントロール(アプリケーション・アイテム、アプリケーション・プロセス、アプリケーションの計算、Webサービス参照、ビルド・オプションなど)
セキュリティ・コントロール(認証スキームおよび認可スキームの作成、セッション・ステート保護の有効化、セキュリティ属性の構成など)
グローバリゼーション・タスク(アプリケーションの言語変換、メッセージの言語変換、グローバリゼーション属性の構成など)
ナビゲーション・コントロール(ブレッドクラム、リスト、ナビゲーション・バー・エントリ、タブ、ツリーなど)
ユーザー・インタフェース要素(テーマ、テンプレート、ユーザー・インタフェースのデフォルト値、LOV、ショートカットなど)
ファイル管理(カスケード・スタイルシート、イメージ、静的ファイルの管理など)
「共有コンポーネント」ページのツールおよびウィザードは、アプリケーション・レベルまたは特定のページのいずれかで使用できます。
このセクションの構成は次のとおりです。
「共有コンポーネント」ページにアクセスするには、次のステップを実行します。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
アプリケーションのホームページで、「共有コンポーネント」をクリックします。
「共有コンポーネント」ページが表示されます。
共有コンポーネントを作成するには、該当するリンクを選択します。
次のセクションでは、「共有コンポーネント」ページの各リンクについて説明します。
アプリケーション・レベル・アイテムは表示されませんが、アプリケーションへのグローバル変数として使用されます。一般的に、ページ・レベル・アイテムの値を設定するには、アプリケーションの計算またはページ計算を使用します。
アプリケーション・プロセスを使用すると、次のようにPL/SQLロジックを実行できます。
アプリケーションの各ページの特定のポイントで
プロセスの実行条件で定義されているとおりに
新しいセッションの作成時
「オンデマンド」プロセスは、ページ・レベルのオンデマンド・プロセスからコールされたときにのみ実行されます。
アプリケーション・レベルの計算を使用すると、表示される各ページに対して、または新しいアプリケーション・セッションが作成されたときに、アプリケーション・レベル・アイテムとページ・レベル・アイテムに値を割り当てることができます。アプリケーション・レベルの計算を作成し、条件付きで複数のページで実行することもできます。
Oracle HTML DBのWebサービス参照は、Simple Object Access Protocol(SOAP)に基づいています。Webサービスへの参照を作成してアプリケーションに組み込み、フォームによって送信されたデータを処理したり、フォームまたはレポートに出力をレンダリングできます。
ビルド・オプションを使用すると、アプリケーションで特定の機能を条件付きで表示したり、処理することができます。ビルド・オプションによって、アプリケーションの配置ごとに有効にする機能を制御できます。
認証は、ユーザーがアプリケーションにアクセスする前に、そのユーザーの本人確認を行うプロセスです。認証では、ユーザー名とパスワードの入力要求、ユーザーの本人確認または保護キーの使用が行われる場合があります。
セッション・ステート保護は、ハッカーがアプリケーション内のURLを改ざんするのを防ぐための組込み機能です。URL改ざんにより、プログラム・ロジック、セッション・ステートの内容および情報プライバシーが悪影響を受ける可能性があります。
Oracle HTML DBでは、同時に複数の言語で実行可能なアプリケーションを開発できます。単一のOracleデータベースとOracle HTML DBインスタンスでは、1つのアプリケーションを複数の言語でサポートできます。アプリケーションを言語変換するには、複数のステップを実行する必要があります。「アプリケーションの翻訳」ページにアクセスするには、このリンクをクリックします。
テキスト・メッセージは、ユーザーが作成するPL/SQLコードからコールできる名前付きのテキスト文字列です。このPL/SQLは、ページ・プロセスおよびページ・リージョン、またはパッケージおよびプロシージャで無名ブロックとして使用できます。
同時に複数の言語で実行可能なアプリケーションを開発できます。このリンクをクリックすると、アプリケーションのプライマリ言語属性、アプリケーション言語の派生元属性などのグローバリゼーション・オプションを指定できます。
ブレッドクラムを使用すると、階層的にナビゲートできます。ブレッドクラムは、テンプレートを使用して表示されるリンクの階層的なリストです。ブレッドクラムは、リンクのリストまたはブレッドクラム・パスとして表示できます。
ナビゲーション・バー・エントリは、アプリケーションのページ間を移動する単純なナビゲーション・パスを提供します。ナビゲーション・バーの位置は、関連付けられたページ・テンプレートによって異なります。ナビゲーション・バー・エントリは、イメージまたはテキストからのリンクとして表示できます。ナビゲーション・バー・エントリは、イメージ、説明付きのイメージまたはテキストです。
タブは、アプリケーションのページ間でのナビゲートに有効な方法です。標準タブまたは親タブという2つのタイプのタブを作成できます。標準タブ・セットは、特定のページおよびページIDに関連付けられます。親タブ・セットは、標準タブのグループを保持するコンテナとして機能します。
ユーザー・インタフェースのデフォルト値を使用して、指定したスキーマ内の表、列またはビューにデフォルトのユーザー・インタフェースのプロパティを割り当てることができます。ウィザードを使用してフォームまたはレポートを作成する場合、ウィザードはこの情報を使用してリージョン・プロパティおよびアイテム・プロパティのデフォルト値を作成します。
ユーザー・インタフェースのデフォルト値は、表に関連付けられているため、フォームおよびレポート・ウィザードで作成されたアプリケーションで使用できます。
ショートカットを使用すると、HTMLまたはPL/SQLファンクションを繰り返しコーディングする必要がなくなります。ショートカットを作成して、ボタン、HTMLテキスト、PL/SQLプロシージャ、HTMLなどのページ・コントロールを定義できます。定義したショートカットは、アプリケーション内の様々な位置から参照できるように中央レポジトリに格納されます。
アプリケーション・プロセスとは、アプリケーションの複数ページの処理を使用して、特定のポイントで実行されるように設定されているPL/SQLロジックのブロックです。デフォルトでは、アプリケーション・プロセスはアプリケーション内のすべてのページに対して同じポイントで実行されます。ただし、特定のページに対する条件を適用して、プロセスが実行されるタイミングを制御できます。
このセクションの構成は次のとおりです。
特殊なタイプのアプリケーション・プロセスとして、オンデマンド・プロセスがあります。オンデマンド・アプリケーション・プロセスは、「オンデマンド」というプロセス・ポイントを持ち、ページ・レベルのオンデマンド・プロセスからコールされると実行されます。オンデマンド・プロセスは、複数のページにわたって様々な実行ポイントから実行するPL/SQLロジックがある場合に有効です。
次の構文を使用すると、Oracle HTML DBページ・リクエストでオンデマンド・プロセスを実行できます。
f?p=application_id:page_id:session:APPLICATION_PROCESS=process_id
各要素の意味は次のとおりです。
application_id
は、アプリケーションIDまたは英数字の別名です。
page_id
は、ページIDまたは英数字の別名です。
session
は、セッションIDです。
APPLICATION_PROCESS=process_id
は、キーワードAPPLICATION_PROCESS=
の後にオンデマンドというプロセス・ポイントを持つアプリケーション・レベル・プロセスのプロセスIDまたは英数字の名前を指定したものです。
この構文を使用すると、HTML DBエンジンでリクエストが認識され、次の規則を使用して処理が行われます。
URL内のページIDには任意のページIDを使用できます。このタイプのリクエストでは特定のページにアクセスしないため、ページIDは構文上のプレースホルダとしてのみリクエストに含める必要があります。
プロセス認可スキーム、アプリケーションの認可スキームおよびプロセス条件がサポートされる。
URLでセッション・ステート(アイテムの名前および値)を設定することはできるが、「キャッシュの消去」オプションは無視される。
認証、認可またはプロセス条件が失敗しても、エラー・メッセージまたはそれらの失敗を示す他のインジケータは表示されず、たいていは空白のページが表示されるという結果になります。
プロセスを名前で指定すると、指定した(大/小文字が区別される)名前を持つ最初のプロセスが検出されます。
アプリケーション・プロセスを使用する場合の例には、ショッピング・カート・アプリケーションがあります。たとえば、ユーザーのショッピング・カートのコンテンツをページ・ビューごとに表示する必要があるとします。これを行うには、アプリケーションのページ0(ゼロ)に、アプリケーション・レベル・アイテムTOTAL_CART_ITEMS
およびTOTAL_PURCHASE_PRICE
の値を表示するリージョンを作成します。
TOTAL_CART_ITEMS
およびTOTAL_PURCHASE_PRICE
の値を設定する各ページのプロセスを記述するかわりに、これらの値を計算する「ロード時: ヘッダーの前」というタイプのアプリケーション・プロセスを記述できます。 これによって、HTML DBエンジンは、アプリケーションがレンダリングされると各ページでプロセスを実行します。この結果、TOTAL_CART_ITEMS
およびTOTAL_PURCHASE_PRICE
の最新の値が各ページに表示されます。
アプリケーション・プロセスを作成するには、次のステップを実行します。
「共有コンポーネント」ページにナビゲートします。
「作業領域」ホームページで「アプリケーション・ビルダー」をクリックします。
アプリケーションを選択します。
アプリケーションのホームページで、「共有コンポーネント」をクリックします。
「共有コンポーネント」ページが表示されます。
「ロジック」で、「アプリケーション・プロセス」を選択します。
「作成」をクリックします。
「指定」で、次の項目を指定します。
名前: アプリケーション・プロセスの名前を入力します。
順序番号: このプロセスの順序番号を指定します。この順序番号によって、その他のプロセスに対するこのプロセスの相対的な評価順序が決まります。
ポイント: このプロセスを実行するポイントを指定します。
「次へ」をクリックします。
「ソース」で、次の項目を指定します。
プロセス・テキスト: プロセスのソースとなるテキストを入力します。
「エラー・メッセージ」: プロセスでエラーが発生した場合に表示するエラー・メッセージを入力します。
「次へ」をクリックします。
「条件付け」で、次の項目を指定します。
条件タイプ: このプロセスを実行するために満たされる必要がある条件タイプを選択します。
「式1」および「式2」: これらの属性を使用して、プロセスが実行されるかどうかを条件付きで制御します。選択した特定の条件タイプに基づいて、この属性に値を入力します。指定した条件が満たされた場合、プロセスが実行されます。
「プロセスの作成」をクリックします。
アプリケーション・プロセスを作成すると、使用状況レポートおよび履歴レポートにアクセスできます。
アプリケーション・プロセス・レポートにアクセスするには、次のステップを実行します。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」をクリックします。
アプリケーションを選択します。
アプリケーション・ビルダーが表示されたら、「共有コンポーネント」をクリックします。
「ロジック」で、「アプリケーション・プロセス」を選択します。
ページ上部の次のいずれかのタブを選択します。
使用状況
履歴
画面に表示されるステップに従います。
アプリケーションの計算は、単一のページ・レベル・アイテムまたはアプリケーション・レベル・アイテムの値を設定する論理単位であり、アプリケーション内の複数のページにわたって同じポイントで実行されます。ページ・レベルの計算と同様に、アプリケーションの計算も静的値、アイテム値、PL/SQLまたはSQLに基づくことができます。
このセクションの構成は次のとおりです。
一般的に、アプリケーション・アイテムは、アプリケーションで最後に表示されたページの値の格納に使用されます。値をアイテム内に格納することによって、「戻る」ボタンを追加した後で、計算によって取得されたページIDにユーザーをリダイレクトできます。 たとえば、このタイプの計算は、ユーザーがエラー・ページから戻ることができるようにする必要がある場合に有効です。
次に、最後にアクセスされたページを格納する計算の例を示します。この例では、計算によって次のことが実行されます。
LAST_PAGE
というアイテムへの最後にアクセスされたアプリケーション・ページの格納
CURRENT_PAGE_ITEM
の値が次に示す計算ボディを含むPL/SQLのファンクション本体のタイプであるかどうかの確認
BEGIN :LAST_PAGE := nvl(:CURRENT_PAGE,:APP_PAGE_ID); :CURRENT_PAGE := :APP_PAGE_ID; RETURN :LAST_PAGE; END;
アプリケーションの計算を作成するには、次のステップを実行します。
「共有コンポーネント」ページにナビゲートします。
「作業領域」ホームページで「アプリケーション・ビルダー」をクリックします。
アプリケーションを選択します。
アプリケーションのホームページで、「共有コンポーネント」をクリックします。
「共有コンポーネント」ページが表示されます。
「ロジック」で、「アプリケーションの計算」を選択します。
「作成」をクリックします。
「計算アイテム」で、この計算によって影響を受けるアイテムを選択します。
「計算ポイント」で、この計算を実行するプロセス・ポイントを選択します。
「計算」で、次の項目を指定します。
計算: 計算タイプに対応する計算ロジックを入力します。
計算エラー・メッセージ: 計算が失敗した場合に表示されるエラー・メッセージを入力します。
「認可スキーム」(オプション)から、認可スキームを選択します。この計算を実行するには、選択した認可スキームがtrueと評価される必要があります。
「条件」で、次の項目を指定します。
条件タイプ: この計算を実行するために満たされる必要がある条件タイプを選択します。
「式1」および「式2」: これらの属性を使用して、計算が実行されるかどうかを条件付きで制御します。選択した特定の条件タイプに基づいて、この属性に値を入力します。指定した条件が満たされた場合、計算が実行されます。
「ビルド・オプション」(オプション)から、このコンポーネントのビルド・オプションを選択します。
「作成」をクリックします。
アプリケーションの計算を作成すると、アプリケーション計算履歴レポートを表示できます。
アプリケーション計算履歴レポートにアクセスするには、次のステップを実行します。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
アプリケーション・ビルダーが表示されたら、「共有コンポーネント」をクリックします。
「ロジック」で、「アプリケーション・プロセス」を選択します。
ページの上部の「履歴」タブを選択します。
このアプリケーション計算履歴レポートには、最近変更されたアプリケーション計算の履歴が日付ごとに表示されます。
アプリケーション・ビルダーには、様々な視点からアプリケーションの包括的なビューを提供するレポートが70以上含まれています。 アプリケーション・レポートを使用すると、アプリケーション内の共有コンポーネントおよびページ・コンポーネントの間で整合性を確保できます。 たとえば、アプリケーション内のすべてのページで使用されているボタンの詳細を表示できます。 また、多くのレポートは更新可能であるため、特定のページにナビゲートしなくても、アイテムやリージョン・ラベルなどのコンポーネントを標準化できます。
現在選択されているアプリケーションに固有のレポートを表示するには、次のステップを実行します。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
アプリケーションのホームページが表示されます。
「タスク」リストから「アプリケーション・レポートの表示」を選択します。
表示するレポートのタイプを選択します。
共有コンポーネント・レポートは、アプリケーション内のすべてのページに表示される共通の要素に関する情報を提供します。レポートの例には、アプリケーション・コメント、ブレッドクラム・エントリ、データベース・オブジェクトの依存性、LOV、静的エントリおよびメッセージがあります。
ページ・コンポーネント・レポートは、ページのレンダリング時に実行されるコントロールとロジックに関する詳細情報(たとえば、ブランチ、ボタン、計算、アイテム、リージョンなど)を提供します。
アクティビティ・レポートは、カレント・アプリケーション内の開発者アクティビティの詳細を提供します。使用可能なレポートには、開発者別の変更、日ごとの開発者別の変更、開発者別の変更のチャート、最近の変更が含まれます。
クロス・アプリケーション・レポートは、複数のアプリケーションに適用される情報を提供します。使用可能なレポートには、アプリケーション属性、アプリケーション・コメント、ビルド・オプション、ページ・コンポーネント数、アプリケーション別のセキュリティ・プロファイル、アプリケーション別のテンプレート・デフォルトが含まれます。
データベース・オブジェクトの依存性レポートは、カレント・アプリケーションで参照されるデータベース・オブジェクトを識別します。アプリケーションの配置時に移動するオブジェクトを判別するには、このレポートを確認します。
データベース・オブジェクトの依存性レポートを表示するには、次のステップを実行します。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「タスク」リストから「アプリケーション・レポートの表示」を選択します。
「共有コンポーネント」をクリックします。
「データベース・オブジェクトの依存性」を選択します。
「依存性の計算」をクリックします。
特定のデータベース・オブジェクトを参照するコンポーネントを表示するには、「参照カウント」の番号を選択します。
リージョン・ソース・レポートを使用すると、アプリケーション内のすべてのリージョン・ソースを検索できます。
リージョン・ソース・レポートを表示するには、次のステップを実行します。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「タスク」リストから「アプリケーション・レポートの表示」を選択します。
「ページ・コンポーネント」をクリックします。
「リージョン・ソース」を選択します。
リージョンのページ定義を表示するには、ページIDを選択します。
リージョンのリージョン属性を表示するには、リージョン名を選択します。