Marvin
Marvin

Reputation: 559

EntityRule in subgrid on custom entity not working

I tried to add a button to connection subgrid ribbon. This button should only be visible if the primary entity equals 'new_visitreport'. Here is my try:

      <CustomAction Id="Visitreports.connection.customAction"
                    Location="Mscrm.SubGrid.connection.MainTab.Management.Controls._children"
                    Sequence="15" >
        <CommandUIDefinition>
          <Button Id="Mscrm.SubGrid.connection.AddXYZ" 
                  ToolTipTitle="$LocLabels:Button.AddXYZ.Label"
                  ToolTipDescription="$LocLabels:Button.AddXYZ.Tooltip"
                  LabelText="$LocLabels:Button.AddXYZ.Label"
                  Command="Button.AddXYZ.Command" 
                  Image16by16="$webresource:new_XYZ_16" 
                  Image32by32="$webresource:new_XYZ_32" 
                  TemplateAlias="o1" />
        </CommandUIDefinition>

      </CustomAction>

      <CommandDefinition Id="Button.AddXYZ.Command">
        <EnableRules></EnableRules>
        <DisplayRules>
            <DisplayRule Id="EntityEqualsVisitreport" />
        </DisplayRules>
        <Actions>
          <JavaScriptFunction FunctionName="openDialog"
                              Library="$webresource:new_script_open_dialog">
            <StringParameter Value="3EEE3AE1-5543-433E-8123-6A14EA925A96" />
            <StringParameter Value="3EEE3AE1-5543-433E-8123-6A14EA925A96" />
            <BoolParameter Value="false" />
          </JavaScriptFunction>
        </Actions>
      </CommandDefinition>

        <DisplayRule Id="EntityEqualsVisitreport">
          <EntityRule AppliesTo="PrimaryEntity"
                      EntityName="new_visitreport" />
        </DisplayRule>

It seems that this rule always returns false. If I remove the display rule from command definition the button is visible, but independet of the currently primary entity.

Is there any mistake in my examply or is it not working for custom entitis although it is supported? (MSDN article)

Upvotes: 2

Views: 1046

Answers (1)

Andy Meyers
Andy Meyers

Reputation: 1581

Try using FormEntityContextRule it looks like these guys had the same issue you had. Forum Link

<FormEntityContextRule EntityName="account"/>

Upvotes: 2

Related Questions