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

Dynamics CRM如何通过Ribbon Workbench仅在特定Form隐藏Ribbon按钮

Dynamics CRM Ribbon Workbench 特定Form隐藏按钮实现方案

完全可以实现该需求,你可以通过以下两种Display Rule配置方式完成,仅在指定Form隐藏按钮、不影响其他Form的按钮显示:

方案1:原生FormEntityContextRule 配置(无代码,官方推荐)

这是最稳定的原生实现方式,不需要额外开发自定义脚本:

  • 打开Ribbon Workbench,加载对应实体的Ribbon自定义解决方案
  • 找到需要调整的目标Ribbon按钮,右键选择「Customize Command」
  • 在该Command关联的Display Rules下新增FormEntityContextRule规则
  • 规则属性的FormId字段填写你要限制的特定Form的GUID(可在Form编辑页URL中提取,或导出解决方案后查看Form XML的id属性获取)
  • 规则AppliesTo选择「Primary Entity」,如果要实现仅在该Form隐藏按钮,将InvertResult属性设为True即可:匹配到指定Form时规则返回False,按钮隐藏,其他Form下规则返回True,按钮正常显示
  • 发布配置后生效

方案2:自定义JavaScript规则(适配复杂逻辑场景)

如果需要叠加其他判断条件,可以用自定义规则实现:

  • 先编写自定义Web资源JS方法,示例代码如下:
function checkTargetForm() {
    // 目标Form的GUID,替换为你实际的FormID,注意统一为小写
    const targetFormId = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx".toLowerCase();
    const currentFormId = Xrm.Page.ui.formSelector.getCurrentItem().getId().replace(/[{}]/g, "").toLowerCase();
    // 匹配到目标Form返回false,按钮隐藏;其他场景返回true,按钮显示
    return currentFormId !== targetFormId;
}
  • 在Display Rules下新增CustomRule,绑定上述JS对应的Web资源,方法名填写checkTargetForm
  • 发布配置后生效

注意:配置完成后先在测试环境验证不同Form下的按钮显示状态,确认符合预期后再发布到生产环境,避免影响全局功能。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 10:18:03