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

ServiceNow中为反馈表单添加创建事件按钮并回填事件编号至字符串字段

ServiceNow反馈表单添加“创建事件”按钮实现方案

步骤1:创建UI Action(按钮)

  • 登录ServiceNow后台,导航到系统定义 > UI Action
  • 新建UI Action,配置核心属性:
    • 名称:create incident
    • 表:选择你的反馈表单对应的表(例如u_feedback,替换为实际表名)
    • 表单内:勾选(确保按钮显示在表单页面)
    • 客户端:勾选
    • 脚本类型:选择“脚本”

步骤2:编写服务器端逻辑(创建事件+填充字段)

在UI Action的“脚本”区域粘贴以下代码,按需替换字段名:

// 初始化事件记录
var incidentGR = new GlideRecord('incident');
incidentGR.initialize();

// 配置事件必填字段(根据你的实例规则调整)
incidentGR.short_description = '来自反馈表单的自动创建事件';
incidentGR.category = 'inquiry';
incidentGR.contact_type = 'web';

// 插入事件记录并获取编号
var incidentSysId = incidentGR.insert();
var incidentNumber = incidentGR.number;

// 更新当前反馈表单的字符串字段(替换u_incident_number为实际字段名)
current.u_incident_number = incidentNumber;
current.update();

// 弹出成功提示
gs.addInfoMessage('事件已创建,编号:' + incidentNumber);

步骤3:添加客户端触发脚本

在UI Action的“客户端脚本”区域添加以下代码,确保按钮点击时触发服务器逻辑:

function onClick() {
    gsftSubmit(null, g_form.getFormElement(), 'create_incident');
}

// 服务器端执行入口(兼容客户端UI Action的服务器逻辑执行)
if (typeof window == 'undefined') {
    // 此处无需额外代码,服务器逻辑已在脚本区域定义
}

关键注意事项

  • 替换代码中的u_feedback(反馈表名)、u_incident_number(目标字符串字段)为你的实例实际名称
  • 务必配置事件的必填字段(如short_description),否则会导致事件创建失败
  • 确保操作用户拥有incident表的创建权限和反馈表单的更新权限
  • 可根据业务需求添加按钮显示条件(如仅在反馈记录处于特定状态时显示)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 05:33:31