【问题标题】:Custom Ribbon Button SelectionCount rule not always working自定义功能区按钮 SelectionCount 规则并不总是有效
【发布时间】:2012-11-17 16:46:43
【问题描述】:

我在我的 CRM 实体上创建了一组使用启用规则的功能区按钮,以便它们仅在选择视图中的单个记录时才可用,或多或少并且按钮不应再启用。

这确实有效,但在某些情况下它不会达到预期目的。有时我单击视图并选择一个字段,但按钮仍处于禁用状态,或者我单击多个按钮仍处于启用状态。

这只是它们工作方式的一个缺陷,还是我需要添加一些额外的东西来确保它们每次都能正常工作?

谢谢

【问题讨论】:

    标签: dynamics-crm-2011


    【解决方案1】:

    特定功能区按钮的启用规则应如下所示:

    <EnableRules>
                <EnableRule Id="crm.Form.contact.MainTab.Collaborate.SendNotif.Command.EnableRule.OrRule">
                  <OrRule>
                    <Or>
                      <FormStateRule State="ReadOnly" />
                    </Or>
                    <Or>
                      <FormStateRule State="Existing" />
                    </Or>
                  </OrRule>
                </EnableRule>
                <EnableRule Id="crm.Form.contact.MainTab.Collaborate.SendNotif.Command.EnableRule.RecordPrivilegeRule">
                  <RecordPrivilegeRule AppliesTo="PrimaryEntity" PrivilegeType="AppendTo" />
                </EnableRule>
                <EnableRule Id="crm.HomepageGrid.contact.MainTab.Collaborate.SendNotif.Command.EnableRule.SelectionCountRule">
                  <SelectionCountRule AppliesTo="SelectedEntity" Maximum="1" Minimum="1" />
                </EnableRule>
              </EnableRules>
    

    在上面的示例中,主要部分是:

    <EnableRule Id="crm.HomepageGrid.contact.MainTab.Collaborate.SendNotif.Command.EnableRule.SelectionCountRule">
          <SelectionCountRule AppliesTo="SelectedEntity" Maximum="1" Minimum="1" />
    </EnableRule>
    

    如果你使用Visual Ribbon Editor for crm 2011(我推荐)启用规则选项卡应该是这样的:

    将您的设置与此示例进行比较。这行得通,经过验证:)

    希望对你有帮助

    【讨论】:

    • 是的,这与我在可视化功能区编辑器中所拥有的相匹配。我想知道,如果系统在我选择或取消选择记录时出现短暂的性能下降,是否会以某种方式阻止启用规则正常工作?
    • 看起来问题可能是因为它在子网格中,因为我已经在实体的主视图(主页)中尝试过它并且在那里工作正常
    【解决方案2】:

    我已经 8 年了,但有人会发现这很有用:)

    尝试将distinct="true" 添加到您的视图 fetchxml

    <fetchxml>
       <fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="true">
          <entity name="entity">
             <attribute name="attribute" />
          </entity>
       </fetch>
    </fetchxml>
    

    如果您在 SelectionCountRule 中使用 minimum=1 和 maximum=1,那么当记录溢出到另一个页面时,即使您选择了某些记录,您也可能会遇到 SelectionCountRule 为 false 的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-18
      • 1970-01-01
      • 2018-12-09
      • 2018-03-20
      相关资源
      最近更新 更多