Показать сообщение отдельно
Старый 13.07.2010, 16:26   #1  
Dicora is offline
Dicora
Участник
 
109 / 15 (1) ++
Регистрация: 12.07.2010
Post Неизвестная ошибка при преобразовании интереса в сделку
При работе с CRM стала возникать такая ошибка:

ПРичем возникает она только в этой последовательности:

Заводим интерес, сохраняем, преобразовываем интерес в сделку (указываем новую организацию либо создаем через преобразование), ставим галку "Открыть новые записи".. жмем ОК.

Получаем карточку новой созданной сделки (преобразованной из интереса), дозаполняем обязательные поля - жмем "Сохранить и закрыть", видим на экране ошику:



+ Важно!
При повторном нажатии на "Сохрать + Закрыть" ошибка больше не возникает.

В случае если заводить сделку снуля, через сущность Возможные сделки (не через преобразование), то данной ошибки при "сохранении и закрытии" не возникает.

В событии формы "onSave" Обработчик события отключен (галка снята).

Из-за чего и какой ключ требуется не понятно.

Из Trace Microsoft CRM доставал такую запись лога:

PHP код:
[2010-07-13 16:20:11.1Processw3wp |Organization:2768dbac-48b7-4ee6-a3cc-de1d36049146 |Thread:    |CategoryException |User7b189def-ad26-df11-9050-003048be732d |LevelError CrmException..ctor
    at CrmException
..ctor(String messageInt32 errorCode)
    
at CrmSecurityException..ctor(String messageInt32 errorCode)
    
at SecurityLibrary.CheckPrivilege(Guid userGuid privilegeExecutionContext context)
    
at DefaultSecuritySqlGenerator.CheckPrivilege(Guid userGuid organizationIdEntityMetadata entityMetadataExecutionContext context)
    
at DefaultSecuritySqlGenerator.CreateSecuritySqlForRetrieveMultipleHelper(Guid userEntityMetadata entityMetadataFilterExpression criteriaNodeForSecurityFilterExecutionContext contextBoolean noLock)
    
at DefaultSecuritySqlGenerator.CreateSecuritySqlForRetrieveMultiple(Guid userEntityMetadata entityMetadataFilterExpression criteriaNodeForSecurityFilterExecutionContext contextBoolean noLock)
    
at SecurityExtension.CreateSecuritySql(Guid userEntityMetadata entityMetadataFilterExpression criteriaNodeForSecurityFilterExecutionContext contextBoolean noLock)
    
at SecurityExtension.AddSecuritySql(Guid userEntityExpression entityExpressionExecutionContext context)
    
at SecurityExtension.PreRetrieveMultipleHandler(ExtensionEventArgs e)
    
at SecurityExtension.PreRetrieveMultipleHandler(Object senderExtensionEventArgs e)
    
at PreRetrieveMultipleEventHandler.Invoke(Object senderExtensionEventArgs e)
    
at BusinessProcessObject.RetrieveMultiple(EntityExpression entityExpressionExecutionContext context)
    
at RuntimeMethodHandle._InvokeMethodFast(Object targetObject[] argumentsSignatureStructsigMethodAttributes methodAttributesRuntimeTypeHandle typeOwner)
    
at RuntimeMethodHandle.InvokeMethodFast(Object targetObject[] argumentsSignature sigMethodAttributes methodAttributesRuntimeTypeHandle typeOwner)
    
at RuntimeMethodInfo.Invoke(Object objBindingFlags invokeAttrBinder binderObject[] parametersCultureInfo cultureBoolean skipVisibilityChecks)
    
at RuntimeMethodInfo.Invoke(Object objBindingFlags invokeAttrBinder binderObject[] parametersCultureInfo culture)
    
at LogicalMethodInfo.Invoke(Object targetObject[] values)
    
at InternalOperationPlugin.Execute(IPluginExecutionContext context)
    
at PluginStep.Execute(PipelineExecutionContext context)
    
at Pipeline.Execute(PipelineExecutionContext context)
    
at MessageProcessor.Execute(PipelineExecutionContext context)
    
at InternalMessageDispatcher.Execute(PipelineExecutionContext context)
    
at ExternalMessageDispatcher.Execute(String messageNameInt32 primaryObjectTypeCodeInt32 secondaryObjectTypeCodePropertyBag fieldsCorrelationToken correlationTokenCallerOriginToken originTokenUserAuth userAuthGuid callerId)
    
at RequestBase.Process(Int32 primaryObjectTypeCodeInt32 secondaryObjectTypeCodeCorrelationToken correlationTokenCallerOriginToken originTokenUserAuth userAuthGuid callerId)
    
at RequestBase.Process(CorrelationToken correlationTokenCallerOriginToken originTokenUserAuth userAuthGuid callerId)
    
at CrmServiceInternal.Execute(RequestBase requestCorrelationToken correlationTokenCallerOriginToken originTokenUserAuth userAuthGuid callerId)
    
at CrmService.Execute(Request request)
    
at RuntimeMethodHandle._InvokeMethodFast(Object targetObject[] argumentsSignatureStructsigMethodAttributes methodAttributesRuntimeTypeHandle typeOwner)
    
at RuntimeMethodHandle.InvokeMethodFast(Object targetObject[] argumentsSignature sigMethodAttributes methodAttributesRuntimeTypeHandle typeOwner)
    
at RuntimeMethodInfo.Invoke(Object objBindingFlags invokeAttrBinder binderObject[] parametersCultureInfo cultureBoolean skipVisibilityChecks)
    
at RuntimeMethodInfo.Invoke(Object objBindingFlags invokeAttrBinder binderObject[] parametersCultureInfo culture)
    
at LogicalMethodInfo.Invoke(Object targetObject[] values)
    
at WebServiceHandler.Invoke()
    
at WebServiceHandler.CoreProcessRequest()
    
at SyncSessionlessHandler.ProcessRequest(HttpContext context)
    
at CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
    
at HttpApplication.ExecuteStep(IExecutionStep stepBooleancompletedSynchronously)
    
at ApplicationStepManager.ResumeSteps(Exception error)
    
at HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest(HttpContext contextAsyncCallback cbObject extraData)
    
at HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr)
    
