あなたの根本的な問題は、システムボタンを無効にする方法だと思います。そして良いニュースは、私たちは今それを行うことができるということですが、私の意見では、それは複雑な作業です. 詳細な手順は次のとおりです。 1. ExportXml を使用して、システム リボン ファイルをエクスポートします。(sdk\samplecode\cs\client\ribbon\exportribbonxml)
適切なリボン ファイルを見つけます。アカウントのリボンを変更する場合は、accountRibbon.xml を選択する必要があります。
リボン ファイルを開き、非表示にするボタン定義ステートメントを見つけます。
4. これらのステートメントをカスタム エンティティの customizations.xml にコピーし、enablerule を変更します。
以下はサンプル コードで、ホームページ リボンでカスタム エンティティの新しいボタンを非表示にすることができました。
<CustomAction Id="Mscrm.Form.new_purchaseorder.SaveAndNew.custom" Location="Mscrm.Form.new_purchaseorder.MainTab.Save.Controls._children">
<CommandUIDefinition>
<Button Id="Mscrm.Form.new_purchaseorder.SaveAndNew" ToolTipTitle="$Resources:Mscrm_Form_Other_MainTab_Save_SaveAndNew_ToolTipTitle" ToolTipDescription="$Resources(EntityDisplayName):Ribbon.Tooltip.SaveAndNew" Command="Mscrm.SaveAndNewPrimary.custom" Sequence="40" LabelText="$Resources:Ribbon.Form.MainTab.Save.SaveAndNew" Alt="$Resources:Ribbon.Form.MainTab.Save.SaveAndNew" Image16by16="/_imgs/ribbon/saveandnew16.png" Image32by32="/_imgs/ribbon/saveandnew32.png" TemplateAlias="o2" />
</CommandUIDefinition>
</CustomAction>
<CommandDefinition Id="Mscrm.SaveAndNewPrimary.custom">
<EnableRules>
<EnableRule Id="Mscrm.NewRecordFromGrid.EnableRule1" />
<EnableRule Id="Mscrm.AvailableOnForm" />
<EnableRule Id="Mscrm.CanSavePrimary" />
</EnableRules>
<DisplayRules>
<DisplayRule Id="Mscrm.CreatePrimaryEntityPermission" />
</DisplayRules>
<Actions>
<JavaScriptFunction FunctionName="Mscrm.RibbonActions.saveAndNewForm" Library="/_static/_common/scripts/RibbonActions.js">
<CrmParameter Value="PrimaryControl" />
</JavaScriptFunction>
</Actions>
</CommandDefinition>
<EnableRule Id="Mscrm.NewRecordFromGrid.EnableRule1">
<CustomRule Library="$webresource:new_purchaseorder.js" FunctionName="NewRecordFromGrid_enablerule1" Default="false"></CustomRule>
</EnableRule>