You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ServiceNow导出XML显示UID而非实际值的问题及解决方法

ServiceNow导出CSV与XML数据格式差异问题解答

问题原因

ServiceNow的CSV和XML导出有内置的行为差异:

  • CSV导出默认会自动处理引用字段(比如关联用户表的closed_by),直接返回字段的显示名称(如用户姓名);
  • XML导出则默认返回引用字段的原始存储值——也就是记录的唯一标识符sys_id(即你看到的UID),这是因为XML设计更偏向于保留数据的原始关联关系,而非直接展示友好名称。

解决方法

方法1:修改导出URL参数

在XML导出URL中明确指定要返回的显示名称字段,而非原始引用字段。引用字段的显示名称通常可以通过字段名.name的形式调用(用户类字段默认显示名称对应.name)。

示例修改后的XML导出URL:

https://mysnow.service-now.com/incident_list.do?XML&sysparm_query=ORDERBYsys_id%5esys_idSTARTSWITH0&sysparm_fields=sys_id,number,closed_by,closed_by.name

如果需要保留所有原有字段,需将每个引用字段对应的显示名称字段补充到sysparm_fields参数中,比如同时添加assigned_to,assigned_to.name这类字段。

方法2:使用自定义列表视图导出

  1. 进入ServiceNow的事件列表页面(incident_list.do),调整列配置,将closed_by替换为closed_by.name(或同时保留两个字段);
  2. 保存当前列配置为自定义视图(例如命名为「带显示名的导出视图」);
  3. 导出XML时,在URL中添加sysparm_view=你的自定义视图名称参数,或者在界面中选择该视图后再执行导出。

方法3:导出后脚本处理(适合小批量数据)

如果无法修改导出参数,可以用脚本(如Python、PowerShell)解析导出的XML,再通过ServiceNow的Table API根据sys_id查询对应的显示名称,批量替换XML中的UID值。不过这种方法效率较低,仅建议用于数据量不大的场景。

内容的提问来源于stack exchange,提问作者Andrew

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 18:22:17