2022年2月4日金曜日

APEXアプリケーションへのヘルプ文書の埋め込み

 APEXのアプリケーションでは以下のコンポーネントに対して、ヘルプとなるHTML文書を埋め込むことができます。

  1. アプリケーションの情報ページ
  2. ページ
  3. ページ・アイテム(インラインとポップアップ)
  4. 対話モード・レポートの列
  5. 対話グリッド
  6. 対話グリッドの列
サンプル・データセットに含まれる表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のアプリケーション作成の参考になれば幸いです。