[GELÖST] Fehlermeldung beim Reimport eines Charts

13. November 2013 20:47

Hallo zusammen.

Mein erster Beitrag in diesem Forum und gleich ein Thema, was mir Kopfzerbrechen bereitet.

Wir haben MSCRM 2011 mit RU8 im Einsatz.

Folgendes Problem:
Eine Fachabteilung hat sich für Auswertungen Dashboards und Charts designed und bearbeitet diese selbständig. Sie haben durch das Berechtigungskonzept entsprechende Berechtigungen zugewiesen bekommen. Die Fachabteilung möchte nun ein Chart EXPORTIEREN, um dieses dann zu bearbeiten (XML). Anschließend soll der Chart wieder importiert werden... hier wird vor einer erkannten Dublette gewarnt und nach dem weiteren Vorgehen gefragt...

Bild

Hier wird Replace ausgewählt... dann kommt es zu folgender Fehlermeldung!

Unhandled Exception: System.ServiceModel.FaultException`1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]: An unexpected error occurred.Detail:
<OrganizationServiceFault xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/xrm/2011/Contracts">
<ErrorCode>-2147220970</ErrorCode>
<ErrorDetails xmlns:d2p1="http://schemas.datacontract.org/2004/07/System.Collections.Generic" />
<Message>An unexpected error occurred.</Message>
<Timestamp>2013-11-08T07:56:52.7043Z</Timestamp>
<InnerFault i:nil="true" />
<TraceText i:nil="true" />
</OrganizationServiceFault>


Bild

Im EventViewer auf unserem Server kann man folgende Fehlermeldung erkennen...

Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="MSCRMWebService" />
<EventID Qualifiers="49152">18176</EventID>
<Level>2</Level>
<Task>0</Task>
<Keywords>0x80000000000000</Keywords>
<TimeCreated SystemTime="2013-11-13T18:26:17.000000000Z" />
<EventRecordID>63873188</EventRecordID>
<Channel>Application</Channel>
<Computer>SWNSRV266.herrenknecht.com</Computer>
<Security />
</System>
<EventData>
<Data>64b42bc4-909e-e111-ba47-0050569d0061</Data>
<Data>f5e48c87-5b00-441a-aa79-f3af871c67fa</Data>
<Data>userqueryvisualization</Data>
<Data>30</Data>
<Data>Update</Data>
<Data>Microsoft.Crm.Extensibility.InternalOperationPlugin, Microsoft.Crm.ObjectModel, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35</Data>
<Data>Microsoft.Crm.Extensibility.InternalOperationPlugin</Data>
<Data>Unhandled Exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
at System.RuntimeMethodHandle._InvokeMethodFast(IRuntimeMethodInfo method, Object target, Object[] arguments, SignatureStruct&amp; sig, MethodAttributes methodAttributes, RuntimeType typeOwner)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.Web.Services.Protocols.LogicalMethodInfo.Invoke(Object target, Object[] values)
at Microsoft.Crm.Extensibility.InternalOperationPlugin.Execute(IServiceProvider serviceProvider)
at Microsoft.Crm.Extensibility.V5PluginProxyStep.ExecuteInternal(PipelineExecutionContext context)
at Microsoft.Crm.Extensibility.VersionedPluginProxyStepBase.Execute(PipelineExecutionContext context)
Inner Exception: System.Runtime.Serialization.InvalidDataContractException: Type 'Microsoft.Crm.Visualizations.DataDefinition' cannot be serialized. Consider marking it with the DataContractAttribute attribute, and marking all of its members you want serialized with the DataMemberAttribute attribute. If the type is a collection, consider marking it with the CollectionDataContractAttribute. See the Microsoft .NET Framework documentation for other supported types.
at System.Runtime.Serialization.DataContract.DataContractCriticalHelper.ThrowInvalidDataContractException(String message, Type type)
at System.Runtime.Serialization.DataContract.DataContractCriticalHelper.CreateDataContract(Int32 id, RuntimeTypeHandle typeHandle, Type type)
at System.Runtime.Serialization.DataContract.GetDataContract(Int32 id, RuntimeTypeHandle typeHandle, SerializationMode mode)
at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithXsiType(XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle objectTypeHandle, Type objectType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle, Type declaredType)
at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerializeReference(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
at WriteKeyValuePairOfstringanyTypeToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract )
at System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)
at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
at WriteParameterCollectionToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , CollectionDataContract )
at System.Runtime.Serialization.CollectionDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)
at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithoutXsiType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)
at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerializeReference(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
at WriteAsyncOperationDataToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract )
at System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)
at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithoutXsiType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)
at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerializeReference(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)
at WriteAsyncOperationDataToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract )
at System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)
at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithoutXsiType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)
at System.Runtime.Serialization.DataContractSerializer.InternalWriteObjectContent(XmlWriterDelegator writer, Object graph, DataContractResolver dataContractResolver)
at System.Runtime.Serialization.DataContractSerializer.InternalWriteObject(XmlWriterDelegator writer, Object graph, DataContractResolver dataContractResolver)
at System.Runtime.Serialization.XmlObjectSerializer.WriteObjectHandleExceptions(XmlWriterDelegator writer, Object graph, DataContractResolver dataContractResolver)
at System.Runtime.Serialization.DataContractSerializer.WriteObject(XmlWriter writer, Object graph)
at Microsoft.Crm.Extensibility.AsynchronousStep.SerializeAsyncData(PipelineExecutionContext context)
at Microsoft.Crm.Extensibility.AsynchronousStep.Execute(PipelineExecutionContext context)
at Microsoft.Crm.Extensibility.Pipeline.Execute(PipelineExecutionContext context)
at Microsoft.Crm.Extensibility.MessageProcessor.Execute(PipelineExecutionContext context)
at Microsoft.Crm.Extensibility.InternalMessageDispatcher.Execute(PipelineExecutionContext context)
at Microsoft.Crm.Extensibility.ExtensiblePlatformMessageDispatcher.Execute(PipelineExecutionContext pluginContext)
at Microsoft.Crm.Extensibility.ExtensiblePlatformMessageDispatcher.UpdateWithInvocationSource(BusinessEntity entity, FilterExpression filter, Int32 invocationSource, ExecutionContext context)
at Microsoft.Crm.Extensibility.ExtensiblePlatformMessageDispatcher.Update(BusinessEntity entity, FilterExpression filter, ExecutionContext context)
at Microsoft.Crm.BusinessEntities.BusinessProcessObject.UpdateWithPipelineAndExtensions(IBusinessEntity entity, ExecutionContext context)
</Data>
</EventData>
</Event>



Wähle ich in dem oben genannten Dialog die Option "Keep Both", tritt kein Fehler auf.


Wer kann mir helfen herauszufinden, um was es sich hier für ein Problem handelt?!


Viele Grüße
Karsten Wirl
Zuletzt geändert von KarstenWirl am 11. Dezember 2013 09:15, insgesamt 1-mal geändert.

Re: Fehlermeldung beim Reimport eines Charts

13. November 2013 22:34

Hallo Karsten,

und herzlich willkommen in unserem Forum :-)

Habt ihr eventuell von CRM 4 auf 2011 upgedatet und ein PlugIn, das automatisch upgedatet wurde? Dann deaktiviere einmal das PlugIn und versuche es erneut.
Ansonsten würde ich einmal das Tracing auf dem Server und Client einschalten und diese analysieren.

Re: Fehlermeldung beim Reimport eines Charts

13. November 2013 22:46

Hallo Michael.

Vielen Dank für die Willkommensgrüße.

Wir sind im Unternehmen direkt mit der MSCRM Version 2011 mit RU6 gestartet und befinden uns hier noch im Einführungsprozeß.

Das Tracing ist an dieser Stelle natürlich noch eine gute Idee... das werde ich gleich einmal anstossen.

Mir ist bei weiteren Tests noch etwas aufgefallen... wenn ich direkt auf dem App-Server bin und dort im IE über http://localhost auf das CRM-System zugreife, kann ich dasselbe CHART ohne Fehlermeldung wieder ins System importieren.


Viele Grüße
Karsten Wirl

Re: Fehlermeldung beim Reimport eines Charts

15. November 2013 22:16

Hallo zusammen.

Nach eingehender Analyse unserer Logs und dem Sichten verschiedener Angaben in den Trace-Logs können wir darauf schließen, dass es sich bei der Fehlerursache um ein PLUGIN handelt... nun ist allerdings guter Rat teuer...

Ich werde mich hiermit nun an den MS-Support wenden und mich hier wieder melden, wenn es Neuigkeiten gibt.


Viele Grüße
Karsten Wirl

Re: [GELÖST] Fehlermeldung beim Reimport eines Charts

11. Dezember 2013 09:15

Hallo zusammen.

Der Fehler wurde nach einiger Suche nun gefunden und es war.... EIN PLUGIN, welches nicht richtig verarbeitet worden ist.



Viele Grüße
Karsten Wirl