LoginSignup
2
2

More than 5 years have passed since last update.

ServiceNow Helsinki Tips (随時更新)

Last updated at Posted at 2016-10-20

目的

Helsinkiより追加・更新・変更された点を、開発者視点でメモ。(備忘録代わりに随時・日々更新)
※もしかしたら Fuji, Geneva あたりから変更されていたかもしれないが、そこはご愛嬌。

ライブラリ

  • 標準で利用できるJavaScriptが追加されている。(公式ドキュメントやCommunityでは多く言及されていない。)
    • moment.js
      • form, list で使用可能
      • Service catalog では使えない
    • lodash.js
      • Service Portal でのみ可

※Global UI Script を作ったり UI Macro や onLoad Script 作って各種ライブラリを適用することも可能だが、
 個人的経験からするとオススメできない。標準で使えるものだけ使っていたほうがいい。
 メンテナンス工数や顧客要望がきつくなってくる。(無理やり適用しているので、歪が出てくる。)

  • Server Side が (漸く)ECMAScript5 対応。JavaScript エンジンは Rhino 1.7 R5らしい。

参考

API

 var dialog = new GlideModal("UI_PAGE");
 dialog.setPreference("data-backdrop", "static");
 dialog.render();
  • Server side で Java Classを呼び出せなくなっている。下のようなコードは 2016-10-28 13_07_15-Sample _ ServiceNow.png

エラーになる。
Illegal attempt to access class 'java.XXX' via script
2016-10-28 13_06_45-INC0010005 _ ServiceNow.png

  • gs.sqlが使えなくなっている。以前より非推奨で将来的には無効化されると言われていたが、とうとう本当に無効化されている。

image

Security restricted: Calling gs.sql is not allowed
image

GlideForm

  • addDecoration, removeDecoration の追加。各fieldにicon(Glyphiconみたいなもの)を追加する。API Document

GlideSystem

  • xmlToJSON
    • 従来、mid server 経由で作られたecc queueの解析など、XmlDocument を使ったり非常に面倒くさかった。
    • 本メソッドが追加されたことにより、公式APIで、より簡単に、より扱いやすいJSONオブジェクトを取得することができる。画期的。
    • Fujiから追加されているらしい。(知らなかった...。)

例) Help the help deskで作られたqueue reocrdを対象

var gr = new GlideRecord('ecc_queue');
gr.get('XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX');
var json = gs.xmlToJSON(gr.payload);

JSUtil.logObject(json);

こんな感じになる
image

Report

  • 「自由なフォーマットでReportを出力したい。Crystal ReportsやWordの差込印刷のような機能が欲しい。」と多々言われるが、OOTBのSNOWでは難しかった。

PDF Document Generator

  • 上記課題を解決するためには、Share に公開されている PDF Document Generator を活用するしかなかったが、どうやらGenevaより PDF Generator(com.snc.pdf_generator) という公式プラグインが公開されたらしい。
  • ただ、Communityでも指摘されているように実装がイケてない。

UXstorm PDF

Misc

2
2
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
2
2