locked
Error on Ribbon Button Change RRS feed

  • Question

  • Hi!

    I have changed position of a custom ribbon button on quote entity but im getting an error while saving changes(importing Solution into CRM).

    I use Visual Ribbon Editor to make changes and i have never had a problem while adding buttons.

    I'm sharing error code below.

    Thanks for your help.

    Application Message: Ribbons import: FAILURE
    Exception Type: FaultException`1
    Fault Action: http://schemas.microsoft.com/xrm/2011/Contracts/Services/IOrganizationService/ExecuteOrganizationServiceFaultFault
    Fault Code: Sender
    Fault Action: http://schemas.microsoft.com/xrm/2011/Contracts/Services/IOrganizationService/ExecuteOrganizationServiceFaultFault
    Fault Code: Sender
    Error Code: -2147188687
    Error Message: Ribbons import: FAILURE
    Error Trace: 
    Message: Ribbons import: FAILURE
    Error Details: System.ServiceModel.FaultException`1[Microsoft.Xrm.Sdk.OrganizationServiceFault]: Ribbons import: FAILURE (Fault Detail is equal to Microsoft.Xrm.Sdk.OrganizationServiceFault).


    Friday, October 31, 2014 10:08 AM

Answers

  • Hi,

    I would say this is your problem

    >Crm Exception: Message: Ribbons import: FAILURE, ErrorCode: -2147188687, InnerException: Microsoft.Crm.CrmException: Found more than one RibbonDiff entity.

    You seem to have had the sitemap corrupted somehow. If you export the sitemap at browse through it after ribbondiff objects on that entity you will probably solve it.

    Regards


    Rickard Norström Developer CRM-Konsulterna
    http://www.crmkonsulterna.se
    Swedish Dynamics CRM Forum: http://www.crmforum.se
    My Blog: http://rickardnorstrom.blogspot.se

    • Marked as answer by Eldanar Friday, October 31, 2014 1:03 PM
    Friday, October 31, 2014 12:30 PM

