19.2.1 プラグインの理解

プラグインおよび例の検索方法について学習します。

19.2.1.1 プラグインについて

プラグインは、APEXで使用可能な組込みタイプの拡張機能です。

アプリケーションで新しいアイテム、リージョン、プロセスおよび動的アクション・タイプを宣言的に使用するためのプラグインを作成します。

APEXでは、認証スキーム、認可スキーム、アイテム、リージョン、動的アクションおよびプロセス・タイプのグループ・セットがサポートされます。プラグインによってアプリケーション内で新しいタイプを宣言的に作成および使用することによって、これらの組込みタイプを拡張する手段が提供されます。プラグインは再利用を目的として設計されているため、開発者はプラグインを別のワークスペースにエクスポートおよびインポートしたり、プラグイン・リポジトリを使用してプラグインをOracle APEXプラグイン・コミュニティと共有できます。

プラグインを実装するプロセスには、次のステップがあります。

  1. アプリケーション・ワークスペースでプラグインを作成するか、またはインポートします。
  2. プラグインを使用するための認可スキーム、アイテム、リージョン、プロセスまたは動的アクション・タイプを編集または作成します。
  3. プラグインをテストするためにアプリケーションを実行します。

19.2.1.2 テンプレート・コンポーネント・タイプ・プラグインについて

テンプレート・コンポーネントは、他のプラグインと同様にページ・デザイナで動作する再利用可能なUIコンポーネントです。

テンプレート・コンポーネントについて

テンプレート コンポーネントを使用すると、開発者は、アクション ポジションやアクション テンプレートなどのプレースホルダを使用してテンプレートを作成できます。APEXは、テンプレート内のプレースホルダをカスタム・プラグイン属性として公開します。

テンプレート・コンポーネントを使用して、PL/SQLに基づいていない新しいリージョン・タイプをAPEXに追加します。テンプレート・コンポーネントでは、テンプレート・ディレクティブ、行レベルの条件を含む「アクション」および「メニュー」ボタン、CSSおよびJSファイルの両方がサポートされています。

テンプレート・コンポーネントの作成について

テンプレート・コンポーネントを作成するには、新しいプラグインを作成し、「タイプ」に「テンプレート・コンポーネント」を指定します。「テンプレート」に、テンプレートのマークアップを入力します。「使用可能」属性を構成して、プラグインの表示方法とその使用場所を指定します。

  • 複数(レポート) - 1つのリージョンのテンプレート・コンポーネントを使用して、ページ区切りオプションで複数の行を表示します。

  • 単一(一部) - 対話モード・レポート列またはリージョンのテンプレート・コンポーネントを使用して、単一行を表示します。

ヒント:

Template Component Type plug-in include support for template directives.詳細は、「テンプレート・ディレクティブの使用」を参照してください。

カスタム属性

静的IDを参照するには、プラグインを編集し、「コンポーネント」のスコープを持つカスタム属性を追加して、#STATIC_ID#プレースホルダ構文を使用します。プラグインの編集ページで「テンプレートから同期」ボタンをクリックすると、すべてのプレースホルダをカスタム属性としてすばやく同期できます。これらのカスタム属性は、プレースホルダに値を割り当てるためにページ・デザイナで使用されます。

アクション・ポジションおよびアクション・テンプレート

プラグインを編集してアクションを追加すると、エンド ユーザーはテンプレート コンポーネントとやり取りできます。「アクション・テンプレート」では、テンプレートが単純なボタンであるか、「メニュー」ボタンを表示するかを定義します。「アクション・ポジション」は、テンプレート内のボタンの位置を定義します。ページ・デザイナで、ボタンのクリック時に実行するアクションを指定します。

ネストされたテンプレート

Oracle APEXでは、現在のテンプレート・コンポーネント内に別のテンプレート・コンポーネントを埋め込むことができます。テンプレート・コンポーネントをネストすると、テンプレートをより小さい再利用可能なコンポーネントに分割できます。テンプレート・コンポーネントをネストするには、テンプレート・ディレクティブの{with/}および{apply/}構文を使用します。

テンプレート・コンポーネントの例の表示

ユニバーサル・テーマには、複数のテンプレート・コンポーネント・タイプ・プラグインが含まれています。

  • コメント - クラシック・レポートのコメント・テンプレートに基づきます。カスタム・リージョン属性を使用して、ユーザー・コメントおよびステータス更新を宣言的に表示します。アバターをサポートします。
  • コンテンツ行 - クラシック・レポートのコンテンツ行テンプレートに基づきます。カスタム・リージョン属性を使用して、リージョンのコンテンツおよびレイアウトをコンテンツ行として表示します。アバターとバッジをサポートします。
  • メディア・リスト - クラシック・レポート・メディア・リスト・テンプレートに基づいています。カスタム・リージョン属性を使用して、リージョンのコンテンツおよびレイアウトをメディア・リストとして表示します。アバターとバッジをサポートします。
  • タイムライン - クラシック・レポートのタイムライン・テンプレートに基づいています。カスタム・リージョン属性を宣言的に設定して、一連のイベントを表示します。

使用可能なテンプレート・コンポーネント・タイプ・プラグインを表示するには、「共有コンポーネント」「テンプレート」の順に進み、「タイプ」「テンプレート・コンポーネント」でソートします。

19.2.1.3 プラグインの例

プラグインの例は、apex.worldおよびOracle APEX GitHubリポジトリで確認します。

次の場所で、プラグインの実装例を表示できます。

  • APEX WorldのPlug-insを見て回ります。

  • サンプル・プラグインは、Oracle APEX GitHubリポジトリで確認します。

    • https://github.com/oracle/apexにアクセスします。

    • 「ブランチ」で、リリースを選択し、「プラグイン」を選択します。