locked
upgrading CRM 4.0 from CRM 3.0 RRS feed

  • Question

  • hello,

    during upgrade process occurs an error: (about 75% complete)

    ---------------------
    Action Microsoft.Crm.Setup.Server.PublishDefaultDataAction failed.
    MaxLength is out of range for 'description' attribute. MaxLength:1073741823, MemoMinLength: 1, MemoMaxLength: 100000
    Specified argument was out of the range of valid values.
    Parameter name: MaxLength is out of range for 'description' attribute. MaxLength: 1073741823, MemoMinLength: 1,
    MemoMaxLength: 100000
    --------------------

    Any suggestion why? Smile



    Thursday, March 27, 2008 11:35 AM

Answers

  • Hi,

     

    I incountered the same problem. The solution was the following :

    in the SQL run the query against the CRM database. (I did not cancel the setup)  

     

    Select * from Attribute where PhysicalName = 'Description' and maxlength = 1073741823

     

    The query returned two results :

    one with CustomizationLevel 1 and one with 0

     

    On my production server there is only one with 0 so i deleted the row with 1:

     

    DELETE FROM MetadataSchema.Attribute
    WHERE     (PhysicalName = 'Description') AND (MaxLength = 1073741823) AND (CustomizationLevel = 1)

     

    And clicked retry on the setup... And it worked.

     

    (be advised of a backup before changing or deleting in CRM database)

     

    Best regards

    Tomaz

    Wednesday, April 2, 2008 4:20 PM

