【问题标题】:CRM Dynamics Ribbon Workbench: FormStateRule for Active/Readonly screen not workingCRM 动态功能区工作台:活动/只读屏幕的 FormStateRule 不起作用
【发布时间】:2018-01-09 20:36:17
【问题描述】:

我已开始使用 CRM Dynamics 365 的 Ribbon Workbench,但遇到了一些问题。具体来说,如果有问题的表单是只读且活动的,我需要隐藏一个按钮。

我首先创建了一个分配给相关按钮的 DisplayRule。 DisplayRule 由具有以下条件的 FormStateRule 组成

默认:假
状态:只读
InvertResult:真

由于某种原因,它不起作用。该按钮继续显示表单是否为只读。有人对我如何让它工作有任何想法吗?这么简单的要求应该不难做到!

我应该补充一点,我可以根据其他标准让 DisplayRule 切换按钮,这是我无法弄清楚的确切情况。

【问题讨论】:

  • 不,这不是那个问题的重复。我已经验证该按钮已设置为自定义。我还可以让显示规则根据其他设置进行切换,例如将状态设置为创建。尽管有 ReadOnly 选项,但我似乎无法弄清楚如何判断 Form 的状态何时为 ReadOnly,这显然无法按预期工作。
  • 您是在谈论为非活动记录加载的 CRM OOB 只读表单还是以其他方式禁用表单控件?还要检查 InvertResult=false 行为。
  • 不,这是一个处于活动状态的表单,但在某些情况下也被设置为只读。
  • 您可能是在加载功能区后在表单加载脚本中设置它,对吗?

标签: dynamics-crm crm crm-ribbon-workbench


【解决方案1】:

一旦您将表单设置为只读模式,您可能必须使用下面的 sn-p 来刷新功能区控件。

Xrm.Page.ui.refreshRibbon();

这是需要的,因为您在某些情况下加载 ReadOnly 表单,记录仍处于活动状态。

【讨论】:

    【解决方案2】:

    原来问题在于我使用的是 DisplayRule 而不是 EnableRule。 EnableRules 为我提供了 RecordPrivilegeRules。这提供了确定对正在使用的确切记录的权限的能力,而不是通过 FormStateRule 获得的一般访问权限。

    我有点生自己的气,花了这么长时间才弄清楚这么简单的事情,但希望这能帮助其他人。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-18
      • 2015-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多