Thursday, June 4, 2009

InfoPath Column/Properties Promotion Limit

During our Captaré SharePoint InfoPath Training class today we got what I thought was a simple question:

  • What is the limit on the number of columns/properties you can promote to a SharePoint 2007 InfoPath Form Library from InfoPath 2007?

My gut response to this question was that it was the same column limit as a document library would have or maybe a SharePoint list. Quick research showed:

  • You can have:
    • 2,000 columns in a document library
    • 4,096 columns in a list

  • These are not hard limits, but you might experience library and list view performance degradation as the number of columns in a document library or list increases.

  • There are two good articles which detail the limitations of SharePoint. One in TechNet and a simpler one on this SharePoint blog.

After a little further research, I found that my gut response was wrong. The two relevant posts I found stated that the Form Libraries had the same limitations as the old SharePoint 2003 list limitations.

  • 64 Single line of text and Choice (drop-down menu or radio buttons)
  • 31 Multiple lines of text and Choice (check boxes (allow multiple sections))
  • 32 Number and currency
  • 32 Hyperlink
  • 16 Date and time
  • 16 Lookup
  • 16 Yes/No
  • 8 Calculated

The two references I pulled from were these posts:

I was not able to find definitive Microsoft articles or support backing these claims up. What did make me a little suspicious though is these are the same limitations stated in TechNet as WSS 2.0 and SPS 2003 had with lists and libraries. Why was this fixed with 2007 libraries and lists, but not Form Libraries?

If anyone has definitive Microsoft References for these limitations, please let me know.

The interesting corollary to researching this issue is I think it is part of another question we were asked today about a complex form timing out when they were trying to publish it. The issue as stated in the first post is the form probably has too many columns of a certain type in it.


Once you start trying to publish and use 25+ columns from InfoPath to SharePoint, you should start rethinking how you are using your data. A better long term approach is to:

  • Use InfoPath to publish the data to a SQL Server Database
  • You then have multiple view/reporting options:
    • Use data view Web Parts to view the data
    • Use SQL Server Reporting Services to create complex reports within SharePoint
    • Use third-party Web parts to view the data

Hope this helps everyone in our class and anyone else who may need it.