All replies

  • Hi,

    It's quite hard to say anything from that error message. Is it possible to get any trace logs from the server? What happens if you just export the ribbon and reimport it without any changes?

    Regards


    Rickard Norström Developer CRM-Konsulterna
    http://www.crmkonsulterna.se
    Swedish Dynamics CRM Forum: http://www.crmforum.se
    My Blog: http://rickardnorstrom.blogspot.se

    Friday, October 31, 2014 11:12 AM
  • I have made no changes and taken the same error.

    Trace log is below.

    In addition, i have made some changes yesterday to hide a standard button manually on xml file and it was a succesful change, i have faced no problem so far.

    Can this change cause this problem ?

    # CRM Tracing Version 2.0
    # LocalTime: 2014-10-31 14:08:56.705
    # Categories: 
    # CallStackOn: No
    # ComputerName: xxxxxxx
    # CRMVersion: 5.0.9900.1060
    # DeploymentType: OnPremise
    # ScaleGroup: 
    # ServerRole: AppServer, AsyncService, DiscoveryService, ApiServer, HelpServer, DeploymentService, SandboxServer, DeploymentManagementTools


    [2014-10-31 14:13:33.213] Process: w3wp |Organization:34e7e92a-47ab-4cda-9b91-69045cfac8a9 |Thread:   38 |Category: Exception |User: c768f3c1-c740-e011-9f92-001e0bc61a8c |Level: Error |ReqId: 1ce1fb09-3e9e-4895-856e-f50c54a05bbd | CrmException..ctor  ilOffset = 0x7
    at CrmException..ctor(String message, Exception innerException, Int32 errorCode, Boolean isFlowControlException)  ilOffset = 0x7
    at CrmException..ctor(String message, Exception innerException, Int32 errorCode)  ilOffset = 0x5
    at RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)  ilOffset = 0xFFFFFFFF
    at RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)  ilOffset = 0xF7
    at RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark)  ilOffset = 0x1E8
    at Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)  ilOffset = 0xBB
    at Activator.CreateInstance(Type type, Object[] args)  ilOffset = 0xA
    at VersionedPluginProxyStepBase.WrapExceptionToThrow(CrmException exception)  ilOffset = 0xD3
    at VersionedPluginProxyStepBase.Execute(PipelineExecutionContext context)  ilOffset = 0x65
    at Pipeline.Execute(PipelineExecutionContext context)  ilOffset = 0x65
    at MessageProcessor.Execute(PipelineExecutionContext context)  ilOffset = 0x1C5
    at InternalMessageDispatcher.Execute(PipelineExecutionContext context)  ilOffset = 0xE4
    at ExternalMessageDispatcher.ExecuteInternal(IInProcessOrganizationServiceFactory serviceFactory, IPlatformMessageDispatcherFactory dispatcherFactory, String messageName, String requestName, Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, ParameterCollection fields, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId, Guid transactionContextId, Int32 invocationSource, Nullable`1 requestId, Version endpointVersion)  ilOffset = 0x156
    at OrganizationSdkServiceInternal.ExecuteRequest(OrganizationRequest request, CorrelationToken correlationToken, CallerOriginToken callerOriginToken, WebServiceType serviceType, UserAuth userAuth, Guid targetUserId, Boolean traceRequest, OrganizationContext context, Boolean returnResponse)  ilOffset = 0x145
    at OrganizationSdkServiceInternal.ExecuteRequest(OrganizationRequest request, CorrelationToken correlationToken, CallerOriginToken callerOriginToken, WebServiceType serviceType)  ilOffset = 0x3D
    at OrganizationSdkServiceInternal.Execute(OrganizationRequest request, CorrelationToken correlationToken, CallerOriginToken callerOriginToken, WebServiceType serviceType)  ilOffset = 0x24
    at   ilOffset = 0xFFFFFFFF
    at SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)  ilOffset = 0x241
    at DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)  ilOffset = 0x100
    at ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)  ilOffset = 0x48
    at ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc)  ilOffset = 0xC6
    at MessageRpc.Process(Boolean isOperationContextSet)  ilOffset = 0x62
    at ChannelHandler.DispatchAndReleasePump(RequestContext request, Boolean cleanThread, OperationContext currentOperationContext)  ilOffset = 0x256
    at ChannelHandler.HandleRequest(RequestContext request, OperationContext currentOperationContext)  ilOffset = 0xF1
    at ChannelHandler.AsyncMessagePump(IAsyncResult result)  ilOffset = 0x39
    at AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)  ilOffset = 0x0
    at AsyncResult.Complete(Boolean completedSynchronously)  ilOffset = 0xC2
    at ReceiveItemAndVerifySecurityAsyncResult`2.InnerTryReceiveCompletedCallback(IAsyncResult result)  ilOffset = 0x55
    at AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)  ilOffset = 0x0
    at AsyncResult.Complete(Boolean completedSynchronously)  ilOffset = 0xC2
    at AsyncQueueReader.Set(Item item)  ilOffset = 0x21
    at InputQueue`1.Dispatch()  ilOffset = 0x121
    at ScheduledOverlapped.IOCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* nativeOverlapped)  ilOffset = 0x22
    at IOCompletionThunk.UnhandledExceptionFrame(UInt32 error, UInt32 bytesRead, NativeOverlapped* nativeOverlapped)  ilOffset = 0x5
    at _IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)  ilOffset = 0x3C
    >Crm Exception: Message: Ribbons import: FAILURE, ErrorCode: -2147188687, InnerException: Microsoft.Crm.Tools.ImportExportPublish.ImportRibbonsException: Ribbons import: FAILURE ---> Microsoft.Crm.CrmException: Found more than one RibbonDiff entity.
       at Microsoft.Crm.CrmException.Assert(Boolean condition, String message)
       at Microsoft.Crm.ObjectModel.RibbonDiffService.CreateOrUpdateRibbonDiffInternal(IBusinessEntity entity, ControlMapping controlMapping, ExecutionContext context, BusinessEntityMoniker& ribbonDiffMoniker)
       at Microsoft.Crm.ObjectModel.RibbonDiffService.CreateCustomActionFromXml(XElement customActionNode, BusinessEntityMoniker parentRibbonCustomization, String entityLogicalName, ControlMapping controlMapping, Boolean ignoreMissingParentTab, ExecutionContext context)
       at Microsoft.Crm.ObjectModel.RibbonCustomizationService.CreateDiffsFromXml(BusinessEntityMoniker ribbonCustomization, XElement customActionsNode, String entityLogicalName, ExecutionContext context)
       at Microsoft.Crm.ObjectModel.RibbonCustomizationService.CreateChildEntitiesFromXml(BusinessEntityMoniker ribbonCustomization, XElement ribbonDiff, String entityLogicalName, ExecutionContext context)
       at Microsoft.Crm.ObjectModel.RibbonCustomizationService.UpdateFromXml(IBusinessEntity entity, XElement ribbonDiff, String entityLogicalName, ExecutionContext context)
       at Microsoft.Crm.ObjectModel.RibbonCustomizationService.CreateOrUpdateFromXml(XElement ribbonDiff, String entityLogicalName, ExecutionContext context)
       at Microsoft.Crm.Tools.ImportExportPublish.ImportRibbonsHandler.ImportInternal(String entityLogicalName, RibbonCustomizationService ribbonCustomizationService, XElement ribbonCustomizationNode)
       at Microsoft.Crm.Tools.ImportExportPublish.ImportRibbonsHandler.ImportDiffsInternal(XElement ribbonCustomizationNode, String entityLogicalName)
       at Microsoft.Crm.Tools.ImportExportPublish.ImportRibbonsHandler.ImportItem()
       --- End of inner exception stack trace ---
       at Microsoft.Crm.Tools.ImportExportPublish.ImportXml.RunImport(String[] ImportEntities)
       at Microsoft.Crm.Tools.ImportExportPublish.ImportXml.RunImport()
       at Microsoft.Crm.WebServices.ImportXmlService.ImportSolutionSkipCapable(Boolean overwriteUnmanagedCustomizations, Boolean publishWorkflows, Byte[] customizationFile, Guid importJobId, Boolean convertToManaged, Boolean skipProductUpdateDependencies, ExecutionContext context)
    [2014-10-31 14:13:33.213] Process: w3wp |Organization:34e7e92a-47ab-4cda-9b91-69045cfac8a9 |Thread:   38 |Category: Platform |User: c768f3c1-c740-e011-9f92-001e0bc61a8c |Level: Error |ReqId: 1ce1fb09-3e9e-4895-856e-f50c54a05bbd | MessageProcessor.Execute  ilOffset = 0x1C5
    >MessageProcessor fail to process message 'ImportSolution' for 'none'.


    Friday, October 31, 2014 12:29 PM
  • Hi,

    I would say this is your problem

    >Crm Exception: Message: Ribbons import: FAILURE, ErrorCode: -2147188687, InnerException: Microsoft.Crm.CrmException: Found more than one RibbonDiff entity.

    You seem to have had the sitemap corrupted somehow. If you export the sitemap at browse through it after ribbondiff objects on that entity you will probably solve it.

    Regards


    Rickard Norström Developer CRM-Konsulterna
    http://www.crmkonsulterna.se
    Swedish Dynamics CRM Forum: http://www.crmforum.se
    My Blog: http://rickardnorstrom.blogspot.se

    • Marked as answer by Eldanar Friday, October 31, 2014 1:03 PM
    Friday, October 31, 2014 12:30 PM
  • Changes i have made before effected negatively the sitemap so i have recalled my changes, moved button and changed again.

    Thank you so much Rickard.

    Friday, October 31, 2014 1:03 PM
  • Glad it worked out, those things can be quite pesky to get hold of.


    Rickard Norström Developer CRM-Konsulterna
    http://www.crmkonsulterna.se
    Swedish Dynamics CRM Forum: http://www.crmforum.se
    My Blog: http://rickardnorstrom.blogspot.se

    Friday, October 31, 2014 1:08 PM