目的
Helsinkiより追加・更新・変更された点を、開発者視点でメモ。(備忘録代わりに随時・日々更新)
※もしかしたら Fuji, Geneva あたりから変更されていたかもしれないが、そこはご愛嬌。
ライブラリ
- 標準で利用できるJavaScriptが追加されている。(公式ドキュメントやCommunityでは多く言及されていない。)
- moment.js
- form, list で使用可能
- Service catalog では使えない
- lodash.js
- Service Portal でのみ可
- moment.js
※Global UI Script を作ったり UI Macro や onLoad Script 作って各種ライブラリを適用することも可能だが、
個人的経験からするとオススメできない。標準で使えるものだけ使っていたほうがいい。
メンテナンス工数や顧客要望がきつくなってくる。(無理やり適用しているので、歪が出てくる。)
- Server Side が (漸く)ECMAScript5 対応。JavaScript エンジンは Rhino 1.7 R5らしい。
API
- GlideModal
- ソースを読む限り、BootstrapのModalを使用している。
- data-backdrop="static" の設定方法が不明。(Modalダイアログの枠外をクリックしても、Modalが消えないようにする設定)
- 下みたいなやり方ではダメだった。要調査。
var dialog = new GlideModal("UI_PAGE");
dialog.setPreference("data-backdrop", "static");
dialog.render();
エラーになる。
Illegal attempt to access class 'java.XXX' via script
- gs.sqlが使えなくなっている。以前より非推奨で将来的には無効化されると言われていたが、とうとう本当に無効化されている。
Security restricted: Calling gs.sql is not allowed
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);
-
XMLHelper(Script Include)の toObject を使っても同じ結果になるらしい。未検証。これも初めて知った。
(いつからあるんだ...)手元のEurekaで調べてみたらあったorz 情報更新が止まっていたらしい...キャッチアップできていない。反省...。
Report
- 「自由なフォーマットでReportを出力したい。Crystal ReportsやWordの差込印刷のような機能が欲しい。」と多々言われるが、OOTBのSNOWでは難しかった。
PDF Document Generator
- 上記課題を解決するためには、Share に公開されている PDF Document Generator を活用するしかなかったが、どうやらGenevaより PDF Generator(com.snc.pdf_generator) という公式プラグインが公開されたらしい。
- ただ、Communityでも指摘されているように実装がイケてない。
UXstorm PDF
-
こーゆーのもある
だだ、クソ高い $1,700.00 Per Month
Misc
-
JavaScript Debugger が Genevaから消えている。
- (Community) "I don't see the JavaScript Debugger in Geneva"
- Debugについてはlog機能とかScript Background で頑張れ!!!らしい...。