---
sourceDocument: Xanadu Now Platform の管理
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/xanadu/platform-administration

 Release :

    - xanadu

ft:locale :

    - ja-JP

ft:publication_title :

    - Xanadu Now Platform の管理

ft:clusterId :

    - platadm

bundleId :

    - platadm

workflow :

    - Platform


---

# カスタムデータルックアップの作成

# カスタムデータルックアップの作成 {#ariaid-title1}

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

カスタムデータルックアップの作成には、ルックアップ値の追加、定義の作成、およびデータルックアップの有効化が含まれます。

## カスタムデータルックアップテーブルの作成 {#ariaid-title2}

ルックアップデータを格納するカスタムテーブルを作成します。
カスタムテーブルでは、データルックアップ照合ルール `[dl_matcher]` テーブルを拡張する必要があります。たとえば、このカスタムルックアップテーブルには、VIP の発信者とインシデントの割り当てに関する情報が保存されます。  
{#create-custom-data-lookup__table_n5p_l2q_wq__entry__2}

| フィールド | サンプル値 |
|-|-|
| ラベル | VIP 発信者ルックアップ |
| テーブル名 | u_vip_caller_lookup |
| 拡張ベース テーブル | dl_matcher |
| 新規モジュールの作成 | true |
| モジュールをメニューに追加 | システムポリシー |
[表 : 1. カスタムデータルックアップテーブル]

{#create-custom-data-lookup__table_n5p_l2q_wq}

## データルックアップテーブルにデータルックアップ値を追加します。 {#ariaid-title3}

データルックアップテーブルの列には、照合フィールドとセッターフィールドの両方のデータが含まれています。

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

各データルックアップは、照合フィールドに一致する値を含む行を検索するクエリーです。次に、データルックアップはセッターフィールドにリストされた値を返します。たとえば、この優先度データルックアップ \[dl_u_priority\] テーブルには、特定の優先度値 (セッターフィールド) を生成する影響度と緊急度 (照合フィールド) の組み合わせが一覧表示されます。  
{#t_AddADLValueToTheDataLookupTable__table_yjm_xgq_wq__entry__2}

| 照合フィールド || セッターフィールド |
|-|-|-|
| 影響 | 緊急度 | 優先度 |
| 1 - 高 | 1 - 高 | 1 - 重大 |
| 1 - 高 | 2 - 中 | 2 - 高 |
| 1 - 高 | 3 - 低 | 3 - 中 |
| 2 - 中 | 1 - 高 | 2 - 高 |
| 2 - 中 | 2 - 中 | 3 - 中 |
| 2 - 中 | 3 - 低 | 4 - 低 |
| 3 - 低 | 1 - 高 | 3 - 中 |
| 3 - 低 | 2 - 中 | 4 - 低 |
| 3 - 低 | 3 - 低 | 5 - 計画中 |
[表 : 2. ルックアップテーブル]

{#t_AddADLValueToTheDataLookupTable__table_yjm_xgq_wq}

### 手順

1. ナビゲーションフィルターで、新しいカスタムルックアップテーブルの名前を入力します。  
   たとえば、「u_vip_caller_lookup.list」と入力します。
2. リストを構成し、新しいフィールドを作成します。  
   この例では、次のテーブルに新しいフィールドを作成します。  
   {#t_AddADLValueToTheDataLookupTable__table_xnv_13q_wq__entry__3}

   | 名前 | タイプ | 参照するフィールド長またはテーブル |
   |-|-|-|
   | 問い合わせユーザー | 参照 | ユーザー \[sys_user\] |
   | 優先度 | 整数 |   |
   | アサイン先グループ | 参照 | グループ \[sys_user_group\] |
   [表 : 3. 新しいフィールド]

   {#t_AddADLValueToTheDataLookupTable__table_xnv_13q_wq}

   詳細については、「[リストの構成](https://servicenow-prod.fluidtopics.net/ELyCEYTP2Z4rdfsQFbaeDA "適切なロールを持つユーザーは、リストのさまざまな側面を構成できます。構成の変更はすべてのユーザーに適用されます。")」を参照してください。
3. テーブルリストから \[新規\] をクリックし、照合フィールドとセッターフィールドに適切な値を入力します。  
   例：  
   {#t_AddADLValueToTheDataLookupTable__table_gjm_j3q_wq__entry__2}

   | 照合フィールド | セッターフィールド ||
   |-|-|-|
   | 問い合わせユーザー | 優先度 | アサイン先グループ |
   | Beth Anglin | 2 | VIP の問題 |
   | Fred Luddy | 1 | VIP の問題 |
   [表 : 4. 新しい照合フィールドとセッターフィールドの値]

   {#t_AddADLValueToTheDataLookupTable__table_gjm_j3q_wq}  
   注:  
   データルックアップテーブルの各行は一意でなければなりません。

## データルックアップ定義レコードを作成します。 {#ariaid-title4}

データルックアップには、指定された条件が満たされたときに 1 つ以上のフィールド値を設定する方法を指定する定義レコードが必要です。

### 手順

1. 移動先 すべてシステムポリシールールデータルックアップの定義.
2. \[新規\] をクリックします。
3. \[データルックアップルール\] をクリックします。
4. 次のテーブルを使用して、データルックアップルールフォームに入力します。  
   {#t_CreateADataLookupDefinRec__table_qcb_2jk_t1b__entry__2}

   | フィールド | 説明 |
   |-|-|
   | 名前 | 定義レコードを識別する一意の名前を入力します。 |
   | ソーステーブル | ルックアップ値で自動的に更新するフィールドを含むテーブルを選択します。データルックアップ定義は拡張テーブルに継承されません。たとえば、タスクテーブルのデータルックアップ定義を、インシデントテーブルの値と一致させることはできません。 |
   | 照合テーブル | ルックアップ値を含むテーブルを選択します。このテーブルは、常に u_ prefix で始まる必要があります。 |
   | 有効 | このデータルックアップルールを実行するには、このチェックボックスをオンにします。このデータルックアップルールを無視するには、チェックボックスをオフにします。 |
   | フォーム変更時に実行 | ユーザーまたは onChange クライアントスクリプトがソーステーブルフォームのフィールド値を変更するたびに値を自動的にルックアップするには、このチェックボックスをオンにします。 注: これには、優先度ルックアップルールなど、他のデータルックアップルールによって自動的に行われた変更は含まれません。 |
   | 挿入時に実行 | ユーザーが新しいレコードを作成するたびに値を自動的にルックアップするには、このチェックボックスをオンにします。 |
   | 更新時に実行 | ユーザーがレコードを保存または更新するたびに値を自動的にルックアップするには、このチェックボックスをオンにします。 |
   [表 : 5. データルックアップ定義のフィールド]

   {#t_CreateADataLookupDefinRec__table_qcb_2jk_t1b}
5. フォームヘッダーを右クリックし、 \[保存\] をクリックします。
6. \[照合フィールドの定義\] 関連リストから \[新規\] をクリックします。
7. 次のテーブルを使用して、照合フィールドの定義を完了します。  
   データルックアップは、照合フィールド定義が設定されたフィールドでのみ行われます。データルックアップでは、ソーステーブルフィールドの値を使用して、照合テーブルから 1 つ以上の値をルックアップします。データルックアップはジャーナルタイプのフィールドでは機能しないことに注意してください。
   {#t_CreateADataLookupDefinRec__table_avq_1qq_wq__entry__2}

   | フィールド | 説明 |
   |-|-|
   | データルックアップ | 親データルックアップ定義レコードの名前を表示します。 |
   | ソーステーブルフィールド | 一致させるデータを含むソーステーブルからフィールドを選択します。 |
   | 照合テーブルフィールド | 一致させるデータを含む照合テーブルのフィールドを選択します。 |
   | ルックアップの完全一致 | 使用可能な値のすべての組み合わせ (空白値を含む) に一致する行が照合テーブルに含まれることを必須にするには、このチェックボックスをオンにします。このチェックボックスをオフにすると、照合テーブルの空白の値がすべての値と一致します。たとえば、照合テーブルの \[優先度\] フィールドが空白であるとします。このチェックボックスをオンにすると、ソーステーブルの行の \[優先度\] の値が空白の場合にのみ一致します。このチェックボックスをオフにすると、空の照合フィールド値がソーステーブルフィールドの任意の値と一致します。 注: ルックアップが完全一致を必要としない場合、空白値を含む照合テーブル行は、すべての値と一致するワイルドカードとして扱われます。 |
   [表 : 6. 照合フィールド定義のフィールド]

   {#t_CreateADataLookupDefinRec__table_avq_1qq_wq}
8. \[送信\] をクリックします。
9. \[セッターフィールドの定義\] 関連リストから \[新規\] をクリックします。
10. 次のテーブルを使用して、\[セッターフィールドの定義\] フォームを完了します。  
    {#t_CreateADataLookupDefinRec__table_m2j_yqq_wq__entry__2}

    | フィールド | 説明 |
    |-|-|
    | データルックアップ | 親データルックアップ定義レコードの名前を表示します。 |
    | ソーステーブルフィールド | データルックアップで更新するソーステーブルのフィールドを選択します。 |
    | 照合テーブルフィールド | 更新の新しい値を提供する照合テーブルからフィールドを選択します。 |
    | 常に置換 | 既存の値をデータルックアップの値に置き換えるには、このチェックボックスをオンにします。フィールドに既存の値がある場合に更新を無視するには、このチェックボックスをオフにします。 |
    [表 : 7. セッターフィールドの定義のフィールド]

    {#t_CreateADataLookupDefinRec__table_m2j_yqq_wq}
11. \[送信\] をクリックします。
12. \[更新\] をクリックします。  
    たとえば、次のデータルックアップ定義では、\[発信者\] フィールドに基づいて、インシデントを VIP の問題グループに割り当てます。また、インシデントは、発信者に基づいて重大または高優先度に設定されます。  

## データルックアップモジュールを作成する {#ariaid-title5}

データルックアップ用のモジュールを作成して、インスタンスアプリケーションナビゲーターに表示することができます。

### 手順

1. 移動先 すべてシステム定義アプリケーションメニューをクリックし、モジュールを追加するアプリケーションを選択します。
2. \[モジュール\] 関連リストで、\[新規\] をクリックします。
3. 次のプロパティを使用して、作成したデータルックアップテーブルのモジュールを構成します。  
   {#t_CreateADataLookupModule__table_rxn_bsq_wq__entry__2}

   | プロパティ | 必要な値 |
   |-|-|
   | テーブル | 手順 2 で作成したデータルックアップテーブルを選択します。例：u_vip_caller_lookup。 |
   | リンクタイプ | レコードリスト |
   [表 : 8. モジュールのプロパティ]

   {#t_CreateADataLookupModule__table_rxn_bsq_wq}
4. \[送信\] をクリックします。
{#t_CreateADataLookupModule__steps_l55_3rq_t1b}

## データルックアップのトラブルシューティング {#ariaid-title6}

カスタムデータルックアップ定義ルールが期待どおりに動作しない場合は、特定の条件を確認します。
* データルックアップ定義が適切なイベントで実行されるように設定されていることを確認します。
* 照合フィールドが読み取り専用でないことを確認します。ユーザーは読み取り専用フィールドを変更できないため、ユーザーインタラクションによって読み取り専用フィールドのフォーム変更イベントをトリガーすることはできません。
* クライアントスクリプトがフィールド値を変更していないことを確認します。クライアントスクリプトは、読み取り専用フィールドでも Run on form change イベントをトリガーできます。
* 照合テーブル内のデータが正しいことを確認します。
* ルックアップで完全一致が必要とされている場合は、使用可能な各組み合わせ (空白値を含む) の照合テーブル行があることを確認します。一致する値が見つからない場合、ルックアップは失敗します。
* 次のような再帰ルールを作成していないことを確認します。フィールド A = 1 の場合、フィールド B = 2。フィールド B = 2 の場合、フィールド A = 2。

{#troubleshooting-data-lookup__ul_jst_vsq_wq}

