0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【ServiceNow入門】Update Setの基本 と 使用時のよくあるトラブル

Posted at

1. はじめに

こんにちは。株式会社ウイズ・ワン、ServiceNow担当のY-Kです。

本記事ではServiceNowのインスタンス間リリース機能である、Update Set(更新セット) について、
基本的な利用方法と使用時のよくあるトラブル・その対応について説明します。

本記事は2024/12/27時点での情報となります。

2. Update Setとは

Update Set(更新セット) とは、ServiceNow上のカスタマイズ内容を記録し、
他インスタンスへ移行するための機能です。

開発インスタンスにて開発/改修を行ったアプリケーションをテスト/本番インスタンスへ
リリースする際等に使用します。

3. Update Setへ記録可能なレコード

Update Setに記録(他インスタンスへ移行)できるレコードには制限があります。

Update Setへ記録されるレコード

各種カスタマイズ系のレコード

Update Setへ記録されるレコード例

・テーブル[sys_db_object]
・ロール[sys_user_role]
・ビジネスルール[sys_script]等のスクリプト系

Update Setへ記録されないレコード

各種データ系のレコード

Update Setへ記録されないレコード例

・インシデント[incident]等のタスク系レコード
・ユーザー[sys_user]
・ログエントリ[syslog]

よく勘違いされるレコード

よくある間違いとして以下のレコードはUpdate Setに記録されないため、注意が必要です。

Update Setへ記録されない
・ダッシュボード[pa_dashboards]
・スケジュール済みジョブ[sysauto]
・ナレッジベース[kb_knowledge_base]

確実なUpdate Set移行のためには、Update Setの記録内容は詳細に確認するようにしましょう。

4. Update Setの基本的な使用方法

ここでは基本的な利用の流れをご説明いたします。

詳細な使用方法については製品ドキュメントをご参照ください。

手順1:Update Setの作成(移行元インスタンス作業)

System Update Sets > Local Update Set からUpdate Setを作成しましょう。

Update Setはアプリケーションスコープ毎に作成する必要があるため、
適宜、ピッカーからアプリケーションスコープの変更を行いましょう。
image.png

手順2:Update Setの使用(移行元インスタンス作業)

記録を行うUpdate Setを選択し、開発作業を行いましょう。
image.png

Update Setへ記録されたレコードはUpdate Setレコードの
関連リスト『Customer Updates』から確認することができます。
image.png

開発の完了後、Update Setの『State』を「Complete」に変更しましょう。
image.png

手順3:Update Setの転送(移行先インスタンス作業)

System Update Sets>Update SourcesからRemote Instanceを作成しましょう。
image.png

移行元インスタンスからUpdate Set移行に使用するユーザーを設定する必要があり、
このユーザーはAdminロールを所持している必要があります。

設定後は、『Test Connection』ボタンからテスト接続を行い、
移行元インスタンスへ接続できることを確認しましょう。
image.png

Remote Instanceレコードの作成後、
『Retrieve Completed Updadte Sets』ボタンからUpdate Setの取得しましょう。
Update Setの取得が完了すると、
関連リスト『Retrieved Update Sets』に取得したUpdate Setが追加されます。
image.png

手順4:Update Setの適用(移行先インスタンス作業)

Update Setの適用を行いましょう。
取得したUpdate Setから『Commit Update Set』ボタンでUpdate Setを適用します。
image.png

適用する際、レコードに問題があった場合、
Update Setは適用することができません。

よく発生する問題とその対応方法については以降に説明します。

5. Update Set利用時のよくあるトラブルと解決方法

以下に、Update Setを利用する際によく発生するトラブルとその解決方法について記載します。

5.1. Update Setの記録先を変更したい

Update Setの選択間違いにより、
記録先のUpdate Setが想定とは別のUpdate Setに格納されてしまった場合等、
Update Setの記録先を変更する対応方法になります。

Update Set内の変更記録である、Customer Update[sys_update_xml]レコードの
『Update set』のフィールドを変更することで格納先のUpdate Setを変えることができます。

複数の変更を移行したい場合の便利な方法

間違えて使用したUpdate Setの関連リスト『Customer Updates』の
『Update set = XXXXXX』箇所を右クリックし、『Opne new window』を選択
image.png

表示されたリストにて、ShiftやCtrlでカラムを選択し、
ダブルクリックからUpdate Setを変更する
image.png

5.2. Update Set適用時のエラー

以下は、Update Set適用前によく発生するエラーの一部についての説明となります。


・Could not find a record in XXXXXX for column 00000 referenced in this update

参照先のレコードが適用先のUpdate Setにない場合、発生するエラーとなります。

image.png

対応1:参照先レコードを適用に含める場合
 移行元インスタンスのUpdate Setの内容を確認/修正し、
 移行先インスタンスにてUpdate Set削除/再転送しましょう。

対応2:移行先インスタンスに変更を適用しない場合
 『Available Actions』の『Skip remote update』を選択しましょう。

対応3:エラーを無視して適用する場合
 『Available Actions』の『Accept remote update』を選択しましょう。


・Could not find a record in XXXX for column OOOO referenced in this update, but did find it in another uncommitted update set

参照先のレコードが適用先のUpdate Setにないが、他のUpdate Setに含まれている場合、
発生するエラーとなります。

image.png

対応1:上記「Could not find a record in XXXXXX for column 00000 referenced in this update」と同じ対応方法をとる

対応2:他のUpdate Setを先に適用する場合
 『Available Actions』の『Show uncommitted update set』から参照先が記録されている
 Update Setを確認し、そちらのUpdate Setを適用後、
 エラーが発生していたUpdate Setにて『Run Preview Again』ボタンから、
 エラー状況の再確認を実施しましょう。

6. まとめ

Update Setについて、その基本と使用時のよくあるトラブルについて紹介してまいりました。

Update SetはServiceNow開発における、基礎となりますので、
ServiceNowを始めたばかりの方は正しく利用できるようにしましょう。


株式会社ウイズ・ワン ServiceNow担当Y-K

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?