All replies

  •  

    It sounds like an attribute on an entity has been customized and somehow the character length has been set to an unsupported length.

     

    Could someone have tinkered with the crm database directly?

     

    Friday, March 28, 2008 8:22 PM
    Moderator
  • Hello,

     

    I have the same problem and I did not modify anything in the database directly.

     

    I reinstall CRM 3.0 and I want to upgrade only the database. Do you have a sample of an XML config file to do that.

     

    Thank you. 

     

    Monday, March 31, 2008 2:24 PM
  • Hi

    Have you found any solution for this issue? I've just tried to upgrade from CRM 3.0 to 4.0 and got the same problem. I don't know how to solve this issue, mayby any suggestion?

     

    Lydia

    Wednesday, April 2, 2008 11:34 AM
  • I have exactly same problem, any more ideas ?? please ...

    Wednesday, April 2, 2008 11:38 AM
  • Hi,

     

    I incountered the same problem. The solution was the following :

    in the SQL run the query against the CRM database. (I did not cancel the setup)  

     

    Select * from Attribute where PhysicalName = 'Description' and maxlength = 1073741823

     

    The query returned two results :

    one with CustomizationLevel 1 and one with 0

     

    On my production server there is only one with 0 so i deleted the row with 1:

     

    DELETE FROM MetadataSchema.Attribute
    WHERE     (PhysicalName = 'Description') AND (MaxLength = 1073741823) AND (CustomizationLevel = 1)

     

    And clicked retry on the setup... And it worked.

     

    (be advised of a backup before changing or deleting in CRM database)

     

    Best regards

    Tomaz

    Wednesday, April 2, 2008 4:20 PM
  • It did help, thank u Smile

    Thursday, April 3, 2008 7:31 AM
  • ok, works fine- but setup cannot complete: occurs following:

    System.Exception: Configuring SQL Server Reporting Services failed. ---> Microsoft.Crm.CrmReportingException: An internal error occurred on the report server. See the error log for more details. ---> System.Web.Services.Protocols.SoapException: System.Web.Services.Protocols.SoapException: An internal error occurred on the report server. See the error log for more details. ---> Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details.
       at Microsoft.ReportingServices.Authorization.Native.GetUserNameFromSid(Byte[] sid)
       at Microsoft.ReportingServices.Authentication.WindowsAuthentication.SidToPrincipalName(Byte[] sid)
       at Microsoft.ReportingServices.Library.Security.PrincipalNameFromSid(Byte[] sid)
       at Microsoft.ReportingServices.Library.Security.UpdateUserNameBySidInXmlPolicy(String& xmlPolicy, Boolean removeBadUserNamesOnly)
       at Microsoft.ReportingServices.Library.Security.GetPolicies(String itemName, Boolean& inheritParent, String& xmlPolicy)
       at Microsoft.ReportingServices.Library.GetPoliciesAction.PerformActionNow()
       at Microsoft.ReportingServices.Library.RSSoapAction`1.Execute()
       at Microsoft.ReportingServices.WebServer.ReportingService2005Impl.GetPolicies(String Item, Policy[]& Policies, Boolean& InheritParent)
       --- End of inner exception stack trace ---
       at Microsoft.ReportingServices.WebServer.ReportingService2005Impl.GetPolicies(String Item, Policy[]& Policies, Boolean& InheritParent)
       at Microsoft.ReportingServices.WebServer.ReportingService2005.GetPolicies(String Item, Policy[]& Policies, Boolean& InheritParent)
       at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
       at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
       at Microsoft.Crm.ReportingServices2005.ReportingService2005.GetPolicies(String Item, Boolean& InheritParent)
       at Microsoft.Crm.Reporting.ReportServer.AddRole(String userGroup, String roleName, String roleDescription, String folderPath)
       --- End of inner exception stack trace ---
       at Microsoft.Crm.Reporting.ReportServer.AddRole(String userGroup, String roleName, String roleDescription, String folderPath)
       at Microsoft.Crm.Reporting.ReportServer.configureServer(Boolean validateOnly)
       at Microsoft.Crm.Setup.Server.RSConfigAction.Do(IDictionary parameters)
       at Microsoft.Crm.Setup.Common.Action.ExecuteAction(Action action, IDictionary parameters, Boolean undo)

    ????
    what's next?

    anyone has the same?
    Thursday, April 3, 2008 12:12 PM
  • Hi,

    I did as you adviced - I deleted row with 1 but after completing upgrade process there isn't any customized entity. There is completly fresh installation - none of customization.

    Can you tell me what means CustomizationLevel 1 and Customiedlevel 0?

     

    Reagrds

    Lydia

    Thursday, April 3, 2008 1:53 PM
  • i was happy not for long .... creating new or trying to edit already created activities returns error Sad

     

    Stack Trace Info: [FormatException: Metadata provided to duration control must have a format property of duration, found ]

     

    Thursday, April 3, 2008 2:47 PM
  • I incountered the same problem..

    The problem is in the atribute actualdurationin minutes .. as described in another thred in this forum

    http://forums.microsoft.com/Dynamics/ShowPost.aspx?PostID=2608202&SiteID=27

    You must export the configuration for the Email or a different activity which is causing trouble end change the

    <Format/> to <Format>duration</Format>

    MinDuration to 0

    Re inport the config file and thi solved my problem with the activities

     

    Regards

    Tomaz  

    Thursday, April 3, 2008 4:30 PM
  • Yes, it did help me also, now everything works, thank u Tomaz Smile

    Friday, April 4, 2008 8:30 AM
  •  

    Hi All,

    After upgrade I can't open any activity:email, task, appointment, fax, letter. Neither from previewing this in customization form nor from activity tab (I can't add new one or edit existing). I'm getting an error than I should contact to Administrator

     

    Any ideas?

    Regards

    Lydia

    Wednesday, April 9, 2008 8:58 AM
  •  

    u've got answer 2 posts back its the same problem.
    Wednesday, April 9, 2008 9:02 AM
  •  

    Hi,

     

    If you would like to se more detailed error you must change a row in Web.config <devErrors> from Off to On.

     

    In the activities there are some problems with Duration. Export all customizations for the problematic activities and change the row <Format/> to <Format>duration<Format/>

     

    I hope It helps.

     

    Regards

    Tomaz

    Wednesday, April 9, 2008 9:29 AM
  •  

    Hi,

    Thxs for your suggestions.I did as you mentioned and nothing helpd:  Set <deverr = on>, checked what error appered (refering to duration of course) then exported .xml with problematic activities, chcanged min value  to 0 (by actualdurationminutes, scheduledduraionminutes) and reimported.

     

    Regards

    Lydia

    Wednesday, April 9, 2008 10:46 AM
  • did you changed the Format part ?

    The part ActualDurationMinutes should look like:

    <attribute PhysicalName="ActualDurationMinutes">

      <Type>int</Type>
      <ValidForCreateApi>1</ValidForCreateApi>
      <ValidForUpdateApi>1</ValidForUpdateApi>
      <ValidForReadApi>1</ValidForReadApi>
      <IsLogical>1</IsLogical>
      <AttributeTypeId>00000000-0000-0000-00aa-110000000019</AttributeTypeId>
      <DisplayMask>ValidForAdvancedFind|ValidForForm|ValidForGrid</DisplayMask>
    - <Descriptions>
      <Description description="Actual duration of the appointment in minutes." languagecode="1033" />
      </Descriptions>
      <ImeMode>disabled</ImeMode>
      <RequiredLevel>none</RequiredLevel>
      <Format>duration</Format>
      <MinValue>0</MinValue>
      <MaxValue>2147483647</MaxValue>
      <Accuracy>0</Accuracy>
    - <displaynames>
      <displayname description="Actual Duration" languagecode="1033" />
      </displaynames>
      <RelationshipName>activity_pointer_appointment</RelationshipName>
      <RemoteAttributeName>ActualDurationMinutes</RemoteAttributeName>
      </attribute>

     

    regards

    Tomaz

     

    Wednesday, April 9, 2008 10:53 AM
  • Hi Tomaz,

    Thanks a lot for help and a screen of the .xml file. My .xml dosen't contain the row  <FORMAT>Duration</Format>!!!.Instead of this I had only <Format \> so even I corrected the minvalue this didn't not work

     

    Regrds

    Lydia

    Wednesday, April 9, 2008 12:07 PM
  • Hi,

     

    A stupid question ? Did you published this customization ?

    What is the exact error  ? Can you Post it ?

    Regards

    Tomaž  

     

    Wednesday, April 9, 2008 12:17 PM
  • Hi,

    Yes, of course, I published customisaion. I got the following error for the email activity

     

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

    Full Stack:
    [FormatException: Metadata provided to duration control must have a format property of duration, found ]
       at Microsoft.Crm.Application.Components.Sdk.FormControls.Web.DurationControl.set_Metadata(AttributeMetadata value)
       at Microsoft.Crm.Application.ControlActivator.CreateControl(ControlDescriptor controlDescriptor, String clientId)
       at Microsoft.Crm.Application.Forms.CrudForm.BuildFormModel(FormDescriptor formDescriptor)
       at Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity, String formType)
       at Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity)
       at Microsoft.Crm.Web.Tools.FormEditorPreview.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.abs_tools_formeditor_preview_aspx.ProcessRequest(HttpContext context)
       at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
       at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

     

     

    I exported, opened the xml file and saw the following part (I corrected minvalue to 0):

     <attribute PhysicalName="ActualDurationMinutes">
                  <Type>int</Type>
                  <ValidForCreateApi>1</ValidForCreateApi>
                  <ValidForUpdateApi>1</ValidForUpdateApi>
                  <ValidForReadApi>1</ValidForReadApi>
                  <IsLogical>1</IsLogical>
                  <AttributeTypeId>00000000-0000-0000-00aa-110000000019</AttributeTypeId>
                  <DisplayMask>ValidForAdvancedFind|ValidForForm|ValidForGrid</DisplayMask>
                  <Descriptions>
                    <Description description="Duration of the e-mail activity specified in minutes." languagecode="1045" />
                  </Descriptions>
                  <ImeMode>disabled</ImeMode>
                  <RequiredLevel>none</RequiredLevel>
                  <Format />
                  <MinValue>0</MinValue>
                  <MaxValue>2147483647</MaxValue>
                  <Accuracy>0</Accuracy>
                  <displaynames>
                    <displayname description="Czas trwania" languagecode="1045" />
                  </displaynames>
                  <RelationshipName>activity_pointer_email</RelationshipName>
                  <RemoteAttributeName>ActualDurationMinutes</RemoteAttributeName>
                </attribute>

     

    regards

    Lydia

    Wednesday, April 9, 2008 1:50 PM
  • Hi,

     

    Are you expiriencing this problem on all activities or just on e-mail ?

    I'm upgrading another test server with the same problem (imported customizations).

    So iwill recheck the solution.

     

    Regards

    Tomaž  

     

    Wednesday, April 9, 2008 2:18 PM
  • Did u also corrected  <Format /> into: <Format>duration</Format> ?? U have to replace <Format /> with <Format>duration</Format> as well

    Wednesday, April 9, 2008 2:22 PM
  • Hi,

    I did as you mentioned and worksSmile

     

    thanks a lot

    Lydia

     

     

     

    Wednesday, April 9, 2008 3:10 PM
  •  Tomaž Vodušek wrote:

    Hi,

     

    Are you expiriencing this problem on all activities or just on e-mail ?

    I'm upgrading another test server with the same problem (imported customizations).

    So iwill recheck the solution.

     

    Regards

    Tomaž  

     

     

     

    Hi,

    It happened to almost all activities excluding: letter and campaing activity. I put <Format>duration</Format> and 0 for minimumValue to the rows which regarded to duration in .xml file

    It works

     

    Regards

    Lydia

    Wednesday, April 9, 2008 3:18 PM
  • Hi,

     

    Thanks Sebastian, I havent seen this part Lydia posted where the Format part was missing

     

    Regards

    Tomaž

     

    Wednesday, April 9, 2008 7:28 PM
  • Hi,

    I have another problem after upgrade:

    1. I can't open any email which was tracked into email activity. I get the following error

    Error Description:

    This lookup can only display one item. Lookup ID = to

    Error Details:

    Zgłoszono wyjątek typu 'System.Web.HttpUnhandledException'.

    Full Stack:

    [ArgumentException: This lookup can only display one item. Lookup ID = to]
       w Microsoft.Crm.Application.Components.Sdk.FormControls.Web.PartyListControl.set_Value(Object value)
       w Microsoft.Crm.Application.Components.Sdk.FormControls.Web.CrmWebFormDataControlUIWrapper.SetValue()
       w Microsoft.Crm.Application.Components.Sdk.FormControls.Web.CrmWebFormDataControlUIWrapper.set_DataSource(Entity value)
       w Microsoft.Crm.Application.Forms.EndUserForm.BindDataRecursively(Control control)
       w Microsoft.Crm.Application.Forms.EndUserForm.BindDataRecursively(Control control)
       w Microsoft.Crm.Application.Forms.EndUserForm.BindDataRecursively(Control control)
       w Microsoft.Crm.Application.Forms.EndUserForm.BindDataRecursively(Control control)
       w Microsoft.Crm.Application.Forms.EndUserForm.BindDataRecursively(Control control)
       w Microsoft.Crm.Application.Forms.EndUserForm.BindDataRecursively(Control control)
       w Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity, String formType)
       w Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity)
       w Microsoft.Crm.Web.Activities.EmailDetailPage.ConfigureForm()
       w Microsoft.Crm.Application.Controls.AppUIPage.OnPreRender(EventArgs e)
       w System.Web.UI.Control.PreRenderRecursiveInternal()
       w System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
    
    [HttpUnhandledException: Zgłoszono wyjątek typu 'System.Web.HttpUnhandledException'.]
       w System.Web.UI.Page.HandleError(Exception e)
       w System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
       w System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
       w System.Web.UI.Page.ProcessRequest()
       w System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context)
       w System.Web.UI.Page.ProcessRequest(HttpContext context)
       w ASP.abs_activities_email_edit_aspx.ProcessRequest(HttpContext context)
       w System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
       w System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
    

     

    2. Another issue - I can't create new, customized entity form system entity. For example - I've created customized entity - new_prognozowanie which is in relationship to opportunity (n:1) - one opportunity has many of new_prognozowanie and sometimes, when I want to add new_prognozowanie from the opportunity - I get the following error

    Error Description:

    transactionCurrencyId needs to be supplied to format a transaction money field.


    Error Details:

    transactionCurrencyId needs to be supplied to format a transaction money field.


    Full Stack:

    [CrmException: transactionCurrencyId needs to be supplied to format a transaction money field.]
       w Microsoft.Crm.CrmException.Assert(Boolean condition, String message)
       w Microsoft.Crm.Formatting.CrmFormatter.GetCurrencyDefinitionForAttribute(MoneyAttributeMetadata attributeMetadata, Guid transactionCurrencyId, IOrganizationContext context)
       w Microsoft.Crm.Formatting.CrmFormatter.GetCurrencySymbolForAttribute(MoneyAttributeMetadata attributeMetadata, Guid transactionCurrencyId, IOrganizationContext context)
       w Microsoft.Crm.Sdk.OnReadPropertyFilter.FormatNumberProperty(Object value, DynamicEntity entity, AttributeMetadata attributeMetadata, Boolean isCurrency, ExecutionContext context)
       w Microsoft.Crm.Sdk.OnReadPropertyFilter.FormatProperty(Property property, DynamicEntity entity, AttributeMetadata attributeMetadata, ExecutionContext context)
       w Microsoft.Crm.Sdk.PropertyFilter.Filter(DynamicEntity entity, String[] excluded, ExecutionContext context)
       w Microsoft.Crm.Extensibility.MessageProcessor.FilterEntityForOutbound(PipelineExecutionContext context)
       w Microsoft.Crm.Extensibility.MessageProcessor.Execute(PipelineExecutionContext context)
       w Microsoft.Crm.Extensibility.InternalMessageDispatcher.Execute(PipelineExecutionContext context)
       w Microsoft.Crm.Extensibility.ExternalMessageDispatcher.Execute(String messageName, Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, PropertyBag fields, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
       w Microsoft.Crm.Sdk.RequestBase.Process(Int32 primaryObjectTypeCode, Int32 secondaryObjectTypeCode, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
       w Microsoft.Crm.Sdk.RequestBase.Process(CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
       w Microsoft.Crm.Sdk.CrmServiceInternal.Execute(RequestBase request, CorrelationToken correlationToken, CallerOriginToken originToken, UserAuth userAuth, Guid callerId)
       w Microsoft.Crm.Sdk.InProcessCrmService.Execute(Object request)
       w Microsoft.Crm.Application.Platform.ServiceCommands.PlatformCommand.ExecuteInternal()
       w Microsoft.Crm.Application.Platform.ServiceCommands.InitializeFromCommand.Execute()
       w Microsoft.Crm.Application.Platform.DataSource.InitializeFrom(EntityType sourceEntityType, Guid sourceEntityId, EntityType targetEntityType, TargetFieldType transformType)
       w Microsoft.Crm.Application.Platform.EntityProxy.CreateFrom(String sourceEntityName, String sourceEntityId, TargetFieldType transformType)
       w Microsoft.Crm.Application.Forms.EndUserForm.PopulateDefaultDataIfAvailable()
       w Microsoft.Crm.Application.Forms.EndUserForm.RetrieveParams()
       w Microsoft.Crm.Application.Forms.EndUserForm.Initialize(Entity entity)
       w Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity, String formType)
       w Microsoft.Crm.Application.Forms.CustomizableForm.Execute(Entity entity)
       w Microsoft.Crm.Application.Pages.UserDefined.DetailPage.ConfigureForm()
       w Microsoft.Crm.Application.Controls.AppUIPage.OnPreRender(EventArgs e)
       w System.Web.UI.Control.PreRenderRecursiveInternal()
       w System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
    
    [HttpUnhandledException: Zgłoszono wyjątek typu 'System.Web.HttpUnhandledException'.]
       w System.Web.UI.Page.HandleError(Exception e)
       w System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
       w System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
       w System.Web.UI.Page.ProcessRequest()
       w System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context)
       w System.Web.UI.Page.ProcessRequest(HttpContext context)
       w ASP.abs_userdefined_edit_aspx.ProcessRequest(HttpContext context)
       w System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
       w System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
    
    Any ideas? I'll apreciate any help
    Thanks 
    Lydia
    Friday, April 11, 2008 8:46 AM