2012-05-09 5 views
3

현재 양식의 확인란 값을 기준으로 사용자 지정 리본 단추를 표시하거나 숨기려고합니다.CRM 2011 리본 DisplayRule ValueRule이 작동하지 않습니다.

<DisplayRule>을 사용해 보았을 때 필드에 입력 한 값이 무엇이든 관계없이 XML이 제대로 작동하도록했습니다. <DisplayRule>을 사용하면이 버튼이 사라집니다. 내 규칙 정의에 다음

 <CommandUIDefinition> 
      <Group Id="Mscrm.Form.account.CustomGroup.Group" 
       Command="Mscrm.Form.account.CustomGroup.Command" 
       Title="Client Commands" 
       Sequence="51" 
       Template="Mscrm.Templates.Flexible2"> 

       <Controls Id="Mscrm.Form.account.CustomGroup.Controls"> 
       <Button Id="Mscrm.Form.account.CustomGroup.Button.A" 
         Command="Mscrm.Form.account.CustomGroup.Button.A.Command" 
         Sequence="10" 
         LabelText="Custom Button" 
         ToolTipTitle="Description" 
         ToolTipDescription="Should only be shown if this account is trading" 
         TemplateAlias="o1" 
         Image16by16="/_imgs/ribbon/CustomEntity_16.png" 
         Image32by32="/_imgs/ribbon/CustomEntity_32.png" /> 
      </Controls> 
      </Group> 
     </CommandUIDefinition> 

:

여기 아래에있는 내 XML입니다

다시
<RuleDefinitions> 
     <TabDisplayRules /> 
     <DisplayRules> 
     <DisplayRule Id="Mscrm.Form.account.CustomDisplayRules.DisplayIfClient"> 
      <ValueRule Field="new_is_trading" Value="true" /> 
     </DisplayRule> 
     </DisplayRules> 
     <EnableRules> 
     <EnableRule Id="Mscrm.Form.account.CustomEnableRules.EnableIfClient"> 
      <ValueRule Field="new_is_trading" Value="true" /> 
     </EnableRule> 
     </EnableRules> 
    </RuleDefinitions> 

, 내 EnableRule 잘 작동하지만 내 DisplayRule 어떤 이유로하지 않습니다!

+0

페이지가 처음로드 된 후 표시 규칙 검사가 시작 되었습니까? 디스플레이 규칙이 페이지로드에만 사용되었다고 생각한 후 그 규칙을 사용/사용 중지 할 수있었습니다. –

+0

나는 값을 모두 true와 false로 설정했지만 어떤 경우에도 버튼이 표시되지 않는다. – user1173691

답변

4

사용 1 (참)과 0 (이 값 속성을 사용하지 않는,하지만 난 아래의 코드가 잘 작동 알고 그것을 당신이 만든 규칙에 대한 참조를 놓치고 나타납니다) 부울 값을 비교 -이 작동합니다. 동일한 문제가 있습니다.

-1

내가 어떻게 활성화되는지는 잘 모르겠지만 여기는 내가 사용하고있는 작업 명령 정의의 예입니다. ... 거짓

<CommandDefinitions> 
     <CommandDefinition Id="Mscrm.Isv.account.grid.ShowMap.Command"> 
     <EnableRules> 
      <EnableRule Id="Mscrm.Isv.account.Clients.EnableRule" /> 
      <EnableRule Id="Mscrm.Isv.account.grid.OneSelected.EnableRule" /> 
     </EnableRules> 
     <DisplayRules> 
      <DisplayRule Id="Mscrm.Isv.account.Clients.DisplayRule" /> 
     </DisplayRules> 
     <Actions> 
      <JavaScriptFunction Library="$webresource:way_showBingMapAll.js" FunctionName="showBingMap" /> 
     </Actions> 
     </CommandDefinition> 
    </CommandDefinitions> 
+0

'EnableRule'과'DisplayRule's에 정의 된' RuleDefinitions' 섹션에 설명되어 있습니다. –