ServiceNow XMLDocument2 APIの使い方

概要

XMLDocument2 API は、ServiceNowのサーバーサイドでXMLデータを解析(Parse)、検索、作成、編集するためのAPIです。

1. XMLDocument2 APIの基本

| 項目 | 内容 |
|---|---|
| API名 | XMLDocument2 |
| 実行環境 | Server Side |
| 主な用途 | XML解析・作成・編集 |
| 対応スクリプト | Business Rule、Script Include、Background Scriptなど |
| XML検索 | XPath |
| XMLノード操作 | XMLNode |
| JSON対応 | 対象外(JSON.parseを使用) |

基本的な処理の流れ

外部システム
    │
    ▼
XMLデータを取得
    │
    ▼
XMLDocument2
    │
    ├── parseXML()
    │
    ├── getNode()
    │
    ├── getNodeText()
    │
    └── getFirstNode()
    │
    ▼
XMLデータを解析
    │
    ▼
ServiceNowテーブルへ登録・更新

2. XMLDocument2の基本的な使い方
例① XML文字列を解析する
XMLデータ

<users>
    <user>
        <name>Tanaka</name>
        <email>tanaka@example.com</email>
        <department>IT</department>
    </user>
</users>

ServiceNowのBackground Script

var xmlString =
    '<users>' +
    '<user>' +
    '<name>Tanaka</name>' +
    '<email>tanaka@example.com</email>' +
    '<department>IT</department>' +
    '</user>' +
    '</users>';

var xmlDoc = new XMLDocument2();

xmlDoc.parseXML(xmlString);

var name = xmlDoc.getNodeText('/users/user/name');
var email = xmlDoc.getNodeText('/users/user/email');
var department = xmlDoc.getNodeText('/users/user/department');

gs.info('Name: ' + name);
gs.info('Email: ' + email);
gs.info('Department: ' + department);

 

ServiceNow

Posted by arkgame