[ServiceNow] 日本語化したメッセージを表示させる


きっかけ

OOTBのサービスカタログをカスタマイズして利用しようとしたら、メッセージが日本語表示されなかった。

原因

モバイルおよびサービスポータルのクライアントスクリプトでgetMessageを同期的に扱うことができない。

validationOnSubmit.js
  if (endDate < startDate) {
    g_form.addErrorMessage(getMessage('Please ensure that the End date/time is after Start date/time'));
    return false;
  }

対応方法

コールバックを使用する。

validationOnSubmit.js
  if (endDate < startDate) {
    getMessage('Please ensure that the End date/time is after Start date/time', showError);
    return false;
  }
(中略)

function showError(msg){
  g_form.addErrorMessage(msg);
}

参考リンク

getMessage() is translation in does not work in Service Portal or Mobile.

捕捉

日本語のメッセージは システムローカライズ > メッセージ の中にあります。