We have some weird behavior going on. We had a requirement a few years ago to remove the NEW button from the subgrid. We used the ribbon editor and did the Hide Actions on the Add Existing {0}. That eliminated the buttons in the dev environment. We then exported the MANAGED solution and imported into our QA and then Production environments. All happy using processes creating records and not missing new button on the subgrid.
Switch to this week. New requirement to return the NEW button on the subgrid (still need the NEW button hidden on the Form). We used the ribbon editor and removed the hide actions and published. Yup the + button is back on the subgrid in Development. Export the MANAGED solution and imported into QA.
The subgrid in QA does not have the +. There are no <HideCustomAction> in our customizations.xml the remaining items are another button we have on the form. Why would the button not return in QA. Surely the fact that our QA is a managed solution area shouldn't make a difference.
<RibbonDiffXml> <CustomActions> <CustomAction Id="spirit.spirit_repair.CreateNegoButton.Button.CustomAction" Location="Mscrm.Form.spirit_repair.MainTab.Save.Controls._children" Sequence="38"> <CommandUIDefinition> <Button Alt="$LocLabels:spirit.spirit_repair.CreateNegoButton.Button.Alt" Command="spirit.spirit_repair.CommandCreateNegoButton.Command" Id="spirit.spirit_repair.CreateNegoButton.Button" Image32by32="$webresource:spirit_/Image/AddActivity_32.png" Image16by16="$webresource:spirit_/Image/AddActivity_16.png" LabelText="$LocLabels:spirit.spirit_repair.CreateNegoButton.Button.LabelText" Sequence="38" TemplateAlias="o1" ToolTipTitle="$LocLabels:spirit.spirit_repair.CreateNegoButton.Button.ToolTipTitle" ToolTipDescription="$LocLabels:spirit.spirit_repair.CreateNegoButton.Button.ToolTipDescription" ModernImage="Create Negotiation" /> </CommandUIDefinition> </CustomAction> </CustomActions> <Templates> <RibbonTemplates Id="Mscrm.Templates"></RibbonTemplates> </Templates> <CommandDefinitions> <CommandDefinition Id="spirit.spirit_repair.CommandCreateNegoButton.Command"> <EnableRules /> <DisplayRules> <DisplayRule Id="spirit.spirit_repair.DisplayRuleCreateNego.DisplayRule" /> </DisplayRules> <Actions> <JavaScriptFunction FunctionName="CreateNegotiation" Library="$webresource:spirit_/Scripts/Spirit.CRM.JScript.Repair.Ribbon.js" /> </Actions> </CommandDefinition> </CommandDefinitions> <RuleDefinitions> <TabDisplayRules /> <DisplayRules> <DisplayRule Id="spirit.spirit_repair.DisplayRuleCreateNego.DisplayRule"> <OrRule> <Or> <ValueRule Field="spirit_negotiation_spirit_repair_id" Value="null" /> </Or> <Or> <ValueRule Field="spirit_negotiation_spirit_repair_id" Value="" /> </Or> </OrRule> </DisplayRule> </DisplayRules> <EnableRules /> </RuleDefinitions> <LocLabels> <LocLabel Id="spirit.spirit_repair.CreateNegoButton.Button.Alt"> <Titles> <Title description="Create Negotiation" languagecode="1033" /> </Titles> </LocLabel> <LocLabel Id="spirit.spirit_repair.CreateNegoButton.Button.LabelText"> <Titles> <Title description="Create Negotiation" languagecode="1033" /> </Titles> </LocLabel> <LocLabel Id="spirit.spirit_repair.CreateNegoButton.Button.ToolTipDescription"> <Titles> <Title description="Create a negotation that is associated to this record." languagecode="1033" /> </Titles> </LocLabel> <LocLabel Id="spirit.spirit_repair.CreateNegoButton.Button.ToolTipTitle"> <Titles> <Title description="Create Negotiation" languagecode="1033" /> </Titles> </LocLabel> </LocLabels> </RibbonDiffXml>
<RibbonDiffXml> <CustomActions> <CustomAction Id="spirit.spirit_repair.CreateNegoButton.Button.CustomAction" Location="Mscrm.Form.spirit_repair.MainTab.Save.Controls._children" Sequence="38"> <CommandUIDefinition> <Button Alt="$LocLabels:spirit.spirit_repair.CreateNegoButton.Button.Alt" Command="spirit.spirit_repair.CommandCreateNegoButton.Command" Id="spirit.spirit_repair.CreateNegoButton.Button" Image32by32="$webresource:spirit_/Image/AddActivity_32.png" Image16by16="$webresource:spirit_/Image/AddActivity_16.png" LabelText="$LocLabels:spirit.spirit_repair.CreateNegoButton.Button.LabelText" Sequence="38" TemplateAlias="o1" ToolTipTitle="$LocLabels:spirit.spirit_repair.CreateNegoButton.Button.ToolTipTitle" ToolTipDescription="$LocLabels:spirit.spirit_repair.CreateNegoButton.Button.ToolTipDescription" ModernImage="Create Negotiation" /> </CommandUIDefinition> </CustomAction> </CustomActions> <Templates> <RibbonTemplates Id="Mscrm.Templates"></RibbonTemplates> </Templates> <CommandDefinitions> <CommandDefinition Id="spirit.spirit_repair.CommandCreateNegoButton.Command"> <EnableRules /> <DisplayRules> <DisplayRule Id="spirit.spirit_repair.DisplayRuleCreateNego.DisplayRule" /> </DisplayRules> <Actions> <JavaScriptFunction FunctionName="CreateNegotiation" Library="$webresource:spirit_/Scripts/Spirit.CRM.JScript.Repair.Ribbon.js" /> </Actions> </CommandDefinition> </CommandDefinitions> <RuleDefinitions> <TabDisplayRules /> <DisplayRules> <DisplayRule Id="spirit.spirit_repair.DisplayRuleCreateNego.DisplayRule"> <OrRule> <Or> <ValueRule Field="spirit_negotiation_spirit_repair_id" Value="null" /> </Or> <Or> <ValueRule Field="spirit_negotiation_spirit_repair_id" Value="" /> </Or> </OrRule> </DisplayRule> </DisplayRules> <EnableRules /> </RuleDefinitions> <LocLabels> <LocLabel Id="spirit.spirit_repair.CreateNegoButton.Button.Alt"> <Titles> <Title description="Create Negotiation" languagecode="1033" /> </Titles> </LocLabel> <LocLabel Id="spirit.spirit_repair.CreateNegoButton.Button.LabelText"> <Titles> <Title description="Create Negotiation" languagecode="1033" /> </Titles> </LocLabel> <LocLabel Id="spirit.spirit_repair.CreateNegoButton.Button.ToolTipDescription"> <Titles> <Title description="Create a negotation that is associated to this record." languagecode="1033" /> </Titles> </LocLabel> <LocLabel Id="spirit.spirit_repair.CreateNegoButton.Button.ToolTipTitle"> <Titles> <Title description="Create Negotiation" languagecode="1033" /> </Titles> </LocLabel> </LocLabels> </RibbonDiffXml>
*This post is locked for comments