- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-22-2022 12:02 AM
こんにちは。
更新セットに含まれる複数の顧客アップデートのうち、特定の1つの顧客アップデートだけ切戻したいです。
実現方法をご存知の方がいらっしゃいましたら教えてください。
1つだけなら手動で元に戻せばいいのでは?と感じるかもしれませんが、この顧客アップデートではどういう経緯なのかは不明ですがセキュリティで保護されたスクリプトインクルードが作られており、手動ではそれを削除することができないという、少し特殊な状況になっています。そのスクリプトインクルードの影響でRomeアップグレードで不具合が発生しています。
NowSupportにも相談をしていますが、カスタマイズとみなされ現時点では協力を得られていません。
よろしくお願いします。
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-22-2022 06:04 AM
NowSupportに修復してもらうことが原則です。
どうしてもScript includeを無効化しなければならないのであれば、自己責任で下記Scriptで作成されてしまったScript includeを強制的に削除できます。(Active Falseにして無効化する方法もありますが、今回は存在そのものが誤りのようなので強制削除としました)
下記Scriptを Scripts Backgroundで実行してください。SYSIDは環境に合わせて変更してください。
この削除による問題は完全に自己責任で実行してください。Scripts Background には Rollback機能があるので、削除を取り消して元に戻すことは可能です。
// 削除したいScript include sys_id
var sysid = 'aaaaaaaaaaaaaaaaaaaaaaaaa';
var deletePayload = '<?xml version="1.0" encoding="UTF-8"?><record_update table="sys_script_include"><sys_script_include action="DELETE"><sys_id>'+sysid+'</sys_id></sys_script_include></record_update>';
var gum = new GlideUpdateManager2(); // UpdateSet 管理クラス
gum.loadXML(deletePayload); // XML 適用

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-22-2022 12:26 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-22-2022 02:57 PM
Richardさん
ありがとうございます。教えていただいた方法を試してみます。
情報提供ありがとうございます。
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-22-2022 02:33 AM
結論としては、ServiceNowの方に修正いただくしかないと思います。
通常、Productionに適用したUpdatesetに問題がある場合は、以下の手順で修正します。
1. Productionで該当UpdatesetをBackout
2. Sub-Productionで該当Updatesetを複製し、問題の箇所以外を取り除く
3. Productionで新しく作成したUpdatesetをCommit
今回のケースだと対象のレコードが編集できない状態になってしまっているので、
おそらく1のBackoutに失敗します。
したがってmaintロールを持つServiceNowサポートの方しか対応できないのではと思われます。
粘り強くNowSupportと交渉した結果、対応できないということであれば、
「Script Includeの問題の箇所を修正した別のScriptIncludeを作り、呼び出している各種Scriptを修正して新しいScript Includeを利用する」
といった回避策もあるかと思います。
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-22-2022 02:51 PM
sadahisaさん、回答ありがとうございます。
NowSupportととのやり取りは現在も継続中ですが、万が一それでも解決できない場合は上記の手順も参考に解決策を模索してみます。
情報提供に感謝いたします。