MIDORI ISHIKAWA
ServiceNow Employee
## 概要

 

新規インスタンスのセットアップ後、ドロップダウンリストの選択肢が英語で表示される場合があります。本記事では、その背景となる仕様と、日本語(およびその他の言語)の選択肢を正しく表示するための対処方法について説明します。

 

---

 

## 背景:なぜ非英語の sys_choice レコードがデフォルトで非アクティブになっているのか

 

言語プラグインに含まれる sys_choice レコードには、英語の OOTB には存在しない選択肢や、英語環境では使用されない選択肢も一部含まれています。

 

以前は、この仕様が原因で、英語の標準機能に対応しない日本語の選択肢がドロップダウンに表示されてしまう問題が発生していました。この意図しない表示を防ぐため、英語以外の言語の sys_choice レコードはデフォルトで非アクティブ(Inactive = true)の状態で提供されるよう仕様が変更されました。

 

その結果、現在の動作としては以下のようになっています:

 

- インスタンスの初期セットアップ後、日本語などの非英語の選択肢は非アクティブ状態のため UI に表示されない
- 非アクティブのままにすると、ドロップダウンには英語の選択肢が表示される
Screenshot_1.png
 
- 日本語の選択肢を表示するには、対応するレコードの Inactive のフィールドを 'false’ に更新する必要がある
Screenshot_2.png
 
---

## 対処方法:「英語以外の sys_choice レコードを修復」機能の使用

該当レコードを 1 件ずつ手動で更新することも可能ですが、レコード数が非常に多いため、以下の手順で提供されている一括修復機能を使用することを推奨します。

### 手順

1. sys_language テーブルへ移動する
フィルターナビゲーターで sys_language.list を検索するか、システムローカリゼーション>言語 を開きます。

2. 対象言語のレコードを開く
例:Japanese(言語コード:'ja')のレコードを選択します。

3. 関連リンクから修復機能を実行する
レコード詳細画面の「関連リンク」セクションに表示されている「英語以外の sys_choice レコードを修復」をクリックします。
Screenshot_3.png
 
4. 処理完了を待つ
このリンクをクリックすると、バックグラウンドスクリプトが起動し、英語レコードの Inactive ステータスに合わせて日本語レコードの Inactive フラグが自動的に更新されます。
対象データ量が膨大なため、処理が完了するまでに時間がかかる場合があります。処理が完了するまでお待ちください。

### 処理内容

この機能は、英語の sys_choice レコードの Inactive ステータスを参照し、それに一致する形で日本語(対象言語)の sys_choice レコードの Inactive ステータスを更新します。これにより、英語の UI で表示されている選択肢と同じ選択肢が、日本語環境でも正しく表示されるようになります。
 
Screenshot_4.png
 
以上の手順は、KB3065734 および ServiceNow ドキュメンテーションでも確認していただくことができます。