locked
Error when reassigning records from User entity RRS feed

  • Question

  • Hello,

     

    When Reassign Records... is selected for a particular user to another user, a very general error dialog pops up saying: "An error has occurred... Check the Microsoft Dynamics CRM Community..."

     

    There is no other information about the problem and no corresponding error in the Event Log.

     

    Does anyone know what would cause this message when reassigning?

     

     

    Thursday, September 4, 2008 1:53 PM

Answers

All replies

  • Check to ensure that the user has Assign rights to the record and all other rights needed such as the right to change a record they do not Own to include Append and Append to related record types.

     

    Best Regards,

     

    Thursday, September 4, 2008 2:24 PM
  • Add the OLEDBTimeout and the ExtendedTimeout registry subkeys to increase the time-out values

    Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall your operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.

    1. Click Start, click Run, type regedit, and then click OK.
    2. Locate the following registry subkey:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM
    3. Right-click MSCRM, point to New, and then click DWORD Value to create a new DWORD value.
    4. Rename the DWORD value to the following value:
    OLEDBTimeout
    5. Right-click the DWORD value, and then click Modify.
    6. In the Edit DWORD Value dialog box, type 86400 in the Value data box, click Decimal in the Base option, and then click OK.

    Note According to the requirement of the computer that is running SQL server and the number of customization files, the value can be larger than 86400. The value of 86400 is equivalent to 24 hours.
    7. Right-click MSCRM, point to New, and then click DWORD Value to create a new DWORD value.
    8. Rename the DWORD value to the following value:
    ExtendedTimeout
    9. Right-click the DWORD value, and then click Modify.
    10. In the Edit DWORD Value dialog box, type 1000000 in the Value data box, and then click OK.

    Notes
    In the Value data box, you can type a value that is larger than 1,000,000. However, do not type a value that is larger than 2,147,483,647. This is hexadecimal 0x7FFFFFFF.
    If this key already exists, notice the current value. After you have completed the import or the upgrade for Microsoft Dynamics CRM, set the value of this key back to the original value or delete the key if it did not previously exist. The default OLEDB timeout value is 30 seconds.

    Thursday, September 4, 2008 2:41 PM
  • Dear all,

    I have the same issue...

    I am a system administrator

    there are 5 person leave our company but only 2 person whose records can be reassigned successfully. The next three person raise the same error message with this thread.

    Any body have another solution instead of modifying the registry since it have high risk?


    Thank you


    Monday, September 22, 2008 4:10 AM
  •  

    Download this tool and turn Dev errors only.  Recreate the error and let's see what the error messsage states.  There can be several reasons for the issue like user rights, disabled users, etc.

     

    http://blogs.msdn.com/benlec/archive/2008/03/04/crmdiagtool4-for-microsoft-crm-4-0-has-been-released.aspx

     

    Post the result.

     

    Best Regards,

    Monday, September 22, 2008 1:08 PM
  • Ok, here is the error message i can catch  when i try to assign a record (lead to another user).
    Any Idea Please...?

    Thank you


    Code Snippet

    Error Description:
    An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

    Error Details:
    Exception of type 'System.Web.HttpUnhandledException' was thrown.

    Full Stack:
    [InvalidCastException: Specified cast is not valid.]
    at Microsoft.Crm.BusinessEntities.SecurityAttributes..ctor(SecurityTraits traits, Guid objectId, ArrayList attributes, ExecutionContext context)
    at Microsoft.Crm.BusinessEntities.SecurityExtension.CreateSecurityAttributesForUpdateDelete(Object sender, SecurityTraits traits, ExtensionEventArgs e)
    at Microsoft.Crm.BusinessEntities.SecurityExtension.PreUpdateHandler(ExtensionEventArgs e, Object sender)
    at Microsoft.Crm.BusinessEntities.SecurityExtension.PreUpdateHandler(Object sender, ExtensionEventArgs e)
    at Microsoft.Crm.BusinessEntities.BusinessProcessObject.PreUpdateEventHandler.Invoke(Object sender, ExtensionEventArgs e)
    at Microsoft.Crm.BusinessEntities.BusinessProcessObject.Update(IBusinessEntity entity, ExecutionContext context)
    at Microsoft.Crm.ObjectModel.QueueItemService.Move(BusinessEntityMoniker objectMoniker, Guid sourceQueueId, Guid destinationQueueId, ExecutionContext context)
    at Microsoft.Crm.ObjectModel.QueueItemService.Route(BusinessEntityMoniker objectMoniker, Guid sourceQueueId, RouteType routeType, Guid endPointId, ExecutionContext context)
    at Microsoft.Crm.ObjectModel.QueueItemService.RouteToUser(BusinessEntityMoniker objectMoniker, Guid userIdOfCurrentObjectOwner, Guid primaryUserIdOfQueueToRouteTo, ExecutionContext context)
    at Microsoft.Crm.ObjectModel.GenericActivityServiceBase.InternalAssign(BusinessEntity entity, SecurityPrincipal assignee, ExecutionContext context)
    at Microsoft.Crm.BusinessEntities.CascadeEngine.AssignDB(BusinessEntityMoniker moniker, SecurityPrincipal assignee, ExecutionContext context)
    at Microsoft.Crm.BusinessEntities.BusinessProcessObject.Assign(BusinessEntityMoniker moniker, SecurityPrincipal assignee, ExecutionContext context)

    [TargetInvocationException: Exception has been thrown by the target of an invocation.]
    at System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
    at System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle 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(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 messageName, Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, PropertyBag fields, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
    at Microsoft.Crm.Sdk.RequestBase.Process(Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
    at Microsoft.Crm.Sdk.RequestBase.Process(CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
    at Microsoft.Crm.Sdk.CrmServiceInternal.Execute(RequestBase request, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
    at Microsoft.Crm.Sdk.InProcessCrmService.Execute(Object request)
    at Microsoft.Crm.Application.Platform.ServiceCommands.PlatformCommand.ExecuteInternal()
    at Microsoft.Crm.Application.Platform.DataSource.Assign(Guid entityId, String entityType, SecurityPrincipal principal)
    at Microsoft.Crm.Application.Forms.AppForm.HandleFormEventAssign(Boolean gridRefreshCallbackAdded)
    at Microsoft.Crm.Application.Forms.AppForm.RaiseDataEvent(FormEventId eventId)
    at Microsoft.Crm.Application.Forms.EndUserForm.Initialize(Entity entity)
    at Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity, String formType)
    at Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity)
    at Microsoft.Crm.Web.SFA.LeadDetailPage.ConfigureForm()
    at Microsoft.Crm.Application.Controls.AppUIPage.OnPreRender(EventArgs e)
    at System.Web.UI.Control.PreRenderRecursiveInternal()
    at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

    [HttpUnhandledException: Exception of type 'System.Web.HttpUnhandledException' was thrown.]
    at System.Web.UI.Page.HandleError(Exception e)
    at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
    at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
    at System.Web.UI.Page.ProcessRequest()
    at System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context)
    at System.Web.UI.Page.ProcessRequest(HttpContext context)
    at ASP.mitrais_sfa_leads_edit_aspx.ProcessRequest(HttpContext context)
    at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
    at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)


    Other Message:
    Error Number:
    Source File:
    Not available

    Line Number:
    Not available


    Date: 09-23-2008

    Time: 09:01:14

    Server: ubud
    Request URL:
    http://ubud:5555/Mitrais/sfa/leads/edit.aspx?id={F5D933D6-E645-44BD-81A1-0E2EFC32CB65}
    Tuesday, September 23, 2008 1:03 AM
  • Earlier you stated that 5 people are no longer with the company and of those 5 you can not re-assign the records for 3.

     

    A few questions:

    1. Were all 5 in the same business unit
    2. Are all 5 user licenses still enabled
    3. Are you trying to re-assign records across business units
    4. What is the same for the 2 people whose records you were able to re-assign
    5. What is different for the 3 people whose records you are not able to re-assign in comparison to the 2 people who you were successfully able to re-assign.
    6. Ensure all five users have the same security roles
    7. Ensure the security role was not copied from another security role or not 'custom' created
    8. If you are trying to do bulk re-assigns, try selecting only one record and re-assign it to Sys Admin.  See if that works.
    9. If the above works, try re-assigning it from Sys Admin to the desired user.  Does that work?
    10. Temporarily give one of the 3 users Sys Admin rights, try re-assigning one record to the user.  Does that work?

    Let's see what your results are from the above.

     

    Best Regards,

     


     

     

    Tuesday, September 23, 2008 1:22 PM
  • Dear Donna,

    Here are the answer of your question:
    1. They are all in the same businnes unit
    2. Yes, all user licencses still enabled
    3. Are you trying to re-assign records across business units. No.
    4. What is the same for the 2 people whose records you were able to re-assign. They are same. Except the role. They have different role
    5. What is different for the 3 people whose records you are not able to re-assign in comparison to the 2 people who you were successfully able to re-assign. Somehow I dont find any special differencess between them. All off them have different role.
    6. Ensure all five users have the same security roles. No, They are all have different role.
    7. Ensure the security role was not copied from another security role or not 'custom' created. Sure.
    8. If you are trying to do bulk re-assigns, try selecting only one record and re-assign it to Sys Admin.  See if that works. I've tried to assigned to me,(I'm system administrator). But It's not work
    9. If the above works, try re-assigning it from Sys Admin to the desired user.  Does that work? -
    10. Temporarily give one of the 3 users Sys Admin rights, try re-assigning one record to the user.  Does that work? No, that don't work too.
    Donna,
    I've tried Joel's suggestion on
    http://forums.microsoft.com/Dynamics/ShowPost.aspx?PostID=3903581&SiteID=27
    by setting up the N-1 Relationship. Now, I can reassign record like account, lead, contact. Then I try to do bulk reassign again (user>more action>reassign records).
    But the error
    "An error has occurred... Check the Microsoft Dynamics CRM Community..."
    is still raised. So I try to find any entity record owned by this user using advance find.

    Then I noticed there are 4 records left in Activity entity. But each time I assign them manually to other user, the long error message (like I capture above) appears.
    Do you know how to reassign  them?


    Anyway, What is actually happen to records (Lead, Contact, account, Activity, ...etc)  if I disable a user who own them without reassign them to other user first?

    Thank you Donna.
    Thursday, September 25, 2008 6:07 AM
  •  

    You should still be able to re-assign the records.  If not, then simply enable the user and re-assign the records.

     

    If the e-mails are giving you errrors, an easy workaround might be just to forward the e-mail to the person and it will have some association with that person.  Not sure why you want to re-assign e-mail activities as I generally suggest they remain owned by the person who created them.

     

     

    Best Regards,

    Donna

    Thursday, September 25, 2008 11:34 AM