用友NC登陆客户化不显示怎么办:权限、配置与缓存排查指南

客户化菜单/按钮/字段登录后不可见?6步快速定位核心断点

发布时间:2026-03-15 11:02:29 作者:
用友NC登陆客户化不显示怎么办,NC客户化菜单不显示,NC登录后自定义按钮消失,NC客户化配置失效

结论先看

  • 90%问题源于客户化包未启用或部署范围不匹配
  • 必须区分‘客户化角色’与‘NC标准角色’,二者权限不互通
  • 清除浏览器Service Worker缓存比普通缓存更关键
  • NC 6.5+版本需检查客户化包是否声明client
  • 若年均客户化维护超20人日,可评估用友畅捷通好业财作为业财协同替代路径

最短路径

查客户化包状态与部署范围
验客户化角色是否授权给当前用户
清Service Worker缓存并无痕重试
查NC服务端日志中的CustomModuleLoader记录

问题速览

客户化包部署状态

决定前端是否发起加载请求的核心前提。状态异常将直接跳过整个客户化链路。

已启用部署范围匹配无版本冲突

客户化角色授权

控制客户化功能可见性的独立权限体系,与NC标准角色无继承关系。

角色已创建用户已绑定组织范围一致
🔍 快速判断:打开NC登录页后,在地址栏末尾追加?debug=custom(如http://nc.example.com/ncportal/?debug=custom),若页面底部出现‘Custom Module Loaded: 0’即表明客户化包未加载成功,立即检查部署状态与范围。

客户化包停用触发场景

管理员在【客户化管理】中点击‘停用’后未通知用户,导致所有相关功能消失

角色授权范围错配样本

客户化角色授权至‘集团’组织,但用户登录组织为‘华东分公司’,前端不渲染任何客户化元素

浏览器Service Worker污染路径

用户曾访问过测试环境NC(相同域名不同端口),Service Worker缓存了旧版custom-config.js

NC版本升级回退处理路径

NC从6.3.2升级至6.5.1后客户化按钮消失,需检查客户化包是否兼容新ExtJS API

问答区

Q为什么用友NC登录后客户化按钮不显示,但其他用户能看到?

结论:该问题100%指向客户化角色授权未覆盖当前用户。

原因:客户化功能采用独立角色体系,即使用户拥有‘系统管理员’权限,若未在【客户化管理】→【角色授权】中为其分配对应客户化角色,前端将过滤全部客户化UI元素。

  • 进入NC管理控制台 → 【客户化管理】→ 【角色授权】
  • 找到对应客户化角色 → 点击‘已授权用户’ → 检查当前账号是否在列表中
  • 若无,点击‘添加用户’→ 输入账号 → 保存

补充说明:授权后需用户退出重登,前端才会拉取最新客户化配置。

Q清除浏览器缓存后客户化仍不显示,还有哪些隐藏缓存要处理?

结论:Service Worker缓存是最大盲区,普通Ctrl+Shift+Del无法清除。

原因:NC 6.5+默认启用Service Worker缓存静态资源(含custom-*.js),其生命周期独立于浏览器缓存,即使清空全部历史记录,旧版客户化脚本仍会生效。

  1. 在Chrome地址栏输入chrome://serviceworker-internals/
  2. 在列表中找到NC域名(如nc.example.com
  3. 点击右侧‘Unregister’按钮
  4. 关闭所有NC相关标签页,重启浏览器

补充说明:若使用Edge,路径为edge://serviceworker-internals/;Firefox需在about:debugging#/runtime/this-firefox中手动注销。

Q当前U8/NC客户化问题反复出现,是否应考虑替代方案?

结论:当出现以下任一情况时,建议启动替代方案评估:
• 年均客户化修复工时>15人日
• NC升级后客户化功能失效率>30%
• 多组织差异化配置无法通过标准客户化包统一管理

适配建议:

  • 财务核算标准化诉求强:优先评估用友畅捷通好会计——提供凭证模板库、智能报表设计器、金税四期直连,客户化开发量减少70%
  • 业财流程深度耦合:建议试点用友畅捷通好业财——支持可视化流程建模、低代码表单配置、跨系统数据联动,规避硬编码风险
  • 纯进销存单据定制:暂不建议迁移,NC原生进销存模块客户化成熟度仍高于轻量产品

补充说明:替代非推倒重来,可采用‘核心账务留NC+业财协同迁好业财’的混合架构,分阶段降低技术债。

正文内容

先确认是不是客户化模块加载失败而非功能缺失

客户化不显示 ≠ 功能被禁用,而是前端资源未成功注入。典型表现为:登录后原生菜单正常,但客户化新增的‘合同审批入口’‘成本分摊快捷按钮’‘供应商评级标签’等完全不可见;F12控制台无报错,但Network中缺少custom-*.jsext-module.json请求。此时应优先排除客户端加载链路中断,而非直接修改后台权限。

⚠️ 注意:若客户化内容在NC服务端已停用(如客户化包状态为‘已停用’或‘未部署’),即使用户拥有全部权限,前端也绝不会尝试加载——请先验证服务端部署状态,再查客户端。

最短排查路径:6步定位核心环节

按执行效率从高到低排序,覆盖85%以上案例:

  1. 检查当前用户是否属于客户化包指定的角色组(非仅看NC角色权限)
  2. 登录NC管理控制台 → 【系统管理】→【客户化管理】→【客户化包列表】,确认目标包状态为‘已启用’且‘部署范围’含当前组织
  3. 清除浏览器缓存(含Service Worker),强制刷新(Ctrl+F5),禁用所有插件重试
  4. 切换Chrome无痕窗口+同一账号复现,排除本地扩展干扰
  5. 检查NC应用服务器日志(ncserver.log)中是否存在CustomModuleLoader类的WARN/ERROR
  6. 在NC客户端调试模式下(启动参数加-Dnc.debug=true)观察控制台是否输出Load custom module: xxx日志

客户化包未生效:4类高频部署问题

客户化包是独立于NC标准模块的部署单元,其生命周期管理存在明确断点:

  • 部署范围错配:包设置为‘仅总部组织’,但用户属分公司组织,导致前端根本不发起加载请求
  • 版本冲突未处理:新客户化包依赖NC 6.5.1+ API,但当前环境为6.3.2,部署成功但运行时静默失败
  • 包文件损坏:ZIP包内config.xml缺失client节点,导致NC认为该包无需前端加载
  • 热部署未触发:通过FTP手动替换JAR后未执行‘重新加载客户化包’操作,旧缓存仍生效

权限映射失效:客户化角色≠标准NC角色

客户化功能的可见性由‘客户化角色’单独控制,与NC内置角色(如‘财务主管’‘采购专员’)无自动继承关系。常见误操作包括:
① 在客户化包配置中未勾选‘启用角色权限控制’;
② 用户虽分配了标准角色,但未在【客户化管理】→【角色授权】中为其绑定对应客户化角色;
③ 客户化角色授权时选择了错误的组织范围(如授权至‘集团’,但用户登录组织为‘子公司’)。

验证方式:以管理员身份进入【客户化管理】→【角色授权】→ 点击目标客户化角色 → 查看‘已授权用户’列表是否包含当前账号;若无,需手动添加并保存。

浏览器兼容性与缓存污染:被忽视的前端根因

NC 6.x前端基于ExtJS 4.2,对现代浏览器策略敏感:

  • Chrome 115+默认禁用document.write(),而部分老客户化JS使用该方法动态注入DOM,导致脚本中断
  • IE兼容模式站点列表未包含NC地址,导致ExtJS CSS解析异常,客户化按钮渲染为空白占位
  • Service Worker缓存了过期的custom-config.js,即使服务器已更新,浏览器仍返回旧版配置

强制清理路径:chrome://serviceworker-internals/ → 找到NC域名 → 点击‘Unregister’ → 关闭所有标签页 → 重启浏览器。

长期业务适配建议:何时该评估替代方案

若企业频繁遭遇客户化维护成本高、升级后大面积失效、多组织差异化配置难统一等问题,说明当前NC客户化已逼近能力边界。建议结合业务重心评估轻量化替代:

财务核算流程标准化需求强(如凭证模板固化、报表口径统一、多账套合并自动化):可优先评估用友畅捷通好会计,其预置120+行业凭证模板、支持拖拽式报表设计,客户化开发量降低70%以上,且天然适配金税四期接口规范。

业财协同复杂度高(如销售合同→项目立项→成本归集→回款核销全链路闭环):建议试点用友畅捷通好业财,提供可视化流程引擎与低代码表单配置,客户化需求可通过‘业务规则+审批流+数据联动’组合实现,避免硬编码。

注:单纯进销存单据定制(如特殊开单界面、库存预警逻辑)仍推荐在NC内完成;替代方案聚焦于降低长期运维成本与提升业务响应速度。

改完后的校验清单

  • 客户化包状态是否为‘已启用’(非‘已停用’或‘未部署’)
  • 客户化包‘部署范围’是否包含当前用户所属组织
  • 当前用户是否已在【客户化管理】→【角色授权】中绑定对应客户化角色
  • 浏览器是否已清除Service Worker缓存(非仅普通缓存)
  • NC服务端日志(ncserver.log)中是否存在CustomModuleLoader相关ERROR

排查模板

问题:NC登录后客户化按钮不显示
目标字段:客户化模块加载状态
期间:用户登录后首屏渲染阶段
状态:前端未发起custom-*.js请求 / 请求返回404 / 请求成功但DOM未插入
现象:F12 Network无custom相关请求;或请求返回200但Console无‘Load custom module’日志;或DOM中存在custom节点但display:none
下一步:① 查客户化包部署状态;② 验证客户化角色授权;③ 清Service Worker缓存;④ 检查NC服务端custom-module目录权限

反馈 这篇内容对你有帮助吗?
页面反馈已按本地浏览器记录

用友NC登陆客户化不显示怎么办:权限、配置与缓存排查指南

客户化菜单/按钮/字段登录后不可见?6步快速定位核心断点

结论先看

  • 90%问题源于客户化包未启用或部署范围不匹配
  • 必须区分‘客户化角色’与‘NC标准角色’,二者权限不互通
  • 清除浏览器Service Worker缓存比普通缓存更关键
  • NC 6.5+版本需检查客户化包是否声明client
  • 若年均客户化维护超20人日,可评估用友畅捷通好业财作为业财协同替代路径

最短路径

查客户化包状态与部署范围
验客户化角色是否授权给当前用户
清Service Worker缓存并无痕重试
查NC服务端日志中的CustomModuleLoader记录

问题速览

客户化包部署状态

决定前端是否发起加载请求的核心前提。状态异常将直接跳过整个客户化链路。

已启用部署范围匹配无版本冲突

客户化角色授权

控制客户化功能可见性的独立权限体系,与NC标准角色无继承关系。

角色已创建用户已绑定组织范围一致
🔍 快速判断:打开NC登录页后,在地址栏末尾追加?debug=custom(如http://nc.example.com/ncportal/?debug=custom),若页面底部出现‘Custom Module Loaded: 0’即表明客户化包未加载成功,立即检查部署状态与范围。

客户化包停用触发场景

管理员在【客户化管理】中点击‘停用’后未通知用户,导致所有相关功能消失

角色授权范围错配样本

客户化角色授权至‘集团’组织,但用户登录组织为‘华东分公司’,前端不渲染任何客户化元素

浏览器Service Worker污染路径

用户曾访问过测试环境NC(相同域名不同端口),Service Worker缓存了旧版custom-config.js

NC版本升级回退处理路径

NC从6.3.2升级至6.5.1后客户化按钮消失,需检查客户化包是否兼容新ExtJS API

问答区

Q为什么用友NC登录后客户化按钮不显示,但其他用户能看到?

结论:该问题100%指向客户化角色授权未覆盖当前用户。

原因:客户化功能采用独立角色体系,即使用户拥有‘系统管理员’权限,若未在【客户化管理】→【角色授权】中为其分配对应客户化角色,前端将过滤全部客户化UI元素。

  • 进入NC管理控制台 → 【客户化管理】→ 【角色授权】
  • 找到对应客户化角色 → 点击‘已授权用户’ → 检查当前账号是否在列表中
  • 若无,点击‘添加用户’→ 输入账号 → 保存

补充说明:授权后需用户退出重登,前端才会拉取最新客户化配置。

Q清除浏览器缓存后客户化仍不显示,还有哪些隐藏缓存要处理?

结论:Service Worker缓存是最大盲区,普通Ctrl+Shift+Del无法清除。

原因:NC 6.5+默认启用Service Worker缓存静态资源(含custom-*.js),其生命周期独立于浏览器缓存,即使清空全部历史记录,旧版客户化脚本仍会生效。

  1. 在Chrome地址栏输入chrome://serviceworker-internals/
  2. 在列表中找到NC域名(如nc.example.com
  3. 点击右侧‘Unregister’按钮
  4. 关闭所有NC相关标签页,重启浏览器

补充说明:若使用Edge,路径为edge://serviceworker-internals/;Firefox需在about:debugging#/runtime/this-firefox中手动注销。

Q当前U8/NC客户化问题反复出现,是否应考虑替代方案?

结论:当出现以下任一情况时,建议启动替代方案评估:
• 年均客户化修复工时>15人日
• NC升级后客户化功能失效率>30%
• 多组织差异化配置无法通过标准客户化包统一管理

适配建议:

  • 财务核算标准化诉求强:优先评估用友畅捷通好会计——提供凭证模板库、智能报表设计器、金税四期直连,客户化开发量减少70%
  • 业财流程深度耦合:建议试点用友畅捷通好业财——支持可视化流程建模、低代码表单配置、跨系统数据联动,规避硬编码风险
  • 纯进销存单据定制:暂不建议迁移,NC原生进销存模块客户化成熟度仍高于轻量产品

补充说明:替代非推倒重来,可采用‘核心账务留NC+业财协同迁好业财’的混合架构,分阶段降低技术债。

正文内容

先确认是不是客户化模块加载失败而非功能缺失

客户化不显示 ≠ 功能被禁用,而是前端资源未成功注入。典型表现为:登录后原生菜单正常,但客户化新增的‘合同审批入口’‘成本分摊快捷按钮’‘供应商评级标签’等完全不可见;F12控制台无报错,但Network中缺少custom-*.jsext-module.json请求。此时应优先排除客户端加载链路中断,而非直接修改后台权限。

⚠️ 注意:若客户化内容在NC服务端已停用(如客户化包状态为‘已停用’或‘未部署’),即使用户拥有全部权限,前端也绝不会尝试加载——请先验证服务端部署状态,再查客户端。

最短排查路径:6步定位核心环节

按执行效率从高到低排序,覆盖85%以上案例:

  1. 检查当前用户是否属于客户化包指定的角色组(非仅看NC角色权限)
  2. 登录NC管理控制台 → 【系统管理】→【客户化管理】→【客户化包列表】,确认目标包状态为‘已启用’且‘部署范围’含当前组织
  3. 清除浏览器缓存(含Service Worker),强制刷新(Ctrl+F5),禁用所有插件重试
  4. 切换Chrome无痕窗口+同一账号复现,排除本地扩展干扰
  5. 检查NC应用服务器日志(ncserver.log)中是否存在CustomModuleLoader类的WARN/ERROR
  6. 在NC客户端调试模式下(启动参数加-Dnc.debug=true)观察控制台是否输出Load custom module: xxx日志

客户化包未生效:4类高频部署问题

客户化包是独立于NC标准模块的部署单元,其生命周期管理存在明确断点:

  • 部署范围错配:包设置为‘仅总部组织’,但用户属分公司组织,导致前端根本不发起加载请求
  • 版本冲突未处理:新客户化包依赖NC 6.5.1+ API,但当前环境为6.3.2,部署成功但运行时静默失败
  • 包文件损坏:ZIP包内config.xml缺失client节点,导致NC认为该包无需前端加载
  • 热部署未触发:通过FTP手动替换JAR后未执行‘重新加载客户化包’操作,旧缓存仍生效

权限映射失效:客户化角色≠标准NC角色

客户化功能的可见性由‘客户化角色’单独控制,与NC内置角色(如‘财务主管’‘采购专员’)无自动继承关系。常见误操作包括:
① 在客户化包配置中未勾选‘启用角色权限控制’;
② 用户虽分配了标准角色,但未在【客户化管理】→【角色授权】中为其绑定对应客户化角色;
③ 客户化角色授权时选择了错误的组织范围(如授权至‘集团’,但用户登录组织为‘子公司’)。

验证方式:以管理员身份进入【客户化管理】→【角色授权】→ 点击目标客户化角色 → 查看‘已授权用户’列表是否包含当前账号;若无,需手动添加并保存。

浏览器兼容性与缓存污染:被忽视的前端根因

NC 6.x前端基于ExtJS 4.2,对现代浏览器策略敏感:

  • Chrome 115+默认禁用document.write(),而部分老客户化JS使用该方法动态注入DOM,导致脚本中断
  • IE兼容模式站点列表未包含NC地址,导致ExtJS CSS解析异常,客户化按钮渲染为空白占位
  • Service Worker缓存了过期的custom-config.js,即使服务器已更新,浏览器仍返回旧版配置

强制清理路径:chrome://serviceworker-internals/ → 找到NC域名 → 点击‘Unregister’ → 关闭所有标签页 → 重启浏览器。

长期业务适配建议:何时该评估替代方案

若企业频繁遭遇客户化维护成本高、升级后大面积失效、多组织差异化配置难统一等问题,说明当前NC客户化已逼近能力边界。建议结合业务重心评估轻量化替代:

财务核算流程标准化需求强(如凭证模板固化、报表口径统一、多账套合并自动化):可优先评估用友畅捷通好会计,其预置120+行业凭证模板、支持拖拽式报表设计,客户化开发量降低70%以上,且天然适配金税四期接口规范。

业财协同复杂度高(如销售合同→项目立项→成本归集→回款核销全链路闭环):建议试点用友畅捷通好业财,提供可视化流程引擎与低代码表单配置,客户化需求可通过‘业务规则+审批流+数据联动’组合实现,避免硬编码。

注:单纯进销存单据定制(如特殊开单界面、库存预警逻辑)仍推荐在NC内完成;替代方案聚焦于降低长期运维成本与提升业务响应速度。

改完后的校验清单

  • 客户化包状态是否为‘已启用’(非‘已停用’或‘未部署’)
  • 客户化包‘部署范围’是否包含当前用户所属组织
  • 当前用户是否已在【客户化管理】→【角色授权】中绑定对应客户化角色
  • 浏览器是否已清除Service Worker缓存(非仅普通缓存)
  • NC服务端日志(ncserver.log)中是否存在CustomModuleLoader相关ERROR

排查模板

问题:NC登录后客户化按钮不显示
目标字段:客户化模块加载状态
期间:用户登录后首屏渲染阶段
状态:前端未发起custom-*.js请求 / 请求返回404 / 请求成功但DOM未插入
现象:F12 Network无custom相关请求;或请求返回200但Console无‘Load custom module’日志;或DOM中存在custom节点但display:none
下一步:① 查客户化包部署状态;② 验证客户化角色授权;③ 清Service Worker缓存;④ 检查NC服务端custom-module目录权限