---
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) 所要時間：1分

動的作成が有効になっている場合、存在しない値を参照フィールドに入力すると、エラーを返す代わりに、参照されているテーブルに新しいレコードが作成されます。

## 始める前に

必要なロール：personalize_dictionary

## このタスクについて

デフォルトでは、ユーザーは、参照フィールドが参照するテーブルの既存のレコードと一致する値を参照フィールドに値を入力する必要があります。たとえば、インシデントの \[発信者\] フィールドには、既存のユーザーの値が必要です。動的作成を有効にすると、ユーザーが存在しない値を参照フィールドに入力したときに、エラーを返す代わりに、参照されているテーブルに新しいレコードを作成することができます。

## 手順

1. フォームのフィールドラベルを右クリックし、\[ディクショナリを設定\] を選択します。
2. 次のフィールドに入力します (辞書フォームの構成が必要な場合があります)。  
   * dynamic_creation：チェックボックスをオンにします。
   * dynamic_creation_script：レコードを動的に作成するスクリプトを入力します。
   {#t_EnableDynCreationForRefFields__ul_yvh_hzm_2r}
3. \[更新\] をクリックします。  
   例：

   次の `dynamic_creation_script` を使用して、参照されるテーブルにレコードを作成できます。

       current.name = value;
       current.insert();

   注:  
   親オブジェクトを使用して、親レコードからすべてのものにアクセスすることができます。
   次の内容の MyUserReferenceCreator という名前のスクリプトインクルードを作成できます。

       var MyUserReferenceCreator = Class.create();
       MyUserReferenceCreator.prototype = {
           initialize: function() {
           },
        
           create: function(current, value) {
               current.name=value;
               return current.insert();
           },
        
           type: 'MyUserReferenceCreator'
       }

   スクリプトインクルードが作成されると、次の `dynamic_creation_script` によって無効な参照フィールド値の新しい場所が生成されます。

       new MyUserReferenceCreator().create(current, value);

**関連概念**   

* [フォームレイアウトの構成](https://servicenow-prod.fluidtopics.net/j3ro5D_oGmhLm8YNHl20TQ#configure-form-layout "アドミニストレーターまたは personalize_form ロールを持つユーザーは、フォームと関連リストのレイアウトを構成できます。")

