We're reclaiming inactive PDIs to keep them available for active builders. Learn what's changing, who's affected, and how to protect your work. Read More

Javascript not working in filter

JackieZhang
Kilo Sage
Here is my filer: https://jddev.service-now.com/now/nav/ui/classic/params/target/x_dxcjd_outsourc_0_conversion_candida...ORdepartment_name.u_department_full_codeSTARTSWITHjavascript:new JDTempWorkerAccessControlUtils().getDepartmentFullCode() here is code: getDepartmentFullCode: function() { try { var userID = gs.getUserID(); // 1. 查询用户表(基础操作,上下文兼容) var user = new GlideRecord('sys_user'); if (!user.get(userID)) { gs.warn("getDepartmentFullCode: 未找到用户ID=" + userID); return "123"; // 兜底值 } // 2. 先获取用户的部门sys_id(避免链式取值) var deptSysId = user.getValue('department'); if (gs.nil(deptSysId)) { gs.warn("getDepartmentFullCode: 用户" + userID + "无关联部门"); return "123"; // 兜底值 } // 3. 显式查询部门表,获取u_department_full_code var dept = new GlideRecord('cmn_department'); if (!dept.get(deptSysId)) { gs.warn("getDepartmentFullCode: 部门sys_id=" + deptSysId + "不存在"); return "123"; // 兜底值 } // 4. 取值+强制转字符串+校验(杜绝null) var departmentFullCode = dept.getValue('u_department_full_code') + ''; if (!gs.nil(departmentFullCode) && departmentFullCode !== 'null') { return departmentFullCode; } else { return "123"; // 兜底值 } } catch (e) { gs.error("getDepartmentFullCode执行异常:" + e.getMessage()); return "123"; // 异常兜底 } }, but filer always null
1 REPLY 1

JackieZhang
Kilo Sage

Here is my filer:  https://jddev.service-now.com/now/nav/ui/classic/params/target/x_dxcjd_outsourc_0_conversion_candida...ORdepartment_name.u_department_full_codeSTARTSWITHjavascript:new JDTempWorkerAccessControlUtils().getDepartmentFullCode()

 

 getDepartmentFullCode: function() {
    try {
        var userID = gs.getUserID();
        // 1. 查询用户表(基础操作,上下文兼容)
        var user = new GlideRecord('sys_user');
        if (!user.get(userID)) {
            gs.warn("getDepartmentFullCode: 未找到用户ID=" + userID);
            return "123"; // 兜底值
        }

        // 2. 先获取用户的部门sys_id(避免链式取值)
        var deptSysId = user.getValue('department');
        if (gs.nil(deptSysId)) {
            gs.warn("getDepartmentFullCode: 用户" + userID + "无关联部门");
            return "123"; // 兜底值
        }

        // 3. 显式查询部门表,获取u_department_full_code
        var dept = new GlideRecord('cmn_department');
        if (!dept.get(deptSysId)) {
            gs.warn("getDepartmentFullCode: 部门sys_id=" + deptSysId + "不存在");
            return "123"; // 兜底值
        }

        // 4. 取值+强制转字符串+校验(杜绝null)
        var departmentFullCode = dept.getValue('u_department_full_code') + '';
        if (!gs.nil(departmentFullCode) && departmentFullCode !== 'null') {
            return departmentFullCode;
        } else {
            return "123"; // 兜底值
        }
    } catch (e) {
        gs.error("getDepartmentFullCode执行异常:" + e.getMessage());
        return "123"; // 异常兜底
    }
},