- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-06-2022 11:52 PM
インポートセットテーブルに添付されたCSVファイルをカスタムテーブルへインポートするスクリプトを実装しましたが、テーブルのカラム属性が異なるため、値が反映されまない状況です。
スキームID、システムID、性能情報種別IDは
属性がインポートセットテーブルでは文字列、カスタムテーブルは参照(※)となっています。
※スキームマスタ、システムマスタ、性能情報種別マスタの値を参照
参照項目への値の反映をする方法について、ご教示いただければと思います。
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-07-2022 12:20 AM
Reference項目を表示値で一致させる場合は、下記のScript ”setDisplayValue”で可能です。
参考資料Docs:GlideElement | ServiceNow Developers
var rec = new GlideRecord('incident');
rec.initialize();
rec.caller_id = gs.getUserID();
rec.short_description = 'test';
// Assignment Group(Reference項目)に表示値で設定する。大文字小文字はどちらでも該当するが全角半角などの曖昧一致はしない
rec.assignment_group.setDisplayValue('Incident Management');
// Reference項目の内部値を表示
gs.info('rec.assignment_group >> ' + rec.assignment_group);
// Reference項目の表示値を表示
gs.info('rec.assignment_group getDisplayValue >> ' + rec.assignment_group.getDisplayValue());
// rec.assignment_group >> 12a586cd0bb23200ecfd818393673a30
// rec.assignment_group getDisplayValue >> Incident Management
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-24-2022 01:03 AM
ClientScriptでひとつのTableのQueryだけで良いなら、GlideAjaxより簡易にGlideRecordでQueryする方法も良さそうです。複数のTableのQueryやServer sideの処理が必要ならGlideAjaxで。
GlideRecord | ServiceNow Developers
// ClientScript
var rec = new GlideRecord('sys_user');
rec.addQuery('user_name', 'abel.tuter');
rec.setLimit(1);
rec.query(recResponse);
function recResponse(rec) {
if (rec.next()) {
g_form.setValue('user', rec.sys_id, rec.name);
}
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-24-2022 04:43 PM
クライアントのGlideRecordは、パフォーマンス落ちるので非推奨とあったのですが、この方法なら気にせず使えるしサーバーサイド書かなくて良いのは非常にありがたいです。