Answered by:
upgrading CRM 4.0 from CRM 3.0

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?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 PMModerator -
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
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
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
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 -
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><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><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 works
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 = toError 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