APEXのアプリケーションでは以下のコンポーネントに対して、ヘルプとなるHTML文書を埋め込むことができます。
- アプリケーションの情報ページ
- ページ
- ページ・アイテム(インラインとポップアップ)
- 対話モード・レポートの列
- 対話グリッド
- 対話グリッドの列
サンプル・データセットに含まれる表EMPを使って、ヘルプの埋め込みを確認するためのアプリケーションを作成します。
アプリケーション作成ウィザードを起動し、名前をヘルプの確認とします。
ページの追加をクリックし、対話グリッドのページを追加します。
ページ名は対話グリッドとします。表またはビュー、編集を許可を選択し、表またはビューとしてEMPを指定します。ページの追加をクリックします。
対話グリッドのページが追加されます。
再度、ページの追加を実行します。対話モード・レポートを選択します。
ページ名を対話モード・レポートとし、表またはビュー、対話モード・レポートを選択します。表またはビューとしてEMPを指定します。対話グリッドと違い編集には別ページのフォームが必要になります。フォームを含めるにチェックを入れます。
以上の設定で、ページの追加をクリックします。
対話モード・レポートのページが追加されます。
ページのヘルプを表示するページやアプリケーションの情報ページは、機能の情報ページに含まれるため、これにチェックを入れます。
アプリケーションの作成を実行します。
アプリケーションの情報ページ
アプリケーションの情報ページは、ナビゲーション・バーのはてなアイコンより開かれるメニューから呼び出されます。
情報ページはページ番号10010として作成されています。
リージョン情報ソースのソースのHTMLコードに、HTMLテキストとしてアプリケーションの説明を書き込みます。
ページのヘルプ
ページのヘルプも、ナビゲーション・バーのはてなアイコンのメニューから呼び出します。
対話グリッドのページを開いて、ページのヘルプを表示させると、モーダル・ダイアログが開きページの説明文が表示されます。
モーダル・ダイアログのページ自体は、ページ番号10011に実装されていますが、ヘルプとして表示される文章はページ・プロパティのヘルプとして記述されているHTMLテキストが表示されます。
ページ・アイテム
ページ・アイテムのヘルプとして、インライン・ヘルプ・テキストとヘルプ・テキストの2種類のヘルプを埋め込むことができます。ページ・アイテムのプロパティに含まれています。
ページ番号4のフォームに含まれるページ・アイテムP4_ENAMEのインライン・ヘルプ・テキスト、ヘルプ・テキストの双方に以下を設定します。
従業員の<span class="u-info-text">フルネーム</span>です。
フォームを表示し、ページ・アイテムに付加されたヘルプを確認します。
インライン・ヘルプ・テキストは、ページ・アイテムの下に小さめのフォントで表示されます。ヘルプ・テキストはページ・アイテムの右端に表示されるはてなアイコンをクリックすると、ヘルプ・テキストが記載されたダイアログが開きます。
対話モード・レポートの列
対話モード・レポートの列のプロパティのヘルプ・テキストとして、HTMLテキストを記述します。
列ENAMEに、先ほどと同じHTMLテキストを記述します。
ヘルプ・テキストが設定されていると、対話モード・レポートの列ラベルをクリックすると表示されるダイアログに、はてなアイコン(列情報)が追加表示されます。
はてなアイコンをクリックすると、ヘルプ・テキストが表示されます。
対話グリッド
対話グリッドのヘルプは、Attributesのヘルプのヘルプ・テキストに、HTMLテキストとして記述します。
対話グリッドのヘルプは、アクション・メニューに含まれるはてなアイコンより呼び出します。
設定したHTMLテキストは、一般的な対話グリッドの使い方の記述の前に配置されます。
対話グリッドの列
対話グリッドの列のプロパティのヘルプ・テキストとして、HTMLテキストを記述します。
列ENAMEに、対話モード・レポートの列と同じHTMLテキストを記述します。
ヘルプ・テキストが設定されていると、対話グリッドの列ラベルをクリックすると表示されるダイアログに、はてなアイコン(ヘルプ)が表示されます。
はてなアイコンをクリックすると、対話モード・レポートの列のヘルプとは異なり、ヘルプ・テキストが記述されたダイアログが開きます。
対話モード・レポートのヘルプに関して
対話モード・レポートのアクション・メニューにもはてなアイコンがあり、ヘルプを表示することができます。ただし、文章は標準の記述のみで開発者による設定はできません。
APEXのバージョン21.1、21.2で確認したのですが、対話モード・レポートのヘルプの表示は英語のみになっています。
不具合として登録済みであり、APEXの将来のバージョンで修正される予定です。
それまでのワークアラウンドとして、いくつかスクリプトを書きました。
対話モード・レポートのヘルプの翻訳を、アプリケーションの翻訳リポジトリにインポートする。
APEXの標準リポジトリから、対話モード・レポートの翻訳を取り出す。
アプリケーションの翻訳リポジトリにインポートした、対話モード・レポートのヘルプの翻訳テキストを削除する
Oracle APEXのアプリケーションにヘルプを埋め込む際に、コンポーネントによって微妙に違うことがあるので、設定方法を表示結果をまとめてみました。
簡単なアプリケーションですが、作成したアプリケーションのエクスポートを以下に置きました。対話モード・レポートの日本語ヘルプを、翻訳リポジトリにインポートしています。
https://github.com/ujnak/apexapps/blob/master/exports/embed-help-text.sql
Oracle APEXのアプリケーション作成の参考になれば幸いです。
完