---
sourceDocument: Xanadu API リファレンス
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - ja-JP

ft:publication_title :

    - Xanadu API リファレンス

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# UI 拡張ポイントの作成と追加

# UI 拡張ポイントの作成と追加 {#ariaid-title1}

* リリースバージョン: Xanadu
* 
* 更新日 2024年08月01日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：3分

アプリケーションを開発する場合は、UI 拡張ポイントを作成して、基本アプリケーションコード内のサーバー側 HTML 拡張などの UI マクロまたは UI ページに追加します。

UI スクリプト拡張ポイントを使用して、データまたはオブジェクトを登録済みのカスタム UI マクロに送信でき、返された結果を処理する特定の場所を指定します。

## UI 拡張ポイントの作成 {#ariaid-title2}

アプリケーションコード内で、HTML 拡張などの UI マクロに配置できる UI 拡張ポイントを作成します。UI 拡張ポイントを配置することで、データまたはオブジェクトをカスタマイズに送信可能でデータが返されるポイントになる、アプリケーションコード内の特定の場所を指定します。

### 始める前に

必要なロール：admin、またはアプリケーションの開発者またはアドミニストレーター向けの特定のロール  
注:  
アプリケーション固有のアドミンロールと委託開発については、「[アプリケーション管理アプリのアクセス制御ルール](https://www.servicenow.com/docs/access?context=ACL-access-checks&version=xanadu&pubname=xanadu-application-development&ft:locale=en-US)」および「[委託開発と展開](https://www.servicenow.com/docs/access?context=c_DelegatedDevelopment&version=xanadu&pubname=xanadu-application-development&ft:locale=en-US)」を参照してください。

### このタスクについて

定義 拡張ポイントのコンテンツと構造。この定義では、カスタマイズの構成方法、アプリケーションコードとのやり取りの方法、および拡張ポイントでカスタマイズによって返されるデータを処理する方法について説明します。

適切な定義を作成することによって、拡張の機能の構造を指定できます。

### 手順

1. 移動先 すべてシステムの拡張点UI の拡張ポイント.
2. \[新規\] をクリックします。
3. フォームのフィールドに入力します。  
   {#create-ui-ext-pt__table_tqn_cfv_s1b__entry__2}

   | フィールド | 説明 |
   |-|-|
   | 名前 | 拡張ポイントの一意の名前。名前は最長 100 文字の英数字 (特殊文字を含む) です。 |
   | API 名 | 拡張ポイント API の名前。適用先のアプリケーションスコープが先頭に付加されます。これはシステムによって割り当てられた名前であり、変更することはできません。 |
   | アプリケーション | 拡張ポイントがアサインされているアプリケーションスコープ。これはシステムによって割り当てられ、変更することはできません。スコーピングを使用することで提供される保護の詳細については、「[Application scope](https://www.servicenow.com/docs/access?context=c_ApplicationScope&version=xanadu&pubname=xanadu-application-development&ft:locale=en-US)」を参照してください。 |
   | このスコープに制限 | 拡張ポイントをアプリケーションスコープのみに制限するためのオプション。 |
   | AJAX/REST 経由のアクセスを許可 | AJAX または REST を介した UI 拡張ポイントへのアクセスを有効または無効にするためのオプション。 これらの開発アーキテクチャとテクニックの詳細については、「[AJAX](https://servicenow-prod.fluidtopics.net/ld_tMHghRk9h4~Aq2ZI8Fg#p_AJAX "AJAX (非同期 JavaScript および XML) は、非同期 Web アプリケーションの作成に使用される、相互に関連するクライアントサイド開発手法の集まりです。")」と「[REST API](https://servicenow-prod.fluidtopics.net/ldF_qFEQnejbeXLBxcUhWg "REST (REpresentational State Transfer) は、Web 上のコンピューターシステム間の標準を提供し、相互の通信を容易にするシンプルなステートレスアーキテクチャです。")」を参照してください。 |
   | 説明 | カスタムスクリプトの要件 UI マクロ、 UI スクリプトの構成方法やアプリケーションコードでの動作方法などが含まれます。 |
   | 例 | カスタム UI マクロの例 この拡張ポイントとやり取りする場合は、アプリケーションコードで動作するように構成する必要があります。 |
   [表 : 1. UI 拡張ポイントのフォーム]

   {#create-ui-ext-pt__table_tqn_cfv_s1b}
4. \[送信\] をクリックします。
{#create-ui-ext-pt__steps_mfs_mgn_pdb}

## 基本アプリケーションコードに UI 拡張ポイントを追加する {#ariaid-title3}

基本アプリケーションコードの UI マクロまたは HTML 拡張に UI 拡張ポイントを追加します。拡張ポイントを追加するには、登録されたカスタムアーティファクトが実行される場所を特定する API コールを配置します。

### 始める前に

必要なロール：admin、またはアプリケーションの開発者またはアドミニストレーター向けの特定のロール

アプリケーションコードに UI マクロまたは UI ページを追加する前に、UI 拡張ポイントを作成する必要があります。  
注:  
アプリケーション固有のアドミンロールと委託開発については、「[アプリケーション管理アプリのアクセス制御ルール](https://www.servicenow.com/docs/access?context=ACL-access-checks&version=xanadu&pubname=xanadu-application-development&ft:locale=en-US)」および「[委託開発と展開](https://www.servicenow.com/docs/access?context=c_DelegatedDevelopment&version=xanadu&pubname=xanadu-application-development&ft:locale=en-US)」を参照してください。

### 手順

1. アプリケーションコードで、スクリプト拡張ポイントを追加する既存の UI マクロにアクセスするか、新しい UI マクロを作成します。  
   Jelly タグを使用した UI マクロの作成の詳細については、「[UI マクロ](https://servicenow-prod.fluidtopics.net/SDbTtd8ZzXr9cfP3Pv3NlQ#c_UIMacros "UI マクロは、アドミニストレーターがユーザーインターフェイスに追加できる個別のスクリプト化されたコンポーネントです。")」と「[Jelly のタグ](https://servicenow-prod.fluidtopics.net/8LSVQEwTtShLxVHT~XSsjw "Jelly を使用して XML を HTML に変換します。")」を参照してください。
2. UI マクロで、カスタム UI マクロ出力を収集して処理する予定の場所に jelly タグとコード行を追加します。  
   通常、このコード行には以下が含まれます。
   * カスタム UI マクロが登録されている UI 拡張ポイントの名前を特定する `call_extension` コマンド (例：`extension="global.KMArticle.ViewHeader"`)。
   * レンダリング時に UI マクロに渡される引数。たとえば、ナレッジベース記事では、`knowledgerecord="${knowledgeRecord}"`は、現在のナレッジレコードを渡します。{#add-ui-ext-pt-base-ui-macro__li_fpg_bw2_ygb}
   {#add-ui-ext-pt-base-ui-macro__li_fpg_bw2_ygb}
   * (オプション) この拡張ポイントの実装が複数ある場合は、`limit` コマンドを使用して、x 個の実装を返すように指定します (例：`limit="1"`)。この図は、これらのコマンドを含む UI マクロを示しています。

   {#add-ui-ext-pt-base-ui-macro__ul_gxz_4zv_bgb}

{#add-ui-ext-pt-base-ui-macro__steps_mfs_mgn_pdb}

