---
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分

重複する番号はまれですが、デフォルトでは、番号付けの一意性が強制されることはありません。  
一意性を強制するために、次のことができます。

* 挿入のみの事前のビジネスルールを作成して、重複する値をチェックし、重複する値を次に使用可能な番号に置き換えます。
* テーブルで一意のインデックスを有効にします。詳細については、「[テーブルインデックスの作成](https://servicenow-prod.fluidtopics.net/cqwg2T~6Z~wDgMT5jSvnkA "インデックスをビルドすると、テーブルに保持されているデータに簡単にアクセスできます。")」を参照してください。  
  注:  
  一意のインデックスはデータの完全性を保証すると同時に、重複する番号を含む挿入を防ぎます。重複する番号により、データ入力時に予期しないエラーが発生する可能性があります。
{#c_EnforcingUniqueNumbering__ul_jmq_twc_gt}

## ビジネスルールのサンプル

このサンプルスクリプトは、挿入のみの事前のビジネスルールの一部として使用し、重複する番号をチェックし、それらを次に使用可能な番号に置き換えます。次のスクリプトは、「[テーブルのシステム番号の左側のパディングを構成する](https://servicenow-prod.fluidtopics.net/VM5lNsu5LSLnIaFtc66Pew "テーブルのシステム番号の左側のパディングを構成できます。たとえば、インシデント、問題、または変更要求の [番号] フィールドにパディングします。")」で作成されたスクリプトを参照しています。

    var curNum = current.number + '';
     
    if(curNum) {
     
      var recordClass = current.getRecordClassName();
      var now_GR = new GlideRecord(recordClass);
      now_GR.addQuery('number', curNum);
      now_GR.setLimit(1);  
      now_GR.query();
     
      if(now_GR.getRowCount() > 0) {
        var newNum = getNextObjNumberPadded();
        gs.addInfoMessage("The number " + current.number + " was already used by another " +
         recordClass + ". The " + recordClass + " number has been changed to " + newNum);
        current.number = newNum;
      }
    }

**関連情報**   

* [ビジネスルール](https://www.servicenow.com/docs/access?context=c_BusinessRules&version=xanadu&pubname=xanadu-application-development&ft:locale=en-US)

