Category Archives: Sharepoint 2010 Tips

Available Value Types for CAML Queries

I must be stupid, but I couldn’t google my way onto a list of available Value Types to be used in SharePoint CAML Queries.

<Value Type=’????‘>SomeValue</Value>

I’m assuming that the list of available field types is the same as for Field elements.
But experience is showing me that they don’t all work.

I’ve successfully wrote CAML against SharePoint using the following Value Types:

  • Text
  • Number
  • DateTime
  • Guid
  • MultiChoice
  • Lookup

I have not had success with:

  • Integer

If you’ve had success with other field types, let me know!

Advertisements

Sharepoint 2010 Dynamic Navigation limited to 50 items?

Yup, it’s true…  For performance reasons, likely valid, the Site Map provider in Sharepoint 2010 is limited to 50.

http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.publishing.navigation.portalsitemapprovider.dynamicchildlimit.aspx

I found a fix for this in Sharepoint 2007 that still works for 2010.  The following will allow unlimited dynamic navigation items to be shown.

1. Edit the web config for your application.

2. Find the <sitemap> section

3.  Add the text DynamicChildLimit=”0″ to each of the following keys.

<add name=”GlobalNavSiteMapProvider” description=”CMS provider for Global navigation” type=”Microsoft.SharePoint.Publishing.Navigation.PortalSiteMapProvider, Microsoft.SharePoint.Publishing, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c” NavigationType=”Global” EncodeOutput=”true” DynamicChildLimit=”0″/>
<add name=”CombinedNavSiteMapProvider” description=”CMS provider for Combined navigation” type=”Microsoft.SharePoint.Publishing.Navigation.PortalSiteMapProvider, Microsoft.SharePoint.Publishing, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c” NavigationType=”Combined” EncodeOutput=”true” DynamicChildLimit=”0″/>
<add name=”CurrentNavSiteMapProvider” description=”CMS provider for Current navigation” type=”Microsoft.SharePoint.Publishing.Navigation.PortalSiteMapProvider, Microsoft.SharePoint.Publishing, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c” NavigationType=”Current” EncodeOutput=”true” DynamicChildLimit=”0″/>
<add name=”CurrentNavSiteMapProviderNoEncode” description=”CMS provider for Current navigation, no encoding of output” type=”Microsoft.SharePoint.Publishing.Navigation.PortalSiteMapProvider, Microsoft.SharePoint.Publishing, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c” NavigationType=”Current” EncodeOutput=”false” DynamicChildLimit=”0″/>

4.  Save and you’re good to go.

Add a field editor for the TargetTo field type (SPFieldTargetTo) in Sharepoint 2010

This took me forever to google “just right”

I was looking for a Field Editor control in SharePoint 2010 that would let me edit a TargetTo Field Type right on my Publishing Page Layout.

It was not in the usual place (Microsoft.SharePoint.WebControls), it’s actually housed in the Microsoft.Office.Server.UserProfiles Assembly in Microsoft.Office.Server.UserProfiles.dll.

Here’s what you need to add to your page layout:

<%@ Register TagPrefix=”OfficeWebControls” Namespace=”Microsoft.Office.Server.WebControls.FieldTypes” Assembly=”Microsoft.Office.Server.UserProfiles, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c” %>

and

<OfficeWebControls:SPFieldTargetToControl ID=”AudienceEdit” runat=”server” FieldName=”Audience” ControlMode=”Edit” />

I was able to piece this together from this sharepoint 2007 blog: http://sites.google.com/site/netsourcecode/sharepointdevelopmentblog/adding-audience-targeting-to-your-publishing-page and MSDN: http://msdn.microsoft.com/en-us/library/microsoft.office.server.webcontrols.fieldtypes.spfieldtargettocontrol.aspx