ここでは、リージョンのカスタマイズ、アイテム属性の編集、テンプレートのカスタマイズ、カスケード・スタイルシートおよびイメージの組込みなど、アプリケーションのユーザー・インタフェースおよびページ・レイアウトをカスタマイズできる様々な方法について説明します。
内容は次のとおりです。
Oracle HTML DBは、開発者によって定義されたアプリケーション・コンポーネントおよびデータベース内のデータをテンプレートと組み合せて、ページをレンダリングします。
全体的なフレームワーク(またはページの構造)は、ページ・テンプレートによって決まります。たとえば、ページ・テンプレートは、ページでタブおよびナビゲーション・バーを使用するかどうかを制御します。また、ページの左側にナビゲーションまたはセカンダリ・コンテンツ用のプレースホルダとして機能するバーを含めるかどうかを定義することもできます。さらに、ページ・テンプレートには、リージョン位置の定義を含めることができます。これによって、HTML表またはスタイルシート定義を使用してリージョンの位置を正確に制御できます。ページ・テンプレート自体は、置換文字列と組み合されたHTMLで構成されます。これらの置換文字列は、実行時に、適切なOracle HTML DBコンポーネントに置換されます。
開発者は、リージョンを作成することによってページにコンテンツを追加します。リージョンはページの領域で、コンテンツのコンテナとして機能します。各リージョンには、HTML、レポート、フォーム、チャート、リスト、ブレッドクラム、PL/SQL、ツリー、URL、カレンダなどの様々なコンテンツが含まれます。リージョンは、他のリージョンとの相対位置によって(順序番号および列に基づいて)、またはページ・テンプレートに定義されたリージョン位置を使用して配置します。リージョンのスタイルは、リージョン・テンプレートによっても制御されます。ページ・テンプレートと同様に、リージョン・テンプレートは、リージョンを表示するページ上の領域の構造を定義します。リージョン・テンプレートは、リージョン・タイトルを表示するかどうか、およびメイン・コンテンツ(ボディ)に対するリージョン・タイトルの相対的な表示位置を定義します。リージョンでは、ボタンの絶対位置を定義することもできます。
アプリケーションのページ0(ゼロ)は、マスター・ページとして機能します。ページ0に追加したすべてのコンポーネントは、HTML DBエンジンによってアプリケーション内の各ページにレンダリングされます。HTML DBエンジンによってコンポーネントをレンダリングするか、または条件を定義することによって計算、検証またはプロセスを実行するかを制御することもできます。
ページ0(ゼロ)を作成するには、次のステップを実行します。
新しいページを作成します。
ページIDを0(ゼロ)に指定します。
リージョンはページ上の領域で、コンテンツのコンテナとして機能します。各ページには任意の数のリージョンを設定できます。リージョンの外観は、特定のリージョン・テンプレートで制御します。リージョン・テンプレートでは、リージョンの外観およびサイズの制御、枠線または背景色を使用するかどうかの指定、表示するフォントの決定を行います。また、リージョン位置に配置されるボタンの標準配置も制御します。
リージョンを使用すると、ページ・コントロール(アイテムやボタン)をグループ化できます。追加のHTMLを生成しない単純なリージョンを作成したり、HTML表やイメージ内でコンテンツを形成する詳細なリージョンを作成できます。
リージョンは、HTML表の列内では順番に表示されます。ページ・テンプレートに定義された位置にリージョンを明示的に配置することもできます。条件付きでリージョンを表示するように選択することもできます。
このセクションの構成は次のとおりです。
「リージョンの作成」ウィザードを実行して、新しいリージョンを作成します。
新しいリージョンを作成するには、次のステップを実行します。
該当するページ定義にナビゲートします。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
ページを選択します。
ページ定義が表示されます。
「リージョン」で、「作成」アイコンをクリックします。
リージョン・タイプを選択し、画面に表示されるステップに従います。
リージョンの作成時には、リージョン・タイプを選択します。HTML DBエンジンは、選択したタイプに応じてリージョンを解釈します。表7-1に、使用可能なリージョン・タイプを示します。
表7-1 リージョン・タイプ
リージョン・タイプ | 説明 |
---|---|
HTML | HTMLを選択すると、次のいずれかを選択するプロンプトが表示されます。
参照: 「ショートカットの使用」 |
レポート | レポート・リージョンは、SQL問合せを記述するか、またはウィザードを使用して問合せの記述に必要なステップを実行することによって定義できます。
参照: 「レポートの作成」 |
フォーム | フォーム・リージョンは、フォームを含めるために使用されます。
参照: 「フォームの作成」 |
チャート | チャート・リージョンには、SQL問合せに基づく線グラフ、棒グラフまたは円グラフが含まれます。
参照: 「チャートの作成」 |
リスト | リスト・リージョンには、リストと呼ばれるリンクの共有コレクションが含まれます。
参照: 「リストの作成」 |
ブレッドクラム | ブレッドクラム・リージョンには、ブレッドクラムと呼ばれるリンクの階層的なリストが含まれます。
参照: 「ブレッドクラムの作成」 |
PL/SQL動的コンテンツ | PL/SQLに基づくリージョンでは、PL/SQL Webツールキットを使用してHTMLまたはテキストをレンダリングできます。 |
ツリー | ツリーは、実行時に実行されるSQL問合せに基づく、階層的なナビゲーション・コントロールです。ユーザーは、これを使用してノードを展開および縮小できます。
参照: 「ツリーの作成」 |
URL | URLに基づくリージョンでは、事前定義されたURLを使用してWebサーバーをコールすることによって、コンテンツが取得されます。 |
カレンダ | カレンダ・リージョンは、月次のカレンダを含めるために使用されます。
参照: 「カレンダの作成」 |
複数のHTML | 複数のHTMLリージョンを一度に作成するには、このオプションを使用します。表示されるフィールドで、各リージョンの順序、タイトル、表示ポイント、レポート・テンプレートおよび列を指定します。 |
ヘルプ・テキスト | ヘルプ・テキスト・リージョンでは、ページ・レベルのヘルプを指定できます。
参照: 「ヘルプ・ページの作成」 |
参照:
|
リージョン属性を変更することで、ページの外観を変更できます。
リージョン属性を編集するには、次のステップを実行します。
該当するページ定義にナビゲートします。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
ページを選択します。
ページ定義が表示されます。
「リージョン」で、リージョン名を選択します。
リージョン定義が表示されます。
表7-2に、リージョン属性がページ・レイアウトに与える影響を示します。
表7-2 リージョン属性がページ・レイアウトに与える影響
リージョンを作成する際に、ページでのそのリージョンの位置(「表示ポイント」)を指定する必要があります。デフォルト位置(「ページ・テンプレート・ボディ」など)またはテンプレートにユーザーが定義した位置(「ページ・テンプレートのリージョン位置1」など)のいずれかを選択できます。
表示ポイントに加えて、リージョンを配置する列を指定できます。複数の列にリージョンを配置する場合は、Oracle HTML DBによって必要なHTMLが自動的にレンダリングされ、複数列のレイアウトが生成されます。
リージョンのボディ・コンテンツ(レポート、チャートまたはフォーム要素付きのHTML)に加えて、追加のHTMLをリージョンの上下(ヘッダーおよびフッター)に配置できます。リージョン・フッターは、次の置換文字列をサポートします。
#TIMING#
: リージョンのレンダリングにかかる経過時間(秒)を表示できます。この置換文字列はデバッグに使用できます。
#ROWS_FETCHED#
: Oracle HTML DBレポート・エンジンによってフェッチされた行数(ページ・サイズ)を表示できます。これらの置換文字列を使用して、カスタマイズされたメッセージをユーザーに表示できます。次に例を示します。
Fetched #ROWS_FETCHED# rows in #TIMING# seconds.
#TOTAL_ROWS#
: レポートに使用されたSQL問合せを満たす行の合計数を表示できます。
#FIRST_ROW_FETCHED#
および#LAST_ROW_FETCHED#
: 表示される行の範囲を表示できます。次に例を示します。
Row(s) #FIRST_ROW_FETCHED# through #LAST_ROW_FETCHED# of #ROWS_FETCHED# displayed
カスタマイズ属性を使用すると、実行中のアプリケーションでユーザーがリージョンのオン/オフを切り替えることができるようになります。
エンド・ユーザーによるカスタマイズを可能にするには、次のステップを実行します。
該当するページ定義にナビゲートします。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
ページを選択します。
ページ定義が表示されます。
「リージョン」で、リージョン名をクリックします。
リージョン定義が表示されます。
「カスタマイズ」までスクロールして、次のいずれかを選択します。
デフォルトでカスタマイズ可能および非表示
デフォルトでカスタマイズ可能および表示
「カスタマイズ・オプション名」に、ページのこのリージョンをユーザーに示すラベルを入力します。
ページ・テンプレートの「ヘッダー」、「ボディ」または「フッター」セクションに#CUSTOMIZE#
置換文字列を含めます。
この機能を使用するには、ページ・テンプレートの「ヘッダー」、「ボディ」または「フッター」セクションに#CUSTOMIZE#
置換文字列を含める必要があります。
エンド・ユーザーによるカスタマイズが1つ以上のリージョンでサポートされる場合、「カスタマイズ」というリンクがページ・テンプレートで#CUSTOMIZE#
置換文字列を含めた場所に表示されます。このリンクをクリックするとウィンドウが表示され、ユーザーは、ページのリージョンのオン/オフを切り替えることができるようになります。
アイテムはHTMLフォームの一部であり、テキスト・フィールド、テキスト領域、パスワード、選択リスト、チェック・ボックスなどを示します。アイテム属性を変更することで、ページの外観を変更できます。 たとえば、これらの属性は、ラベルの表示位置、アイテムの大きさおよびアイテムの表示位置(左右、上下)に影響します。
アイテム属性を編集するには、次のステップを実行します。
ページ定義にナビゲートします。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
ページを選択します。
ページ定義が表示されます。
「アイテム」で、アイテム名をクリックします。
アイテム定義が表示されます。
表7-3に、アイテム属性がページ・レイアウトに与える影響を示します。
表7-3 アイテム属性がページ・レイアウトに与える影響
通常、アプリケーションのページは、Oracleデータベースに格納されたデータに基づきます。他のサーバーからコンテンツを組み込むには、コンテンツを表示するURLに基づくリージョンを作成できます。たとえば、現在のオラクル社の株価を参照すると想定します。次のようなURLに基づく、URLタイプのリージョンを作成します。
http://quote.yahoo.com/q?d=b&s=ORCL
次に、STOCK_SYMBOLというアイテムを作成して、ユーザーが入力した株価をリージョンの基にします。次に例を示します。
http://quote.yahoo.com/q?d=b&s=&STOCK_SYMBOL.
リージョンに対して必要以上に多くのHTMLが戻される場合があります(前述の例の場合など)。表示されるHTMLを制限するには、次のリージョン属性を使用できます。
URL(破棄の終了、このテキストを含まず)
URL(破棄の開始、このテキストを含む)
前述の例では、プロキシ・サーバー・アプリケーション属性の設定が必要な場合があることに注意してください。プロキシ・サーバー・アプリケーション属性を指定しない場合、エラー・メッセージが表示されます。Oracle HTML DBは、Oracleのutl_http.request_pieces
ファンクションを使用して、任意のURLから生成されたHTMLを取得します。
テーマは、アプリケーション全体のレイアウトおよびスタイルの定義に使用できるテンプレートのコレクションです。テーマには多数のテンプレートが集められ、アプリケーションに必要となる可能性があるすべてのユーザー・インタフェース・パターンが収録されています。テンプレートは、まずタイプ別(ボタン、カレンダ、ラベル、リスト、ブレッドクラム、ページ、ポップアップLOV、リージョンおよびレポート)に分類され、次に、そのタイプ内の各テンプレートの用途を示すテンプレート・クラスごとに分類されます。各テンプレート・タイプには、一群の標準クラスおよび8つのカスタム・クラスが用意されています。このような分類によって、Oracle HTML DBではテーマ間でのテンプレートのマップが可能になり、アプリケーション全体のルック・アンド・フィールを簡単に変更できます。
このセクションの構成は次のとおりです。
テーマは、「テーマ」ページで管理します。
「共有コンポーネント」から「テーマ」ページにアクセスするには、次のステップを実行します。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テーマ」を選択します。
「テーマ」ページが表示されます。
「詳細」ビューにアクセスするには、「ビュー」リストから「詳細」を選択します。
現在選択されているテーマのカレント列にチェック・マークが表示されます。
ページ定義から「テーマ」ページにアクセスするには、次のステップを実行します。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
ページを選択します。
ページ定義が表示されます。
テーマ名を選択します。
テーマを作成すると、そのテーマが「テーマ」ページに表示されます。 「ビュー」リストから次のオプションを選択して、このページの表示方法を制御します。
アイコン(デフォルト): 各テーマを大きいアイコンとして表示します。 テーマを編集するには、該当するアイコンをクリックします。
詳細: 各テーマをレポートで1行に表示します。 テーマ名またはデフォルト・テンプレートを変更するには、テーマ名をクリックします。
「詳細」ビューでは、「表示」リストから次のオプションを選択できます。
サマリー・ビュー: テーマID、名前および現在のステータスを表示します。
詳細ビュー: テーマID、名前、現在のステータスおよび各テンプレート・タイプのテンプレート数を表示します。
標準テーマには、すべてのタイプのアプリケーション・コンポーネントおよびリージョン・タイプのテンプレートが含まれます。テーマに選択したデフォルトのテンプレートを、「テーマを定義」ページで変更できます。
これらのデフォルトは、新しいコンポーネントやリージョンの作成時に別のテンプレートを選択するか、またコンポーネントやリージョンの属性を変更するページでテンプレートを変更することによってオーバーライドできます。
テーマのデフォルトのテンプレーを確認または変更するには、次のステップを実行します。
「テーマ」ページにナビゲートします。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テーマ」を選択します。
「詳細」ビューにアクセスします。「ビュー」リストから、「詳細」を選択します。
該当するテーマ名を選択します。
「テーマの作成/編集」ページが表示されます。
ページ上部には、関連付けられたアプリケーションIDと、テーマ識別番号が表示されます。
テーマ名を変更するには、「名前」フィールドに新しい名前を入力します。
デフォルトのテンプレートを変更するには、該当するリストから新しく選択します。
表7-4に、コンポーネントごとのデフォルトのテンプレートで使用できるデフォルトのテンプレートを示します。
表7-4 コンポーネントごとのデフォルトのテンプレート
属性 | 説明 |
---|---|
ページ | ページを表示するためのデフォルトのテンプレートを指定します。開発者が明示的にテンプレートを選択しない場合、HTML DBエンジンは、ここで指定されたテンプレートを使用します。
デフォルトのテンプレートを定義すると、「アプリケーション属性の編集」ページのヘッダー「デフォルトのアプリケーション・テンプレート」に、このテンプレートが表示されます。 参照: 「ページ属性」ページでのページ・テンプレートの上書きについては、「表示属性」を参照してください。 |
エラー・ページ | (オプション)インライン表示されるエラーではなく、個別のページに表示されるエラーに使用するページ・テンプレートを指定します。エラーを表示するように設計されたテンプレートを使用しない場合、この属性は、空白のままにします。
デフォルトのテンプレートを定義すると、「アプリケーション属性の編集」ページのヘッダー「デフォルトのアプリケーション・テンプレート」に、このテンプレートが表示されます。 |
印刷用ページ | HTML DBエンジンが「印刷用」モードの場合に使用するテンプレートを指定します。HTML DBをコールしてページをレンダリングするときに、印刷用属性を「はい」または「いいえ」の値で指定するオプションが表示されます。
「はい」に指定すると、印刷用テンプレートを使用してページが表示されます。HTML DBエンジンは、HTMLフォーム・フィールド内のすべてのテキストをテキストとして表示します。印刷用テンプレートには、 デフォルトのテンプレートを定義すると、「アプリケーション属性の編集」ページのヘッダー「デフォルトのアプリケーション・テンプレート」に、このテンプレートが表示されます。 参照: 「印刷用ページの最適化」 |
ブレッドクラム | 新しいブレッドクラムを作成する場合に使用するデフォルトのブレッドクラム・テンプレートを指定します。 |
ボタン | 新しいボタンを作成する場合に使用するデフォルトのボタン・テンプレートを指定します。 |
カレンダ | 新しいカレンダを作成する場合に使用するデフォルトのカレンダ・テンプレートを指定します。 |
ラベル | 新しいラベルを作成する場合に使用するデフォルトのラベル・テンプレートを指定します。 |
リスト | 新しいリストを作成する場合に使用するデフォルトのリスト・テンプレートを指定します。 |
リージョン | 新しいリージョンを作成する場合に使用するデフォルトのリージョン・テンプレートを指定します。 |
レポート | レポートを作成する場合に使用するデフォルトのレポート・テンプレートを指定します。 |
表7-5に、リージョン・タイプごとのデフォルトのテンプレートで使用できるデフォルトのテンプレートを示します。
表7-5 リージョン・タイプごとのリージョン・テンプレート
属性 | 説明 |
---|---|
ブレッドクラム | ブレッドクラムを作成する場合に使用するデフォルトのリージョン・テンプレートです。 |
チャート | チャートを作成する場合に使用するデフォルトのチャート・テンプレートです。 |
フォーム | フォームを作成する場合に使用するデフォルトのフォーム・テンプレートです。 |
リスト | リストを作成する場合に使用するデフォルトのリージョン・テンプレートです。 |
レポート | レポートを作成する場合に使用するデフォルトのリージョン・テンプレートです。 |
表形式フォーム | 表形式フォームを作成する場合に使用するデフォルトのリージョン・テンプレートです。 |
ウィザード | 新しいウィザード・コンポーネントを作成する場合に使用するデフォルトのリージョン・テンプレートです。 |
新しく作成するか、またはHTML DBリポジトリから既存のテーマを選択することによって、新しいテーマを作成できます。
新しいテーマを作成するには、次のステップを実行します。
「テーマ」ページにナビゲートします。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テーマ」を選択します。
「テーマの作成」をクリックします。
HTML DBリポジトリからテーマを選択するか、新しくテーマを作成するかを指定します。
「HTML DBリポジトリから」を選択する場合は、次のステップを実行します。
リポジトリからテーマを選択します。
「作成」をクリックします。
「最初から」を選択する場合は、次のステップを実行します。
名前を指定します。
「作成」をクリックします。
「テーマ」ページが表示されます。
新しいテーマのデフォルト・テンプレートを定義します。
新しいテーマ名の横にある「編集」アイコンをクリックします。
テーマ名を変更するには、「名前」フィールドに新しい名前を入力します。
「テーマを定義」ページが表示されたら、新しいテーマのデフォルトのテンプレートを選択します。
新しいテーマに切り替えると、テンプレートに割り当てられたすべてのコンポーネントは、新しいテーマの対応するテンプレートに割り当てられます。アプリケーション・ビルダーは、テンプレート・クラス識別子の割当てによってテンプレート・マッピングを行います。
注意: すでに別のテーマが存在する場合にのみ、新しいテーマに切り替えることができます。 |
アプリケーションにテーマを使用するには、次のステップを実行します。
「テーマ」ページにナビゲートします。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テーマ」を選択します。
「テーマの切替え」をクリックします。
「テーマの切替え」ページが表示されます。
「次のテーマに切替え」リストから新しいテーマを選択し、「次へ」をクリックします。
「ステータス」列を確認し、マッピング上の問題を特定します。
チェック: マッピングが成功したことを示します。
警告: 切替え先のテーマに、指定されたクラスを持つ複数のテンプレートがあることを示します。この警告では、適切なテンプレートを選択するための選択リストが提供されます。
エラー: アプリケーション・ビルダーがテーマ間でクラスをマップできなかったことを示します。クラスが両方のテーマのテンプレートで指定されていることを確認します。
「次へ」をクリックし、続行します。
「テーマの切替え」をクリックします。
すべてのテーマは、数値による識別番号(ID)で識別されます。テーマをコピーする場合は、新しいテーマIDを指定します。テーマのコピーは、テーマの編集を試行したり、テーマに異なるIDを付けてエクスポートする場合に便利です。
テーマをコピーするには、次のステップを実行します。
「テーマ」ページにナビゲートします。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テーマ」を選択します。
「タスク」リストから「テーマのコピー」を選択します。
「テーマのコピー」で、次の操作を実行します。
次のテーマからコピー: コピーするテーマを選択します。
このテーマ識別番号にコピー: そのテーマの新しいIDを入力します。
「次へ」をクリックします。
「テーマIDをコピー」をクリックします。
アクティブではないテーマのみ削除できます。テーマを削除すると、アプリケーション・ビルダーによって、アクティブではないテンプレートのみ削除されます。
テーマを削除するには、次のステップを実行します。
「テーマ」ページにナビゲートします。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テーマ」を選択します。
「タスク」リストから「テーマの削除」を選択します。
「テーマの削除」で、削除するテーマを選択し、「次へ」をクリックします。
「次のテーマの削除」をクリックします。
関連するアプリケーション・ファイルのエクスポートと同様の方法でテーマをエクスポートします。Oracle HTML DBの1つの開発インスタンスから別のインスタンスへテーマをエクスポートするには、次のステップを実行します。
「テーマのエクスポート」ユーティリティを使用して、テーマをエクスポートします。
エクスポートされたファイルをターゲットのOracle HTML DBインスタンスにインポートします。
エクスポートされたファイルをエクスポート・リポジトリからインストールします。
すべてのテーマには、識別番号(ID)があります。「テーマIDの変更」ユーティリティを使用して、テーマIDを別の番号に変更できます。テーマIDの変更は、テーマに異なる番号を付けてエクスポートし、別のアプリケーションにインポートする場合に便利です。
テーマ識別番号を変更するには、次のステップを実行します。
「テーマ」ページにナビゲートします。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テーマ」を選択します。
「タスク」リストから「指定番号の変更」を選択します。
「テーマIDの変更」ページで、次のステップを実行します。
テーマを選択します。
新しい識別番号を指定します。
「次へ」をクリックします。
変更内容を確認して、「テーマIDの変更」をクリックします。
アプリケーション・ビルダーには、テーマおよびテンプレートの管理に役立つ多くのレポートが含まれています。
このセクションの構成は次のとおりです。
テーマを構成しているすべてのテンプレートを表示するには、次のステップを実行します。
「テーマ」ページにナビゲートします。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テーマ」を選択します。
「レポート」をクリックします。
「テーマ・レポート」ページで、次のステップを実行します。
「レポート」から「アプリケーション・テンプレート」を選択します。
「テーマ」からテーマを選択します。
「実行」をクリックします。
テンプレートのリストには、テンプレート・タイプ、テンプレート名、対応するテーマおよびテンプレート・クラスの一覧が表示されます。
テンプレートを編集するには、テンプレート名を選択します。
「テーマ・テンプレート数」レポートには、現在、テンプレート・クラス用に作成されたテンプレートがあるテンプレート・クラスが表示されます。
テーマ・テンプレート数レポートを表示するには、次のステップを実行します。
「テーマ」ページにナビゲートします。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テーマ」を選択します。
「レポート」をクリックします。
「テーマ・レポート」ページで、次のステップを実行します。
「レポート」から「テーマ・テンプレート数」を選択します。
「テーマ」からテーマを選択します。
「実行」をクリックします。
カスタムの分類を使用する場合は、「カスタムの表示」を選択し、「実行」をクリックします。
ファイル参照のレポートには、テンプレートに関連付けられたすべてのファイル、共有コンポーネント、カレント・アプリケーションのページ・コンポーネントの一覧が表示されます。
「ファイル参照」のレポートを表示するには、次のステップを実行します。
「テーマ」ページにナビゲートします。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テーマ」を選択します。
「テーマ」ページで「レポート」をクリックします。
「テーマ・レポート」ページで、次のステップを実行します。
「レポート」から「ファイル参照」を選択します。
「テーマ」からテーマを選択します。
「実行」をクリックします。
「ファイル参照」ページで、次のステップを実行します。
「表示」から、レポートに含めるコンポーネントのタイプを選択します。選択しない場合は、結果が戻されません。
「ファイルの表示」から次のいずれかの項目を選択します。
コンテキスト付き: コンポーネント、テーマ識別番号、コンポーネント名、イメージ(使用可能な場合)、ページIDを表示します。ページ定義にリンクするには、ページIDを選択します。
コンテキストなし: ファイル名およびイメージ(使用可能な場合)のみ表示します。
「ファイル拡張子」から検索する拡張子のタイプを選択します。
「実行」をクリックします。
このレポートのカンマ区切りファイル(.csv)をダウンロードするには、ページ下部の「CSVをダウンロード」をクリックします。
クラス参照のレポートにアクセスすると、テンプレートに関連付けられたクラス、共有コンポーネント、カレント・アプリケーションのページ・コンポーネントの一覧が表示されます。
クラス参照のレポートを表示するには、次のステップを実行します。
「テーマ」ページにナビゲートします。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テーマ」を選択します。
「レポート」をクリックします。
「テーマ・レポート」ページで、次のステップを実行します。
「レポート」から「クラス参照」を選択します。
「テーマ」からテーマを選択します。
「実行」をクリックします。
「クラス参照」ページで、次のステップを実行します。
「表示」から、クラス参照を確認するコンポーネントを選択します。選択しない場合は、結果が戻されません。
「クラス名の表示」から、次のいずれかを選択します。
コンテキスト付き: コンポーネント、テーマ識別番号、コンポーネント名、イメージ(使用可能な場合)、ページIDを表示します。
コンテキストなし: 参照されるクラスのみを表示します。
「実行」をクリックします。
このレポートのカンマ区切りファイル(.csv)をダウンロードするには、ページ下部の「CSVをダウンロード」をクリックします。
「テンプレート置換文字列」レポートを使用すると、コンポーネントがサポートする置換文字列がすべて表示されます。
「置換文字列」レポートを表示するには、次のステップを実行します。
「テーマ」ページにナビゲートします。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テーマ」を選択します。
「レポート」をクリックします。
「テーマ・レポート」ページで、次のステップを実行します。
「レポート」リストから、「テンプレート置換文字列」を選択します。
「テーマ」リストから、レポートに含めるテーマを選択します。
「実行」をクリックします。
テンプレート定義にリンクするには、コンポーネント名を選択します。
HTML DBエンジンは、テーマと呼ばれるテンプレートのコレクションを基にして、アプリケーションのユーザー・インタフェースを作成します。テンプレートは、アプリケーション内のコンポーネントのルック・アンド・フィールを制御します。カスタム・テンプレートを作成するには、まず既存のテンプレートを変更する方法が最も簡単です。作成した1つ以上のデフォルト・テンプレートは、必要に応じて変更できます。
このセクションの構成は次のとおりです。
カスケード・スタイルシート(CSS)によって、構造を変更せずにWebページのスタイルを制御できます。CSSを適切に使用すると、カラー、余白、フォントなどの視覚属性がHTMLドキュメントの構造から切り離されます。Oracle HTML DBのテーマには、独自のCSSを参照するテンプレートを含めることができます。特定のテーマの各CSSで定義されたスタイル・ルールによって、レポートおよびリージョンの表示も指定されます。
デフォルトのページ・テンプレートは、2つの方法で指定できます。
特定のテーマ内のデフォルトのページ・テンプレートを選択します。
ページごとに特定のページ・テンプレートを選択します。
デフォルトでは、HTML DBエンジンは、「テーマ」ページで指定されたページ・テンプレートを使用します。
「テンプレート」ページで、すべての使用可能なテンプレートを表示できます。また、ページ定義で、特定のページで使用されているテンプレートを表示できます。
既存のテンプレートを表示するには、次のステップを実行します。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テンプレート」を選択します。
「テンプレート」ページが表示されます。
次のリストから選択し、「実行」をクリックして、表示を絞り込むことができます。
テーマ: 特定のテーマのテンプレートだけを表示します。
表示: 特定のタイプのテンプレートを表示します。
ビュー: 現在参照されているもの、参照されていないものを含め、すべてのテンプレートを表示します。
テンプレート定義を表示するには、テンプレート名をクリックします。
テンプレートのプレビューを確認するには、「プレビュー」列で「実行」アイコンをクリックします。
注意: 一部のテンプレート・タイプには、プレビュー機能はありません。 |
カスタム・テンプレートを作成するには、まず既存のテンプレートを変更する方法が最も簡単です。作成した1つ以上のデフォルト・テンプレートは、必要に応じて変更できます。
カスタム・テンプレートを作成するには、次のステップを実行します。
「テンプレート」ページにナビゲートします。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テンプレート」を選択します。
「作成」をクリックします。
作成するテンプレートのタイプを選択します。
次のいずれかの作成方法を選択します。
最初から
既存のテンプレートのコピーとして
画面に表示されるステップに従います。テンプレートを正しいテーマに関連付けるよう注意してください。
Oracle HTML DBには、テンプレートの使用状況、サブスクリプションおよび編集履歴を表示するレポートがあります。
カレント・アプリケーションについてのテンプレート・レポートを表示するには、次のステップを実行します。
「テーマ」ページにナビゲートします。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テンプレート」を選択します。
次のリストから選択し、「実行」をクリックして、表示を絞り込むことができます。
テーマ: 特定のテーマのテンプレートだけを表示します。
表示: 特定のタイプのテンプレートを表示します。
ビュー: 現在参照されているもの、参照されていないものを含め、すべてのテンプレートを表示します。
テンプレート・レポートを表示するには、次のいずれかのボタンをクリックします。
使用状況: カレント・アプリケーションのすべてのテンプレート・タイプ(ページ、レポート、リージョン、レベルおよびリスト)についてテンプレートの使用状況を表示します。
サブスクリプション: アプリケーションでサブスクライブされたテンプレートを表示します。
履歴: 開発者によるテンプレートへの最近の変更および最終更新日を表示します。
作成したカスタム・テンプレートは、「テンプレート」ページまたは「ページ定義」からすぐに編集できます。
「テンプレート」ページから既存のテンプレートを編集するには、次のステップを実行します。
「テンプレート」ページにナビゲートします。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テンプレート」を選択します。
次のリストから選択し、「実行」をクリックして、表示を絞り込むことができます。
テーマ: 特定のテーマのテンプレートだけを表示します。
表示: 特定のタイプのテンプレートを表示します。
ビュー: 現在参照されているもの、参照されていないものを含め、すべてのテンプレートを表示します。
編集するテンプレートを検索して、テンプレート名を選択します。
画面に表示されるステップに従います。
テンプレートを編集する際、「ページに戻る」をチェックすると、1つのウィンドウで変更を行い、別のウィンドウでアプリケーションを実行できます。このチェック・ボックスを選択すると、「変更の適用」をクリックした後も編集中のページがカレントのまま保持されます。
ブレッドクラム・テンプレートは、ブレッドクラム・エントリの表示方法を制御します。このテンプレートは、リージョンの作成時に選択します。
通常、ブレッドクラムはアプリケーションの他のページに対するカレント・ページの相対位置を示します。また、特定のページをクリックしてこのページを即時に表示できます。Oracle HTML DBでは、各ページ上部の標準タブ(または2番目のレベルのナビゲーション・タブ)の下に、ブレッドクラム・パスが表示されています。
ここでは、「ブレッドクラム・テンプレート」ページ固有のセクションについて説明します。
「名前」は、テンプレートの名前を示します。テンプレートに変換が必要なテキスト文字列が含まれているかどうかを示すには、「言語変換可能」チェック・ボックスを使用します。「テーマ」は、テンプレートが関連付けられているテーマを示します。
「テンプレート・クラス」は、そのテンプレートに固有の用途を示します。新しいテーマに切り替えると、あるテーマのすべてのテンプレートは、別のテーマの対応するテンプレートにマップされます。アプリケーション・ビルダーは、テンプレート・クラスの割当てによってこのテンプレート・マッピングを行います。
カレント・アプリケーションに既存のテンプレートを適用するには、「テンプレートのサブスクリプション」を使用します。既存のテンプレートを選択すると、ユーザーはそのテンプレートのサブスクライバになります。
マスター・テンプレートの新しいコピーをロードするには、「リフレッシュ」をクリックします。
次のいずれかのテンプレート・スタイルを選択します。
子ブレッドクラム・エントリ: カレント・ページの親ブレッドクラムの子(現在のブレッドクラムと同等)であるすべてのブレッドクラム・エントリを表示します。
カレント・ブレッドクラム: 共通の親を持つすべてのブレッドクラム・エントリを順番に表示します。
親ブレッドクラム・エントリ: カレント・ページの親ブレッドクラム(現在のブレッドクラム・エントリよりも1階層上のブレッドクラム)のすべてのブラッドクラム・エントリを表示します。
親からリーフ(ブレッドクラム・スタイル): カレント・ページのブレッドクラム・エントリと、その左側にルート・ノードまでの親エントリを表示します。
表7-6に、使用可能なブレッドクラム・エントリの属性を示します。
表7-6 ブレッドクラム・エントリの制御属性
ボタン・テンプレートを使用すると、アプリケーション開発者は、ボタンのルック・アンド・フィールをカスタマイズできます。ボタンを構築する場合、複数のイメージまたはHTMLタグを使用できます。ボタン・テンプレートの使用はオプションです。
ここでは、「ボタン・テンプレート」ページ固有のセクションについて説明します。
「テンプレート名」は、テンプレートの名前を示します。テンプレートに変換が必要なテキスト文字列が含まれているかどうかを示すには、「言語変換可能」チェック・ボックスを使用します。「テーマ」は、テンプレートが関連付けられているテーマを示します。
「テンプレート・クラス」は、そのテンプレートに固有の用途を示します。新しいテーマに切り替えると、あるテーマのすべてのテンプレートは、別のテーマの対応するテンプレートにマップされます。アプリケーション・ビルダーは、テンプレート・クラスの割当てによってこのテンプレート・マッピングを行います。
カレント・アプリケーションに既存のテンプレートを適用するには、「テンプレートのサブスクリプション」を使用します。既存のテンプレートを選択すると、ユーザーはそのテンプレートのサブスクライバになります。
マスター・テンプレートの新しいコピーをロードするには、「リフレッシュ」をクリックします。
カレンダ・テンプレートは、カレンダの外観と配置を制御します。このテンプレートは、頻繁にHTML表を使用して日付を配置します。カレンダ属性は、#DD#
や#MONTH#
などの置換文字列を使用して配置します。サポートされている置換文字列のリストは、「カレンダ・テンプレートの属性」ページの右側に表示されます。テンプレートの置換文字列は、大文字で指定し、シャープ記号(#)で囲む必要があることに注意してください。
ここでは、「カレンダ・テンプレート」ページ固有のセクションについて説明します。
「名前」は、テンプレートの名前を示します。「テーマ」は、テンプレートが関連付けられているテーマを示します。
「テンプレート・クラス」は、そのテンプレートに固有の用途を示します。新しいテーマに切り替えると、あるテーマのすべてのテンプレートは、別のテーマの対応するテンプレートにマップされます。アプリケーション・ビルダーは、テンプレート・クラスの割当てによってこのテンプレート・マッピングを行います。
カレント・アプリケーションに既存のテンプレートを適用するには、「テンプレートのサブスクリプション」を使用します。既存のテンプレートを選択すると、ユーザーはそのテンプレートのサブスクライバになります。
マスター・テンプレートの新しいコピーをロードするには、「リフレッシュ」をクリックします。
「月タイトルの書式」で、各月の上部に表示する月タイトルの書式を入力します。これは、ページに印刷されるカレンダの最初の部分です。次に例を示します。
<table> <tr> <td>#MONTH#</td> </tr>
「曜日の書式」で、その曜日の列ヘッダーとして表示される曜日名の書式を入力します。次に例を示します。
<th width="14%">#IDAY#</th>
「月の開始の書式」で、月の開始に使用するHTMLを入力します。これは月タイトルの書式の直後に表示されます。一般に、この属性にはコンテナ(表など)として機能するHTMLタグが含まれます。次に例を示します。
<table border="0" cellpadding="0" cellspacing="0" class="htmldbRowWithBorders" width="100%"><tr>
「月の終了の書式」で、月の終了に使用するHTMLを入力します。これは印刷される最後の部分であるため、月の開始の書式に使用されたHTMLタグを閉じるHTMLをこの属性に含める必要があります。次に例を示します。
</table>
週を開始および終了するHTMLを入力します。
「週の開始の書式」で、週の開始に使用するHTMLを入力します。これは各週に印刷されます。一般に、この属性にはコンテナとして機能するHTMLタグが含まれます。次に例を示します。
<tr>
「週の終了の書式」で、週の終了に使用するHTMLを入力します。これは印刷される最後の部分であるため、週の開始の書式に使用されたHTMLタグを閉じるHTMLをこの属性に含める必要があります。
</tr>
平日(月曜から金曜)の書式を指定するHTMLを入力します。
「日タイトルの書式」で、各日のタイトルに使用するHTMLを入力します。このタイトルは日の開始の書式の後に表示されます。次に例を示します。
#DD#
「日の開始の書式」で、日の開始に使用するHTMLを入力します。これはカレンダ上の各日に表示されます。一般に、この属性にはコンテナとして機能するHTMLタグが含まれます。次に例を示します。
<td>
「日の終了の書式」で、日の終了に使用するHTMLを入力します。これは印刷される最後の部分であるため、この属性で、日の開始の書式に使用されたHTMLタグを閉じる必要があります。次に例を示します。
</td>
「今日の開始の書式」で、今日の開始に使用するHTMLを入力します。一般に、この属性はコンテナとして機能するタグ(<td>
など)が含まれ、日の開始の書式とは異なります。次に例を示します。
<td style="background:#c5d5c5">
非日とは、現在の月に含まれない日です。たとえば、月の初日が月曜日であるとします。その場合でも、週は日曜日から始まります。日曜日はその月に含まれないため、日曜日は非日になります。この属性を使用して、非日の書式を設定します。
「その月に含まれない日のタイトルの書式」で、その月に含まれない日の書式を入力します。次に例を示します。
#DD#
「その月に含まれない日の開始の書式」で、その月に含まれない日の開始に使用するHTMLを入力します。一般に、この属性にはコンテナとして機能するHTMLタグが含まれます。次に例を示します。
<td>
「その月に含まれない日の終了の書式」で、その月に含まれない日の終了に使用するHTMLを入力します。一般に、この属性にはその月に含まれない日の開始の書式に使用されたタグを閉じるHTMLタグが含まれます。次に例を示します。
</td>
週末の書式を指定するHTMLを入力します。動的コンテンツを含めるには、置換文字列を含めます。サポートされる置換文字列のリストを表示するには、「カレンダ・テンプレート」ページの右側の「置換文字列」リストを確認します。
「週末タイトルの書式」で、週末に表示する日に使用するHTMLを入力します。次に例を示します。
#DD#
「週末の開始の書式」で、週末の日を開始するHTMLを入力します。一般に、この属性にはコンテナとして機能するHTMLタグが含まれます。次に例を示します。
<td>
「週末の終了の書式」で、週末の日を終了するHTMLを入力します。これは印刷される最後の部分であるため、この属性で、週末の開始の書式に使用されたHTMLタグを閉じる必要があります。
</td>
ラベル・テンプレートは、ページ・アイテム・ラベルのHTMLマークアップを集中管理することを目的としています。各アイテムにはオプションのラベルがあります。ラベル・テンプレートを使用して、これらのラベルの表示方法を制御できます。たとえば、ユーザーに必須であることを示すイメージ(アスタリスクなど)を参照する「必須フィールド」というラベル・テンプレートを作成できます。
ラベル・テンプレートを使用すると、アイテムの先頭と末尾に追加するテキスト文字列を定義できます。
ここでは、「ラベル・テンプレート」ページ固有のセクションについて説明します。
「テンプレート名」は、テンプレートの名前を示します。テンプレートに変換が必要なテキスト文字列が含まれているかどうかを示すには、「言語変換可能」チェック・ボックスを使用します。「テーマ」は、テンプレートが関連付けられているテーマを示します。
「テンプレート・クラス」は、そのテンプレートに固有の用途を示します。新しいテーマに切り替えると、あるテーマのすべてのテンプレートは、別のテーマの対応するテンプレートにマップされます。アプリケーション・ビルダーは、テンプレート・クラスの割当てによってこのテンプレート・マッピングを行います。
カレント・アプリケーションに既存のテンプレートを適用するには、「テンプレートのサブスクリプション」を使用します。既存のテンプレートを選択すると、ユーザーはそのテンプレートのサブスクライバになります。
マスター・テンプレートの新しいコピーをロードするには、「リフレッシュ」をクリックします。
「ラベルの前」では、アイテム・ラベルの前に表示するHTMLを入力します。「ラベルの前」では、置換文字列#CURRENT_FORM_ELEMENT#
; #CURRENT_FORM_ID#
および#CURRENT_ITEM_NAME#
をサポートします。次に例を示します。
<label for="#CURRENT_ITEM_NAME#"> <a href="javascript:popupFieldHelp('#CURRENT_ITEM_ID#', '&SESSION.','&CLOSE.')" >
「ラベルの後」では、アイテム・ラベルの後に表示するHTMLを入力します。このラベルはこのリージョンのHTMLの前に自動的に表示されるため、「ラベルの前」リージョンの開始タグをここで閉じる必要があります。次に例を示します。
</a></label>
「ラベルの前のエラー発生時」では、アプリケーションがアイテムのインライン検証エラー・メッセージを表示する場合に、そのアイテム・ラベルの前に表示するHTMLを入力します。次に例を示します。
<font class="fieldtitleleft">#ERROR_MESSAGE#</font>
「ラベルの後のエラー発生時」では、アプリケーションがアイテムのインライン検証エラー・メッセージを表示する場合に、そのアイテム・ラベルの後に表示されるHTMLを入力します。この属性では、置換文字列#CURRENT_FORM_ELEMENT#
、#CURRENT_FORM_ID#
および#CURRENT_ITEM_NAME#
をサポートします。次の例では、表示されている、エラーの存在するアイテム・ラベルに空白と閉じカッコを追加します。
]</font>
リストは、リンクの共有コレクションです。リストの外観は、リスト・テンプレートで制御します。テンプレート属性を使用すると、特定のページのカレントまたは非カレントとしてリスト要素を定義できます。
Oracle HTML DBは階層的なリストをサポートします。階層的なリストを作成するには、次のステップを実行します。
階層的なリストをサポートするリスト・テンプレートを選択します。階層的なリストをサポートするリスト・テンプレートを判別するには、サブリスト付きというネーミング規則のあるテンプレートを検索します。
各リスト・エントリの作成時には親リスト・エントリを選択します。
ここでは、「リスト・テンプレート」ページ固有のセクションについて説明します。
「名前」は、テンプレートの名前を示します。テンプレートに変換が必要なテキスト文字列が含まれているかどうかを示すには、「言語変換可能」チェック・ボックスを使用します。「テーマ」は、テンプレートが関連付けられているテーマを示します。
「テンプレート・クラス」は、そのテンプレートに固有の用途を示します。新しいテーマに切り替えると、あるテーマのすべてのテンプレートは、別のテーマの対応するテンプレートにマップされます。アプリケーション・ビルダーは、テンプレート・クラスの割当てによってこのテンプレート・マッピングを行います。
カレント・アプリケーションに既存のテンプレートを適用するには、「テンプレートのサブスクリプション」を使用します。既存のテンプレートを選択すると、ユーザーはそのテンプレートのサブスクライバになります。
マスター・テンプレートの新しいコピーをロードするには、「リフレッシュ」をクリックします。
カレントおよび非カレントのリスト・テンプレートを定義します。サポートされる置換文字列は、#LINK#
、 #TEXT#
、#IMAGE_PREFIX#
、#IMAGE#
、#IMAGE_ATTR#
および#A01#
から#A10#
です。
カレント・リスト・テンプレート: 選択された(カレントの)リスト・テンプレートに置換されるHTMLまたはテキストを入力します。
サブリスト・アイテムが含まれているカレント・リスト・テンプレート: アイテムにサブリスト・アイテムが含まれる場合は、選択された(カレントの)リスト・テンプレートに置換されるHTMLまたはテキストを入力します。このテキストを指定しないと、現在のリスト・アイテム・テンプレートが使用されます。
非カレント・リスト・テンプレート:選択されていない(非カレントの)リスト・テンプレートに置換されるHTMLまたはテキストを入力します。
サブリスト・アイテムが含まれている非カレント・リスト・テンプレート: アイテムにサブリスト・アイテムが含まれる場合は、選択されていない(非カレントの)リスト・テンプレートに置換されるHTMLまたはテキストを入力します。このテキストを指定しないと、現在のリスト・アイテム・テンプレートが使用されます。
リスト要素間: リスト要素の間に表示するHTMLを入力します。HTMLを指定しないと、この属性が無視されます。
カレントおよび非カレントのリスト・テンプレートを定義します。サポートされる置換文字列は、#LINK#
、 #TEXT#
、#IMAGE_PREFIX#
、#IMAGE#
、#IMAGE_ATTR#
および#A01#
から#A10#
です。
カレント・サブリスト・テンプレート: 選択された(カレントの)リスト・テンプレートに置換されるHTMLまたはテキストを入力します。
サブリスト・アイテムが含まれているカレント・サブリスト・テンプレート: アイテムにサブリスト・アイテムが含まれる場合は、選択された(カレントの)リスト・テンプレートに置換されるHTMLまたはテキストを入力します。このテキストを指定しないと、現在のリスト・アイテム・テンプレートが使用されます。
非カレント・サブリスト・テンプレート:選択されていない(非カレントの)リスト・テンプレートに置換されるHTMLまたはテキストを入力します。
サブリスト・アイテムが含まれている非カレント・サブリスト・テンプレート: アイテムにサブリスト・アイテムが含まれる場合は、選択されていない(非カレントの)リスト・テンプレートに置換されるHTMLまたはテキストを入力します。このテキストを指定しないと、現在のリスト・アイテム・テンプレートが使用されます。
サブリスト要素間: リスト要素の間に表示するHTMLを入力します。HTMLを指定しないと、この属性が無視されます。
ページ・テンプレートは、ページの外観を定義します。各テンプレートは、ヘッダー・テンプレート、ボディ・テンプレート、フッター・テンプレートおよび多くのサブテンプレートで構成されます。ページ・レベル属性としてページ・テンプレートを指定しない場合、HTML DBエンジンは、「テーマを定義」ページで定義したデフォルトのページ・テンプレートを使用します。
ページ・テンプレートは、静的HTMLと実行時に置換される置換文字列を組み合せたものです。置換文字列を使用して、ページ・テンプレート内のコンポーネントの存在と配置を指定します。さらに、サブテンプレートを使用して、コンポーネントの表示方法を指定できます。
このセクションの構成は次のとおりです。
表7-7に、使用可能なページ・テンプレートの置換文字列を示します。テンプレートのすべての置換文字列は、大文字で指定し、シャープ記号(#)で囲む必要があることに注意してください。
表7-7 ページ・テンプレートの置換文字列
置換文字列 | 説明 |
---|---|
#APP_VERSION#
|
ページ・テンプレートの「ヘッダー」または「フッター」セクションで使用できます。#APP_VERSION# の値は、「アプリケーション属性の編集」ページのバージョン属性で定義します。
参照: 「名前」 |
#BOX_BODY#
|
ボディを表示する位置を指定します。ボディがNULLの場合、かわりに#BOX_BODY# が使用されます。
|
#CUSTOMIZE#
|
ページ・テンプレートの「ヘッダー」、「ボディ」または「フッター」セクションで使用できます。
「リージョン定義」の「カスタマイズ」セクションを使用すると、エンド・ユーザーによるカスタマイズを可能にできます。この機能を使用するには、ページ・テンプレートに エンド・ユーザーによるカスタマイズが1つ以上のリージョンでサポートされる場合、「カスタマイズ」というリンクがページ・テンプレートの |
#FORM_CLOSE#
|
#FORM_OPEN# を含める場合は、ヘッダー、ボディまたはフッターのテンプレートに#FORM_CLOSE# を含める必要があります。#FORM_OPEN# は#BOX_BODY# の前、#FORM_CLOSE# は#BOX_BODY# 置換文字列の後に指定する必要があります。
|
#FORM_OPEN#
|
HTMLのフォームの開始タグ<form を配置する位置を指定します。フォームを送信するには、この置換文字列を含める必要があります。
ユーザー独自のフォームをオープン状態にコーディングする必要はありません。この操作はHTML DBエンジンが行います。 |
#GLOBAL_NOTIFICATION#
|
グローバル通知属性を表示します。グローバル通知は、システム・ステータス(保留中のシステム停止時間など)との通信に使用します。HTMLDB_APPLICATION .G_GLOBAL_NOTIFICATION を使用すると、この値をプログラムによって設定できます。
参照: グローバル通知属性については、「グローバル通知」を参照してください。 |
#HEAD#
|
<head> 開始タグと</head> 閉じタグの間に使用します。オプションで、各ページの#HEAD# のコンテンツを定義できます(たとえば、追加のスタイルシートまたはJavaScriptライブラリを参照するように定義できます)。
|
#LOGO#
|
アプリケーションのロゴを指定します。
「アプリケーション属性の編集」ページの「ロゴ」セクションで、アプリケーションのロゴのイメージおよびイメージ属性を指定できます。この機能を使用するには、「ヘッダー」または「ボディ」ページ・テンプレートに 参照: 「ロゴ」 |
#NAVIGATION_BAR#
|
ナビゲーション・バー・エントリの存在を定義します。ナビゲーション・バーは、この置換文字列を含むテンプレートを使用したアプリケーション内の各ページに表示されます。「ナビゲーション・バー」サブテンプレートを使用すると、この置換文字列を拡張できます。
参照: 「ナビゲーション・バー」サブテンプレートについては、「サブテンプレート」を参照してください。 |
#NOTIFICATION_MESSAGE#
|
開発者がユーザーにメッセージを送信できます。インライン・エラー・メッセージのサマリーが表示される位置を定義します。インライン・エラー・メッセージは、フィールドの横または通知領域にインライン(あるいはその両方)で表示できます。 |
#ONLOAD#
|
ページ・テンプレートのヘッダーおよびフッターで使用できます。HTMLの<bodyタグ内に含める必要があります。次に例を示します。
<body #ONLOAD#> JavaScriptコールでこの文字列を置換文字列として使用すると、Webブラウザでページがロードされたときにそのコールが実行されます。コールするJavaScriptは、ページごとに変更できます。 |
#PARENT_TAB_CELLS#
|
親タブの表示を指定します。親タブには標準タブが必要です。アプリケーションに1つのレベルのタブのみが含まれている場合は、この置換文字列は不要です。
参照: 親タブ属性の定義については、「親タブ属性」を参照してください。 |
#REGION_POSITION_NN#
|
ページ内のリージョンの正確な位置を指定します。リージョンが指定されていない場合は、たとえば#REGION_POSITION_01# があるとすると、この#REGION_POSITION_01# は置換されません。
|
#SUCCESS_MESSAGE#
|
成功メッセージおよびエラー・メッセージを表示するページ内の位置を定義します。エラーなしでページ・プロセスが実行されると、このテキストが表示されます。
成功メッセージの前後にHTMLを追加すると、各テンプレートの成功メッセージの表示をカスタマイズできます。 |
#TAB_CELLS#
|
標準タブの表示を指定します。
参照: 「標準タブ属性」 |
#TITLE#
|
ページ・タイトルを定義します。通常、HTMLのtitleタグ内に含まれます。 |
ここでは、「ページ・テンプレート」ページ固有のセクションについて説明します。
「名前」は、テンプレートの名前を示します。テンプレートに変換が必要なテキスト文字列が含まれているかどうかを示すには、「言語変換可能」チェック・ボックスを使用します。「テーマ」は、テンプレートが関連付けられているテーマを示します。
「テンプレート・クラス」は、そのテンプレートに固有の用途を示します。新しいテーマに切り替えると、あるテーマのすべてのテンプレートは、別のテーマの対応するテンプレートにマップされます。アプリケーション・ビルダーは、テンプレート・クラスの割当てによってこのテンプレート・マッピングを行います。
カレント・アプリケーションに既存のテンプレートを適用するには、「サブスクリプション」を使用します。既存のテンプレートを選択すると、ユーザーはそのテンプレートのサブスクライバになります。
マスター・テンプレートの新しいコピーをロードするには、「リフレッシュ」を選択します。
各テンプレートは、ヘッダー、ボディ、フッターおよびサブテンプレートで構成されます。動的コンテンツを含めるには、置換文字列を使用します。テンプレートのすべての置換文字列は、大文字で指定し、シャープ記号(#)で囲む必要があります。サポートされる置換文字列については、アイテム・ヘルプを参照してください。
「ヘッダー」は、ページ・テンプレートの最初のセクションです。HTMLドキュメントの<Head>
セクションを定義するHTMLを入力します。表示するリージョンまたはAFTER HEADERを実行するプロセスおよび計算は、テンプレートのこのセクションがレンダリングされた直後に表示または実行されます。次に例を示します。
<html> <head> <title>#TITLE#</title> #HEAD# </head>
「ボディ」はページ・テンプレートの2番目のセクションで、ヘッダーとフッターの間にレンダリングされます。HTMLドキュメントの<Body>
セクションを定義するHTMLを入力します。#BOX_BODY#
置換文字列を含める必要があります。#FORM_OPEN#
および#FORM_CLOSE#
置換文字列も含めることをお薦めします。次に例を示します。
<body #ONLOAD#> #FORM_OPEN# #BOX_BODY# #FORM_CLOSE# </body>
「フッター」は、ボディの後に表示する、ページ・テンプレートの3番目のセクションです。
「ブレッドクラム表示ポイント」は、ブレッドクラムを使用する生成済コンポーネントに適用され、ブレッドクラムが配置されるページ上の位置を定義します。「サイドバー表示ポイント」は、サイドバーを使用する生成済コンポーネントに適用され、サイドバーが配置されるページ上の位置を定義します。
「サブテンプレート」を使用すると、コンポーネントの表示方法を指定できます。選択可能なサブテンプレートは次のとおりです。
成功メッセージ: #SUCCESS_MESSAGE#
置換文字列を拡張します。プログラムによって、またはプロセスの属性として、成功メッセージを定義できます。成功メッセージが存在し、ページ・テンプレートが#SUCCESS_MESSAGE#
置換文字列を含んでいる場合は、このサブテンプレートを使用して、メッセージをレンダリングします。
ナビゲーション・バー: ナビゲーション・バー・エントリの表示を制御します。#NAVIGATION_BAR#
置換文字列がテンプレートのヘッダー、ボディまたはフッターで参照される際に置換されるHTMLまたはテキストを入力します。#BAR_BODY#
置換文字列を使用して、各ナビゲーション・バー・アイコンが表示される位置を指定してください。
ナビゲーション・バー・エントリ: 各ナビゲーション・バー・エントリのナビゲーション・バー#BAR_BODY#
置換文字列に置換されるHTMLまたはテキストを入力します。次の置換文字列を使用して、ナビゲーション・バー・エントリのサブテンプレートを作成します。
通知: #NOTIFICATION_MESSAGE#
置換文字列が、テンプレートのヘッダー、ボディまたはフッターで参照される際に置換されるHTMLまたはテキストを入力します。置換文字列#MESSAGE#
を使用して、通知メッセージのメッセージ本体が表示される位置を指定します。
アプリケーションに標準タブが含まれている場合は、この属性を移入する必要があります。#TAB_CELLS#
置換文字列を使用して、ページ・テンプレートのヘッダー、ボディまたはフッターに標準タブを配置できます。ページ・テンプレートの「ヘッダー」、「ボディ」、「フッター」は、HTML表および行を定義します。このサブテンプレートは、特定のセルを定義することによって、これらのタブの表示方法を定義します。選択可能な属性は次のとおりです。
カレント・タブ: 現在選択された標準タブに置換されるHTMLまたはテキストを入力します。タブがカレントであるかどうかは、標準タブ属性によって判別されます。次に例を示します。
<td>#TAB_LABEL#</td>
非カレント標準タブ: 選択されていない標準タブに置換されるHTMLまたはテキストを入力します。#TAB_TEXT#
置換文字列を使用して、テンプレート内のタブ・ラベルおよびリンクの位置を指定してください。次に例を示します。
<td><a href="#TAB_LINK#">#TAB_LABEL#</a></td>
アプリケーションに2つのレベルのタブが含まれている場合は、この属性を移入する必要があります。選択された親タブに置換されるHTMLまたはテキストを入力します。#PARENT_TAB_CELLS#
置換文字列を使用して、ページ・テンプレートのヘッダー、ボディまたはフッターに親タブを配置できます。親タブは、標準タブと組み合せた場合にのみ表示されます。選択可能な属性は次のとおりです。
カレント親タブ: 選択された親タブに置換されるHTMLまたはテキストを入力します。タブがカレントかどうかは、表示されるページと、ページで使用している標準タブ・セットで判断します。#TAB_TEXT#
を使用して、テンプレート内のタブ・ラベルおよびリンクの位置を指定してください。次に例を示します。
<td><a href="#TAB_LINK#">#TAB_LABEL#</a></td>
非カレント親タブ: 選択されていない親タブに置換されるHTMLまたはテキストを入力します。#TAB_TEXT#
を使用して、テンプレート内のタブ・ラベルおよびリンクの位置を指定してください。次に例を示します。
<td><a href="#TAB_LINK#">#TAB_LABEL#</a></td>
このサブテンプレートは、完全にイメージに基づくタブに使用します。選択可能な属性は次のとおりです。
カレント・イメージ・タブ: イメージベースのタブが現在選択されていることを示すために使用するHTMLを入力します。タブに表示される名前を示す#TAB_TEXT#
置換文字列を含めます。
非カレント・イメージ・タブ: イメージ・タブは現在選択されていないことを示すために使用するHTMLを入力します。タブに表示される名前を示す#TAB_TEXT#
置換文字列を含めます。
HTML DBエンジンが同じリージョン位置の複数の列にリージョンを表示する場合、HTML DBはHTML表をレンダリングします。この属性によって、<table>
タグの属性を制御できます。
ポップアップLOVテンプレートは、POPUPとして定義したすべてのアイテムに対するポップアップ・リストの表示方法を制御します。ポップアップLOVテンプレートは、各テーマに1つのみ指定できます。
ここでは、「ポップアップLOVテンプレート」ページ固有のセクションについて説明します。
テーマは、テンプレートが関連付けられているテーマを示します。「テンプレート・クラス」は、そのテンプレートに固有の用途を示します。新しいテーマに切り替えると、あるテーマのすべてのテンプレートは、別のテーマの対応するテンプレートにマップされます。アプリケーション・ビルダーは、テンプレート・クラスの割当てによってこのテンプレート・マッピングを行います。テンプレートに変換が必要なテキスト文字列が含まれているかどうかを示すには、「言語変換可能」チェック・ボックスを使用します。
カレント・アプリケーションに既存のテンプレートを適用するには、「テンプレートのサブスクリプション」を使用します。既存のテンプレートを選択すると、ユーザーはそのテンプレートのサブスクライバになります。
マスター・テンプレートの新しいコピーをロードするには、「リフレッシュ」をクリックします。
「ポップアップ・アイコン」を使用して、POPUPタイプのアイテムのフォーム・フィールドの右側に表示するアイコンを指定します。デフォルトでは、HTML DBエンジンはlist.gif
イメージを使用します。「ポップアップ・アイコン属性」を使用して、ポップアップ・アイコンのイメージ属性(高さや幅など)を定義します。
リージョン・テンプレートは、リージョン属性の外観と配置を制御します。このテンプレートは、頻繁にHTML表を使用してコンテンツを配置します。
リージョン・テンプレートはリージョンにスタイル要素を適用します。また、置換文字列を表示します。#BODY#
は必須の置換文字列であり、リージョン・ソースが配置される位置を指定します。他のすべての置換文字列はオプションです。これらの置換文字列を使用すると、リージョン内のページ・コントロール(ボタンなど)の存在と配置を指定できます。
ここでは、「リージョン・テンプレート」ページ固有のセクションについて説明します。
「名前」は、テンプレートの名前を示します。テンプレートに変換が必要なテキスト文字列が含まれているかどうかを示すには、「言語変換可能」チェック・ボックスを使用します。「テーマ」は、テンプレートが関連付けられているテーマを示します。
「テンプレート・クラス」は、そのテンプレートに固有の用途を示します。新しいテーマに切り替えると、あるテーマのすべてのテンプレートは、別のテーマの対応するテンプレートにマップされます。アプリケーション・ビルダーは、テンプレート・クラスの割当てによってこのテンプレート・マッピングを行います。
カレント・アプリケーションに既存のテンプレートを適用するには、「テンプレートのサブスクリプション」を使用します。既存のテンプレートを選択すると、ユーザーはそのテンプレートのサブスクライバになります。
マスター・テンプレートの新しいコピーをロードするには、「リフレッシュ」をクリックします。
##BODY#
は、必須の置換文字列です。リージョン・ソースが配置される位置を指定します。他のすべての置換文字列はオプションです。有効な置換文字列は、次のとおりです。
#TITLE#
#EXPAND#
#CHANGE#
#BODY#
#FORM_OPEN#
#FORM_CLOSE#
リージョン位置にボタンを作成すると、定義した位置が選択リストに表示されます。次の置換文字列を使用して、リージョンにボタンを配置する位置を定義してください。
#EDIT#
#CLOSE#
#CREATE#
#EXPAND#
#HELP#
#DELETE#
#COPY#
#NEXT#
#PREVIOUS#
レポート列テンプレートによって、SQL問合せによって戻される1行の結果を制御できます。このタイプのテンプレートは、行全体ではなく、セルを定義します。
各レポート・テンプレートでは、#1#、#2#、#3#
などの構文を使用して列名を識別します。#ENAME#
や#EMPNO#
などの列名の置換構文を使用して、列に名前を付けることもできます。アプリケーションのどのアイテムもテンプレート内で参照できます。 たとえば、テンプレートのABC.
というアイテムを参照するには、置換文字列&ABC.
を正確に含めます。ABC.の実際の値は、ABC
という名前のアプリケーションのアイテムを編集するエンド・ユーザーによって提供されます。
このセクションの構成は次のとおりです。
Oracle HTML DBには、次の2種類のレポート・テンプレートが含まれています。
汎用列テンプレート
名前付き列テンプレート
汎用列テンプレートは、列の外観を1回定義することによって、レポートの外観を決定します。その後、この外観は、レポート定義に指定された列の数に基づいて、必要なだけ繰り返されます。 このタイプのテンプレートを使用できるのは、行および列が標準的な構造のレポートに限られます。条件を使用すると、このタイプのテンプレートでレポートに追加のスタイルを適用できます。
次の例では、各列で特定のスタイルを使用する方法を示します。
<td class="tabledata" align="#ALIGN#">#COLUMN_VALUE#</td>
この例では、ページ・テンプレートにクラスtabledata
を含むCSSが存在することを想定しています。また、この例では、置換文字列#ALIGN#
および#COLUMN_VALUE#
を使用しています。実際にこのレポートを実行すると、これらの置換文字列は、SQL問合せの結果によって生成された値に置換されます。
問合せの選択リストに式を使用する場合は、列の別名を作成して実行時エラーを回避することをお薦めします。たとえば、次のような問合せを考えてみます。
SELECT ename, (sal + comm) * 12 FROM emp
問合せをリライトして、次のように列に別名を付けることができます。
SELECT ename, (sal + comm) * 12 yearly_comp FROM emp
名前付き列テンプレートを使用すると、より柔軟にレポートを設計できます。ただし、名前付きテンプレートは名前で列を参照するため、それらの列を基にしたレポートでのみ使用されます。次に例を示します。
<tr><td>#ENAME#</td><td>#SAL#</td></tr>
名前付き列テンプレートは非常に自由度の高いものですが、問合せごとに新しいテンプレートを作成する必要がある場合があります。位置表記を含めることもできます。次の例では、HTMLおよび置換文字列を使用する方法を示します。
<tr><td>#ENAME#</td><td>#SAL#</td></tr> <tr><td>#1#</td><td>#2#</td></tr>
ここでは、汎用列テンプレートの「レポート列テンプレート」ページ固有のセクションについて説明します。
「テンプレート名」は、テンプレートの名前を示します。テンプレートに変換が必要なテキスト文字列が含まれているかどうかを示すには、「言語変換可能」チェック・ボックスを使用します。「テンプレート・タイプ」は、テンプレートのタイプを示します。名前付き列テンプレートは、テンプレートの列名を参照します。汎用列テンプレートは、テンプレートの#COLUMN_VALUE#
を参照します。
テーマは、テンプレートが関連付けられているテーマを示します。「テンプレート・クラス」は、そのテンプレートに固有の用途を示します。新しいテーマに切り替えると、あるテーマのすべてのテンプレートは、別のテーマの対応するテンプレートにマップされます。アプリケーション・ビルダーは、テンプレート・クラスの割当てによってこのテンプレート・マッピングを行います。
カレント・アプリケーションに既存のテンプレートを適用するには、「テンプレートのサブスクリプション」を使用します。既存のテンプレートを選択すると、ユーザーはそのテンプレートのサブスクライバになります。
マスター・テンプレートの新しいコピーをロードするには、「リフレッシュ」をクリックします。
「行の前」では、レポート・テンプレートの最初に1回表示するHTMLを入力します。HTML表は、一般的に、次のようにこの属性を使用して開始します。
<table>
構文#1#
、#2#
、#3#
を使用して列ヘッダーを指定できます。次に例を示します。
<th>#1#</th><th>#2#</th><th>#3#</th>
置換文字列#TOP_PAGINATION#
を含めることによって、レポートの上部にページ区切りを含めることができます。この置換文字列は、開始タグ<tr>
で始まり、閉じタグ</tr>
で終わるHTMLを生成します。たとえば、表の開始タグと#TOP_PAGINATION#
置換文字列を含めるには、次のように入力します。
<table>#TOP_PAGINATION#
また、置換文字列#CSV_LINK#
を使用すると、ほぼすべてのスプレッドシート・プログラムと互換性があるCSVフォーマットにレポートをエクスポートできるようになります。
「列ヘッダー・テンプレート」を使用して、各列ヘッダーのセルをカラーにします。この属性のテキストには、セルのヘッダー・テキストをカラーにする位置を指定する必要があります。次に例を示します。
<th #ALIGNMENT#>#COLUMN_HEADER#</th>
列ヘッダーを使用しない場合は、次のように入力します。
OMIT
この属性を使用しない場合は、HTML DBエンジンによって、デフォルトの列ヘッダー・テンプレートが使用されます。
列テンプレートは、各列の外観を定義します。最大4つの列テンプレートを定義できます。各テンプレートは、条件付きにできます。たとえば、偶数行と奇数行に異なる背景色を指定したり、PL/SQLで定義した条件に一致する行をハイライトできます。
各列テンプレートでは、各列の外観を定義します。表7-9に、列テンプレートでサポートされる置換文字列を示します。
表7-9 列テンプレートの置換文字列
置換文字列 | 説明 |
---|---|
#ALIGNMENT#
|
列の位置合せを指定します。ユーザーが指定します。 |
#COLCOUNT#
|
列数をカウントします。 |
#COLNUM#
|
現在の列番号を定義します。 |
#COLUMN_HEADER#
|
列ヘッダーを定義します。 |
#COLUMN_VALUE#
|
列の値に置換されます。 |
#ROWNUM#
|
現在の行番号を指定します。 |
次に例を示します。
<td #ALIGNMENT#>#COLUMN_VALUE#</td>
実際にこのレポートを実行すると、これらの置換文字列は、SQL問合せの結果によって生成された値に置換されます。
条件を作成すると、指定した条件に一致するかどうかによって列の表示が異なるレポートを作成できます。条件付きで使用される列テンプレートを指定するには、列テンプレートの条件リストから条件タイプを選択します。有効な値は、次のとおりです。
PL/SQL式に基づく使用: その行のデータに基づき、条件付きで列を書式化します。
偶数行で使用: 偶数行を条件付きで書式化します。
奇数行で使用: 奇数行を条件付きで書式化します。
「PL/SQL式に基づく使用」を選択する場合は、次に列テンプレートの式フィールドでPL/SQL式を入力します。たとえば、次の式で値が2000より大きい場合、その値を太字で表示します。
#SAL# > 2000
置換文字列#ROWNUM#
を使用することもできます。次に例を示します。
#ROWNUM# > 2000
「行の後」を使用して、最後の行の後に表示するテキストを指定します。HTML表のタグは、一般的に、この属性を使用して閉じます。次に例を示します。
</table>
「行の後」属性は、次の置換文字列をサポートします。
#PAGINATION#
ページ区切り属性で置換されます。
#COLCOUNT#
実行時に、レポートで定義された列数に置換されます。
「チェックした行のバックグラウンド・カラー」を使用して、行セレクタが選択されている場合のレポート行の背景色を制御します。「カレント行のバックグラウンド・カラー」を使用して、ユーザーがその行の上にマウスを移動した場合のレポート行の背景色を制御します。
「ページ区切りのサブテンプレート」セクションには、「ページ区切りテンプレート」、「次のページ・テンプレート」、「前のページ・テンプレート」、「次のセット・テンプレート」および「前のセット・テンプレート」を編集する属性が含まれています。「ページ区切りのサブテンプレート」は、置換文字列#PAGINATION_NEXT#
、#PAGINATION_NEXT_SET#
、#PAGINATION_PREVIOUS#
および#PAGINATION_PREVIOUS_SET#
をサポートしています。表7-12に、これらのテンプレートについて示します。
表7-10 ページ区切りサブテンプレート属性
ここでは、名前付き列テンプレートの「レポート列テンプレート」ページ固有のセクションについて説明します。
「テンプレート名」は、テンプレートの名前を示します。テンプレートに変換が必要なテキスト文字列が含まれているかどうかを示すには、「言語変換可能」チェック・ボックスを使用します。「テンプレート・タイプ」は、テンプレートのタイプを示します。名前付き列テンプレートは、テンプレートの列名を参照します。汎用列テンプレートは、テンプレートの#COLUMN_VALUE#
を参照します。
テーマは、テンプレートが関連付けられているテーマを示します。「テンプレート・クラス」は、そのテンプレートに固有の用途を示します。新しいテーマに切り替えると、あるテーマのすべてのテンプレートは、別のテーマの対応するテンプレートにマップされます。アプリケーション・ビルダーは、テンプレート・クラスの割当てによってこのテンプレート・マッピングを行います。
カレント・アプリケーションに既存のテンプレートを適用するには、「サブスクリプション」を使用します。既存のテンプレートを選択すると、ユーザーはそのテンプレートのサブスクライバになります。
マスター・テンプレートの新しいコピーをロードするには、「リフレッシュ」をクリックします。
行テンプレートは、各行の外観を定義します。最大4つの行テンプレートを定義できます。各テンプレートは、条件付きにできます。
各行テンプレートでは、各行の外観を定義します。表7-11に、行テンプレートでサポートされる置換文字列を示します。
表7-11 行テンプレートの置換文字列
置換文字列 | 説明 |
---|---|
#ALIGNMENT#
|
行の位置合せを指定します。ユーザーが指定します。 |
#COLCOUNT#
|
列数をカウントします。 |
#COLNUM#
|
現在の列番号を定義します。 |
#COLUMN_HEADER#
|
列ヘッダーを定義します。 |
#COLUMN_VALUE#
|
列の値に置換されます。 |
#ROWNUM#
|
現在の行番号を指定します。 |
条件を作成すると、指定した条件に一致するかどうかによって行の表示が異なるレポートを作成できます。条件付きで使用される行テンプレートを指定するには、列テンプレートの条件リストから条件タイプを選択します。有効な値は、次のとおりです。
PL/SQL式に基づく使用: その行のデータに基づき、条件付きで列を書式化します。
偶数行で使用: 偶数行を条件付きで書式化します。
奇数行で使用: 奇数行を条件付きで書式化します。
「PL/SQL式に基づく使用」を選択する場合は、次に列テンプレートの式フィールドでPL/SQL式を入力します。たとえば、次の式で値が2000より大きい場合、その値を太字で表示します。
#SAL# > 2000
置換文字列#ROWNUM#
を使用することもできます。次に例を示します。
#ROWNUM# > 2000
各列ヘッダーのセルをカラーにするには、このテンプレートを使用します。この属性のテキストには、セルのヘッダー・テキストをカラーにする必要がある位置を示すヘルプを含める必要があります。「列ヘッダー・テンプレート」を指定しない場合は、デフォルトの列ヘッダー・テンプレートが適用されます。列ヘッダーを使用しない場合は、OMIT
を入力します。次に例を示します。
<th #ALIGNMENT#>#COLUMN_HEADER#</th>
「行の前」では、レポート・テンプレートの最初に1回表示するHTMLを入力します。HTML表は、一般的に、次のようにこの属性を使用して開始します。
<table>
構文#1#
、#2#
、#3#
を使用して列ヘッダーを指定できます。次に例を示します。
<th>#1#</th><th>#2#</th><th>#3#</th>
置換文字列#TOP_PAGINATION#
を含めることによって、レポートの上部にページ区切りを含めることができます。この置換文字列は、開始タグ<tr>
で始まり、閉じタグ</tr>
で終わるHTMLを生成します。たとえば、表の開始タグと#TOP_PAGINATION#
置換文字列を含めるには、次のように入力します。
<table>#TOP_PAGINATION#
また、置換文字列#CSV_LINK#
を使用すると、ほぼすべてのスプレッドシート・プログラムと互換性があるCSVフォーマットにレポートをエクスポートできるようになります。
「行の後」を使用して、最後の行の後に表示するテキストを指定します。HTML表のタグは、一般的に、この属性を使用して閉じます。次に例を示します。
</table>
「行の後」属性は、次の置換文字列をサポートします。
#PAGINATION#
ページ区切り属性で置換されます。
#COLCOUNT#
実行時に、レポートで定義された列数に置換されます。
「チェックした行のバックグラウンド・カラー」を使用して、行セレクタが選択されている場合のレポート行の背景色を制御します。「カレント行のバックグラウンド・カラー」を使用して、ユーザーがその行の上にマウスを移動した場合のレポート行の背景色を制御します。
「ページ区切り」セクションには、「ページ区切りテンプレート」、「次のページ・テンプレート」、「前のページ・テンプレート」、「次のセット・テンプレート」および「前のセット・テンプレート」を編集する属性が含まれています。「ページ区切りのサブテンプレート」は、置換文字列#PAGINATION_NEXT#
、#PAGINATION_NEXT_SET#
、#PAGINATION_PREVIOUS#
および#PAGINATION_PREVIOUS_SET#
をサポートしています。表7-12に、これらのテンプレートについて示します。
表7-12 ページ区切りサブテンプレート属性
特定の出力モード・テンプレートを作成し、「アプリケーション属性の編集」ページのユーザーのデフォルト・テンプレートのセクションでこのテンプレートを指定することによって、ページを出力用に最適化できます。通常、ページを出力用に最適化するには、出力モード・テンプレートを使用します。たとえば、このテンプレートを使用して次の操作を実行できます。
タブまたはナビゲーション・バーを非表示にします。
アイテムをフォーム要素ではなくテキストとして表示します。
選択したテーマに印刷用テンプレートが含まれていない場合、新しいページ・テンプレートを作成することによって出力モード・テンプレートを作成できます。
出力モード・テンプレートを有効にするには、「テーマを定義」ページの「コンポーネントごとのデフォルトのテンプレート」セクションでそのテンプレートを選択します。
出力モード・テンプレートを有効にするには、次のステップを実行します。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テーマ」を選択します。
「テーマ」ページが表示されます。
「テーマ」リストで、テーマ名をクリックします。
「印刷用」ページで新しく選択を行います。
「変更の適用」をクリックします。
カスケード・スタイルシート(CSS)によって、構造を変更せずにWebページのスタイルを制御できます。CSSを適切に使用すると、カラー、余白、フォントなどの視覚属性がHTMLドキュメントの構造から切り離されます。Oracle HTML DBのテーマには、独自のCSSを参照するテンプレートを含めることができます。特定のテーマの各CSSで定義されたスタイル・ルールによって、レポートおよびリージョンの表示も指定されます。
このセクションの構成は次のとおりです。
カスケード・スタイルシートを作業領域にアップロードするには、カスケード・スタイルシート(CSS)・リポジトリを使用します。アップロードされたカスケード・スタイルシート(CSS)は、作業領域に作成されたすべてのアプリケーションで使用できます。カスケード・スタイルシートは、ファイル・システムに書き込まれるため、HTMLソース・コードで参照できます。
カスケード・スタイルシートを作業領域にアップロードするには、次のステップを実行します。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「共有コンポーネント」ページが表示されます。
「ファイル」で、「カスケード・スタイルシート」を選択します。
CSSリポジトリが表示されます。
新しいCSSをアップロードするには、「作成」をクリックして、画面に表示されるステップに従います。
既存のCSSを編集するには、名前を選択します。
既存のCSSをダウンロードするには、「ダウンロード」アイコンをクリックします。
ページ・テンプレートのヘッダー・セクション内でアップロードされたカスケード・スタイルシートを参照できます。ヘッダー・セクションを使用して、HTMLドキュメントの<HEAD>セクションを構成するHTMLを入力します。
アップロードされたカスケード・スタイルシートを参照するには、次のステップを実行します。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「ユーザー・インタフェース」で、「テーマ」を選択します。
「テーマ」ページが表示されます。
「タスク」リストから「テンプレートの表示」を選択します。
編集するページ・テンプレートの名前を選択します。
ヘッダーで、Headセクション内の<link>
タグを使用して、適切なスタイルシートを参照します。
特定のアプリケーションに関連付けられたアップロード済ファイルを参照するには、置換文字列#APP_IMAGES#
を使用します。次に例を示します。
<html> <head> <title>#TITLE#</title> #HEAD# <link rel="stylesheet" href="#APP_IMAGES#sample2.css" type="text/css"> </head> ...
特定の作業領域に関連付けられたアップロード済ファイルを参照するには、置換文字列#WORKSPACE_IMAGES#
を使用します。次に例を示します。
<html> <head> <title>#TITLE#</title> #HEAD# <link rel="stylesheet" href="#WORKSPACE_IMAGES#sample3.css" type="text/css"> </head> ...
イメージ・リポジトリを使用して、イメージを作業領域にアップロードできます。
イメージを作業領域にアップロードするには、次のステップを実行します。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「共有コンポーネント」ページが表示されます。
「ファイル」で、「イメージ」を選択します。
イメージ・リポジトリが表示されます。
新しいイメージをアップロードするには、「作成」をクリックします。
画面に表示されるステップに従います。
このセクションの構成は次のとおりです。
イメージ属性の編集では、イメージについて説明する注意の追加、または関連付けられたアプリケーションの変更ができます。しかし、実際のイメージを変更することはできません。イメージを変更するには、イメージを削除して再度アップロードします。
イメージ属性を作業領域で編集するには、次のステップを実行します。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「共有コンポーネント」ページが表示されます。
「ファイル」で、「イメージ」を選択します。
イメージ・リポジトリが表示されます。
次のいずれかを選択してビューにフィルタを適用します。
イメージ: テキストを入力して、イメージ名またはイメージの説明テキストを検索します。検索対象として、「すべてのイメージ」、「作業領域イメージ」または「アプリケーション・イメージ」を選択します。
ビュー: 次のいずれかを選択します。
アイコン(デフォルト): 各イメージを大きいアイコンとして表示します。
詳細: 各イメージをレポートで1行に表示します。
「実行」をクリックします。
イメージを選択します。
イメージを新しいアプリケーションに関連付けるには、「アプリケーション」リストからアプリケーションを選択します。
注意を編集または追加するには、「注意」フィールドを編集します。
「変更の適用」をクリックします。
イメージを削除するには、次のステップを実行します。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「共有コンポーネント」ページが表示されます。
「ファイル」で、「イメージ」を選択します。
イメージ・リポジトリが表示されます。
次のいずれかを選択してビューにフィルタを適用します。
イメージ: テキストを入力して、イメージ名またはイメージの説明テキストを検索します。検索対象として、「すべてのイメージ」、「作業領域イメージ」または「アプリケーション・イメージ」を選択します。
ビュー: 次のいずれかを選択します。
アイコン(デフォルト): 各イメージを大きいアイコンとして表示します。
詳細: 各イメージをレポートで1行に表示します。
「実行」をクリックします。
イメージを選択します。
「削除」をクリックします。
Oracle HTML DBのインストール時に、イメージ用の仮想ディレクトリがインストーラによって作成されます。この仮想ディレクトリは、アップロードされたイメージを含むファイル・システム上の実際のパスを指します。デフォルトでは、接頭辞を使用してこの仮想ディレクトリを参照します。
/i/
アプリケーションの作成時に、「アプリケーション属性の編集」ページでこの接頭辞を検証する必要があります。
アプリケーションのイメージ接頭辞を検証するには、次のステップを実行します。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
アプリケーションのホームページで、「属性の編集」をクリックします。
「標準属性の編集」をクリックします。
「アプリケーション属性の編集」ページが表示されたら、「イメージ接頭辞」フィールドを検索します。
デフォルトでは、この属性は/i/
と定義されています。ご使用の環境でのこの仮想ディレクトリの名前については、管理者に問い合せてください。
静的テキスト(ページ、リージョン・ヘッダー、リージョン・フッターなど)にイメージを埋め込む場合は、置換文字列#IMAGE_PREFIX#
を使用してイメージを参照できます。たとえば、イメージgo.gif
を参照するには、次の構文を使用します。
<img src="#IMAGE_PREFIX#go.gif">
また、完全修飾されたURLを使用してイメージを参照することもできます。次に例を示します。
<img src="http://g-images.amazon.com/images/G/01/associates/navbar2000/logo-no-border(1).gif">
静的ファイル・リポジトリを使用して、静的ファイルを作業領域にアップロードできます。
静的ファイルを作業領域にアップロードするには、次のステップを実行します。
「作業領域」ホームページにナビゲートして、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「共有コンポーネント」ページが表示されます。
「ファイル」で、「静的ファイル」を選択します。
静的ファイル・リポジトリが表示されます。
ファイルをアップロードするには、「作成」をクリックします。
画面に表示されるステップに従います。
このセクションの構成は次のとおりです。
30,000バイト未満の静的ファイルは、ファイル名を選択して編集できます。それ以外の場合は、ファイルをオフラインで編集し、再度アップロードする必要があります。
30,000バイト未満の静的ファイルを編集するには、次のステップを実行します。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「共有コンポーネント」ページが表示されます。
「ファイル」で、「静的ファイル」を選択します。
静的ファイル・リポジトリが表示されます。
次のいずれかを選択してビューにフィルタを適用します。
静的ファイル: テキストを入力して、ファイル名またはファイルの説明テキストを検索します。
ビュー: 次のいずれかを選択します。
アイコン(デフォルト): を選択すると、各ファイルを大きいアイコンとして表示します。
詳細: 各ファイルをレポートで1行に表示します。
「実行」をクリックします。
ファイルを選択します。
注意を編集または追加するには、「注意」フィールドを編集します。
「変更の適用」をクリックします。
アップロードしたファイルをダウンロードするには、次のステップを実行します。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「共有コンポーネント」ページが表示されます。
「ファイル」で、「静的ファイル」を選択します。
静的ファイル・リポジトリが表示されます。
「ビュー」から「詳細」を選択し、「実行」をクリックします。
該当するファイルの横にある「ダウンロード」アイコンを選択します。
アップロードした静的ファイルを削除するには、次のステップを実行します。
「作業領域」ホームページにナビゲートし、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
「共有コンポーネント」をクリックします。
「共有コンポーネント」ページが表示されます。
「ファイル」で、「静的ファイル」を選択します。
静的ファイル・リポジトリが表示されます。
次のいずれかを選択してビューにフィルタを適用します。
静的ファイル: テキストを入力して、ファイル名またはファイルの説明テキストを検索します。
ビュー: 次のいずれかを選択します。
アイコン(デフォルト): を選択すると、各ファイルを大きいアイコンとして表示します。
詳細: 各ファイルをレポートで1行に表示します。
「実行」をクリックします。
ファイルを選択します。
「削除」をクリックします。
リージョンは、特定のテンプレートを使用してHTMLコンテンツの書式を設定するページ領域です。リージョンを使用すると、ページ・コントロールをグループ化できます。複数列レイアウトを作成するには、同じ表の隣接するセルに表示される2つのリージョンを作成します。
複数列レイアウトは、次のいずれかの方法で作成できます。
2つの隣接するリージョンを手動で作成します。
複数列の表を含むページ・テンプレートを定義します。
「リージョンの作成」ウィザードを使用して、新しいリージョンを作成します。2列のページを作成するには、2つのリージョンを作成します。Oracle HTML DBによって、2列の表内の#BOX_BODY#
が置換され、2つの個別のセルにリージョンが表示されます。
2つのリージョンを作成することによって2列のページを作成するには、次のステップを実行します。
「作業領域」ホームページにナビゲートします。
「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
ページを選択します。
ページ定義が表示されます。
1つ目のリージョンを作成します。
「リージョン」で、「作成」をクリックします。
「リージョンの作成」ウィザードが表示されます。
リージョン・タイプを選択します。
「列」フィールドから、「1」を選択します。
画面に表示されるステップに従います。
2つ目のリージョンを作成します。
「リージョン」で、「作成」をクリックします。
「リージョンの作成」ウィザードが表示されます。
リージョン・タイプを選択します。
「列」フィールドから、「2」を選択します。
画面に表示されるステップに従います。
ページ・テンプレートは、ページ・コントロールおよびページ・コンポーネントの配置など、個々のページの外観を定義します。各ページ・テンプレートは、ヘッダー、ボディおよびフッターの3つのセクションに分かれています。最も基本的なテンプレートのボディ属性には置換文字列#BOX_BODY#
が含まれている必要があります。ページのレンダリング時、HTML DBエンジンによって#BOX_BODY#
がHTMLで置換され、そのページにリージョンが表示されます。
複数列のページを作成するには、複数列の表を含むページ・テンプレートを定義します。次に、特定の表のセル内にリージョンを明示的に配置します。
次の例では、2列のページを作成し、各列で置換文字列#REGION_POSITION_XX#
を使用してリージョンの位置を指定する方法を示します。ページ・レベル・テンプレートのボディ・セクションに次のコードを入力します。
<body #ONLOAD#> #FORM_OPEN# <table style="width:100%"> <tr> <td style="width:50%;padding:5px;">#REGION_POSITION_01#</td> <td style="width:50%; border-left:2px #bbbbbb dashed; padding:5px;">#REGION_POSITION_02#</td> </tr> <br /> #BOX_BODY# #FORM_CLOSE# </body>
このページ・レベル・テンプレートを作成すると、「リージョンの作成」ウィザードの実行時に、新しく定義した位置が「表示ポイント」オプションとして選択可能になります。
Oracle HTML DBのフォーム、レポートおよびチャートによって処理されない特定のHTMLコンテンツを生成する必要がある場合、PL/SQLタイプのリージョンを使用できます。このタイプのリージョンにHTMLを生成するには、PL/SQL Webツールキットを使用する必要があります。バインド変数構文を使用して、セッション・ステートを参照できます。この方法でHTMLを生成する場合、テンプレートの場合と同じ一貫性および制御は得られないことに注意してください。
参照:
|
リージョン内に生成されるHTMLをより動的に制御するには、PL/SQLを使用できます。たとえば、現在の日付を出力するには、次のソースを持つリージョンを作成できます。
htp.p(TO_CHAR(SYSDATE,'Day Month DD, YYYY'));
次の例では、表にアクセスします。
DECLARE
l_max_sal NUMBER;
BEGIN
SELECT max(sal) INTO l_max_sal FROM emp;
htp.p('The maximum salary is: '||TO_CHAR(l_max_sal,'999,999.00'));
END;