at HttpRuntime.ProcessRequestNoDemand(HttpWorkerRequest wr)
    
at ISAPIRuntime.ProcessRequest(IntPtr ecbInt32 iWRType)
>
Crm ExceptionMessageSecLib::CrmCheckPrivilege failedReturned hr = -2147220960 on UserId7b189def-ad26-df11-9050-003048be732d and PrivilegeIdf3b782a2-e6d5-4b86-9b7d-33f627fe5c5dErrorCode: -2147220960
[2010-07-13 16:20:11.1Processw3wp |Organization:2768dbac-48b7-4ee6-a3cc-de1d36049146 |Thread:    |CategoryPlatform |User7b189def-ad26-df11-9050-003048be732d |LevelError MessageProcessor.Execute
>MessageProcessor fail to process message 'RetrieveMultiple' for 'userquery'.
[
2010-07-13 16:20:11.1Processw3wp |Organization:2768dbac-48b7-4ee6-a3cc-de1d36049146 |Thread:    |CategoryPlatform.Sdk |User7b189def-ad26-df11-9050-003048be732d |LevelError CompositeSoapExtensionExceptionHandler.Handle
>CrmSoapExtension detected CrmException:
System.Web.Services.Protocols.SoapExceptionServer was unable to process request. ---> System.Reflection.TargetInvocationExceptionException has been thrown by the target of an invocation. ---> Microsoft.Crm.BusinessEntities.CrmSecurityExceptionSecLib::CrmCheckPrivilege failedReturned hr = -2147220960 on UserId7b189def-ad26-df11-9050-003048be732d and PrivilegeIdf3b782a2-e6d5-4b86-9b7d-33f627fe5c5d
   at Microsoft
.Crm.BusinessEntities.SecurityLibrary.CheckPrivilege(Guid userGuid privilegeExecutionContext context)
   
at Microsoft.Crm.BusinessEntities.SecurityExtension.DefaultSecuritySqlGenerator.CheckPrivilege(Guid userGuid organizationIdEntityMetadata entityMetadataExecutionContext context)
   
at Microsoft.Crm.BusinessEntities.SecurityExtension.DefaultSecuritySqlGenerator.CreateSecuritySqlForRetrieveMultipleHelper(Guid userEntityMetadata entityMetadataFilterExpression criteriaNodeForSecurityFilterExecutionContext contextBoolean noLock)
   
at Microsoft.Crm.BusinessEntities.SecurityExtension.DefaultSecuritySqlGenerator.CreateSecuritySqlForRetrieveMultiple(Guid userEntityMetadata entityMetadataFilterExpression criteriaNodeForSecurityFilterExecutionContext contextBoolean noLock)
   
at Microsoft.Crm.BusinessEntities.SecurityExtension.CreateSecuritySql(Guid userEntityMetadata entityMetadataFilterExpression criteriaNodeForSecurityFilterExecutionContext contextBoolean noLock)
   
at Microsoft.Crm.BusinessEntities.SecurityExtension.AddSecuritySql(Guid userEntityExpression entityExpressionExecutionContext context)
   
at Microsoft.Crm.BusinessEntities.SecurityExtension.PreRetrieveMultipleHandler(ExtensionEventArgs e)
   
at Microsoft.Crm.BusinessEntities.SecurityExtension.PreRetrieveMultipleHandler(Object senderExtensionEventArgs e)
   
at Microsoft.Crm.BusinessEntities.BusinessProcessObject.PreRetrieveMultipleEventHandler.Invoke(Object senderExtensionEventArgs e)
   
at Microsoft.Crm.BusinessEntities.BusinessProcessObject.RetrieveMultiple(EntityExpression entityExpressionExecutionContext context)
   --- 
End of inner exception stack trace ---
   
at System.RuntimeMethodHandle._InvokeMethodFast(Object targetObject[] argumentsSignatureStructsigMethodAttributes methodAttributesRuntimeTypeHandle typeOwner)
   
at System.RuntimeMethodHandle.InvokeMethodFast(Object targetObject[] argumentsSignature sigMethodAttributes methodAttributesRuntimeTypeHandle typeOwner)
   
at System.Reflection.RuntimeMethodInfo.Invoke(Object objBindingFlags invokeAttrBinder binderObject[] parametersCultureInfo cultureBoolean skipVisibilityChecks)
   
at System.Reflection.RuntimeMethodInfo.Invoke(Object objBindingFlags invokeAttrBinder binderObject[] parametersCultureInfo culture)
   
at System.Web.Services.Protocols.LogicalMethodInfo.Invoke(Object targetObject[] values)
   
at Microsoft.Crm.Extensibility.InternalOperationPlugin.Execute(IPluginExecutionContext context)
   
at Microsoft.Crm.Extensibility.PluginStep.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.ExternalMessageDispatcher.Execute(String messageNameInt32 primaryObjectTypeCodeInt32 secondaryObjectTypeCodePropertyBag fieldsCorrelationToken correlationTokenCallerOriginToken originTokenUserAuth userAuthGuid callerId)
   
at Microsoft.Crm.Sdk.RequestBase.Process(Int32 primaryObjectTypeCodeInt32 secondaryObjectTypeCodeCorrelationToken correlationTokenCallerOriginToken originTokenUserAuth userAuthGuid callerId)
   
at Microsoft.Crm.Sdk.RequestBase.Process(CorrelationToken correlationTokenCallerOriginToken originTokenUserAuth userAuthGuid callerId)
   
at Microsoft.Crm.Sdk.CrmServiceInternal.Execute(RequestBase requestCorrelationToken correlationTokenCallerOriginToken originTokenUserAuth userAuthGuid callerId)
   
at Microsoft.Crm.Sdk.Crm2007.CrmService.Execute(Request request)
   --- 
End of inner exception stack trace ---
[
2010-07-13 16:21:10.4Processw3wp |Organization:2768dbac-48b7-4ee6-a3cc-de1d36049146 |Thread:    |CategoryPlatform.Sdk |Userf7345b57-872e-4dda-ad61-c54343120c7a |LevelError PluginStep.Execute
>Web Service Plug-in failed in SdkMessageProcessingStepId: {2DF52F59-4B75-DF11-BE54-003048BE732D}; EntityNameopportunityStage50MessageNameUpdateAssemblyNameOpportUpdateSD.OpportUpdateStartDateClassOpportUpdateStartDateVersion=1.0.0.0Culture=neutralPublicKeyToken=87736e8901e5ff55ClassNameOpportUpdateSD.OpportUpdateStartDateClassExceptionUnhandled ExceptionSystem.Collections.Generic.KeyNotFoundExceptionДанный ключ отсутствует в словаре.
   
в System.ThrowHelper.ThrowKeyNotFoundException()
   
в System.Collections.Generic.Dictionary`2.get_Item(TKey key)
   в Microsoft.Crm.Sdk.PropertyCollection.get_Item(String propertyName)
   в OpportUpdateSD.OpportUpdateStartDateClass.Execute(IPluginExecutionContext context)
   в Microsoft.Crm.Extensibility.PluginStep.Execute(PipelineExecutionContext context)
.
[2010-07-13 16:21:10.4] Process: w3wp |Organization:2768dbac-48b7-4ee6-a3cc-de1d36049146 |Thread:    1 |Category: Application |User: 00000000-0000-0000-0000-000000000000 |Level: Error | ErrorInformation.LogError
>MSCRM Error Report:
--------------------------------------------------------------------------------------------------------
Error: Данный ключ отсутствует в словаре.

Error Number: 0x80040265

Error Message: Данный ключ отсутствует в словаре.

Error Details: Данный ключ отсутствует в словаре.

Source File: Not available

Line Number: Not available

Request URL: https://crmsrv02/DicoraCompany/sfa/opps/edit.aspx?id={BC1F05E9-788E-DF11-B1F4-003048BE732D}

Stack Trace Info: [KeyNotFoundException: Данный ключ отсутствует в словаре.]
   в System.ThrowHelper.ThrowKeyNotFoundException()
   в System.Collections.Generic.Dictionary
`2.get_Item(TKey key)
   
в Microsoft.Crm.Sdk.PropertyCollection.get_Item(String propertyName)
   
в OpportUpdateSD.OpportUpdateStartDateClass.Execute(IPluginExecutionContext context)
   
в Microsoft.Crm.Extensibility.PluginStep.Execute(PipelineExecutionContext context)

[
InvalidPluginExecutionExceptionДанный ключ отсутствует в словаре.]
   
в Microsoft.Crm.Extensibility.PluginStep.Execute(PipelineExecutionContext context)
   
в Microsoft.Crm.Extensibility.FilteredStep.Execute(PipelineExecutionContext context)
   
в Microsoft.Crm.Extensibility.Pipeline.Execute(PipelineExecutionContext context)
   
в Microsoft.Crm.Extensibility.MessageProcessor.Execute(PipelineExecutionContext context)
   
в Microsoft.Crm.Extensibility.InternalMessageDispatcher.Execute(PipelineExecutionContext context)
   
в Microsoft.Crm.Extensibility.ExternalMessageDispatcher.Execute(String messageNameInt32 primaryObjectTypeCodeInt32 secondaryObjectTypeCodePropertyBag fieldsCorrelationToken correlationTokenCallerOriginToken originTokenUserAuth userAuthGuid callerId)
   
в Microsoft.Crm.Sdk.RequestBase.Process(Int32 primaryObjectTypeCodeInt32 secondaryObjectTypeCodeCorrelationToken correlationTokenCallerOriginToken originTokenUserAuth userAuthGuid callerId)
   
в Microsoft.Crm.Sdk.RequestBase.Process(CorrelationToken correlationTokenCallerOriginToken originTokenUserAuth userAuthGuid callerId)
   
в Microsoft.Crm.Sdk.CrmServiceInternal.Execute(RequestBase requestCorrelationToken correlationTokenCallerOriginToken originTokenUserAuth userAuthGuid callerId)
   
в Microsoft.Crm.Sdk.InProcessCrmService.Execute(Object request)
   
в Microsoft.Crm.Application.Platform.ServiceCommands.PlatformCommand.ExecuteInternal()
   
в Microsoft.Crm.Application.Platform.ServiceCommands.UpdateCommand.Execute()
   
в Microsoft.Crm.Application.Platform.EntityProxy.Update(Boolean performDuplicateCheck)
   
в Microsoft.Crm.Application.Forms.AppForm.SaveEntity(EntityProxy entityFormEventId eventTypeString redirectPathBoolean performDuplicateCheck
Если кто-нибудь сталкивался с такой ошибкой, очень прошу подскажите её решение.

Заранее спасибо!