概要
ServiceNowでフィールドをユニークにしようとしたら重複したレコードエラーになると言う問い合わせがServiceNowフォーラムでありました。
重複したレコードを検出するスクリプトを作成しました。
アプリケーションナビゲータから「スクリプト - バックグラウンド」を開いて実行すると重複したレコード一覧が表示されます。
var uniqueField= 'state';
var tableName = 'incident';
var count = new GlideAggregate(tableName);
count.addAggregate('COUNT', uniqueField);
count.query();
while (count.next()) {
var fieldValue= count[uniqueField];
var fieldCount = count.getAggregate('COUNT', uniqueField);
gs.info("Number of duplicates " + fieldCount + ' value:' + fieldValue);
}