Wednesday, September 10, 2008

Publishing InfoPath Forms - Updating Content Type Failed

Scenario: You've published and InfoPath form to a Sharepoint Form Library. You edit the template, save and attempt to publish again and receive the following message - "Updating Content Type Failed"

I've done some researching on this and found a couple of issues. The most common response is that if you remove some columns for your InfoPath List, it will magically work. What I've discovered for this ready why this actually works is because you're falling within the Timeout window. What you're actually doing by removing columns is shrinking the Infopath form from being too large and the web service that is uploading the template is completing inside of 30 seconds.

I don't have a solution for this issue yet, but I am actively working on it. InfoPath is used to capture information and my work around is to reduce the information displayed. That's not accept for me or my business.

I'll post more when I something more concrete. I'm actively exploring optimizing the Infopath form, column types and even increasing the web service timeout to larger than 30 seconds.

UPDATE:

I've found some other work arounds to help with this situation. If you create a new form library, you should not have any issue publishing the form for the first time. You will be able to add all of your columns and publish the complete form. I suspect there is something corrupt with the form library which is causing Infopath to have issues. I'm not sure if it's SharePoint Designer related but I haven't ruled it out.

Separately I've found that most form libraries with issues on publishing form templates, all seem to have multiple files in the library and many different files that are unlinked from the current template. I haven't tested if linking all the files back to the current form template will resolve the issue or not, but it was something I noticed when recreating the form library.


UPDATE #2:

I've done some more investigating and found something interesting. There's not a "hard limit" to the number of columns in a List, but more a limit to the number column types you can have in a list. The interesting part is that there is technically a hard limit on the number of columns and once that limit is reached, MOSS on the back end will create a new row with the same cap. The end user will still continue to see a single giant list.

Here's the breakdown of what you can have in a list can have:
64 Single line of text and Choice (drop-down menu or radio buttons)
31 Multiple lines of text and/or Choice (check boxes (allow multiple sections))
32 Number and currency
32 Hyperlink
16 Date and time
16 Lookup 16 Yes/No
8 Calculated

Note: The number of shared data types are not 64 Single Line of Text and 64 Choice. It's actually 64 total of a combination of either data type.

So we now have a new question:

Does your InfoPath form has more than 199 columns, or has your InfoPath form surpassed the column type limit?

7 comments:

GrinGod said...

Hi Dooly,

Did you manage to find a work around for the problem? I'm getting the same issue and need to find a fix asap.

Thanks.

Doolbox said...

I'll be writing and update right now.

Unknown said...

Hi Dooly,
I'm also getting the same issue. Can you help me how to fix "Updating the content type failed" issue?

Doolbox said...

Just posted an update.

Brandon said...

This is a great article and helped me to identify the issue we were seeing on one of our SharePoint sites. Anyhow both of these InfoPath 2007 issues (Column limitation and time-out issue) are resolved in Ms Office service pack 2.

The column limitation is also fixed in WSS service pack 2 on the SharePoint side.

So basically you need to have service pack 2 applied to Office and WSS in order to resolve the issue.

sghanna said...

SP2 for Office 2007 doesn't fix the issue for me.

Anonymous said...

Here is a article - http://technet.microsoft.com/en-us/library/cc262787.aspx#Column that I feel that it is important for the community.

From Jack (http://sharepoint.stackexchange.com/users/6356/jack)