The other the I got asked why the “Datasheet view” option was laking from “Create a new view”. It turned out to be a more troublesome way to find the solution than first expected.

First I checked the users rights on the site collection, but that really did not give any answers.

Secondly, I checked this on a virtual dev machine, with (more or less) the same configuration and features: No repro. Create datasheet view was available as it should be. So what could be the difference between these machines?

Thirdly, I compared site features and site collection features, but this neither give any findings.

OK, let’s see what happens in the ViewType.aspx which display this page:

fHideGridViewOption = ListViewWebPart.RestrictedTemplateType(spList) || !spList.DoesUserHavePermissions(SPBasePermissions.UseClientIntegration);

… and some more… but nothing really telling me why it might be hidden.

So I asked and looked for suggestions elsewhere: A lot of search hits and problem related to the DataSheet view is client integration, that was a dead end here. From one client I could reproduce the problem on one server and not on another. And the problem is not viewing the view.

Finally, I tried to open an existing datasheet view on the server with the problem. This gave the following error:

"The standard view of your list is being displayed because your site configuration does not support the Datasheet"

“Site configuration” – it should have said web application. Central Admin - application management - authentication providers - <your provider> – scroll to the bottom:

image 

“Enable client Integration” was set to “NO”. 

This was a setting long forgotten, since it is set to “YES” when you create a new web application in the GUI. However, one server had been set up using STSADM commands with the SharePoint PowerShell Deploy from Codeplex using EXTENDVS, so somehow I needed to compensate for this.

The easiest way is to call another stsadm command after the extendvs,

stsadm -o authentication

   -url <URL name>

   -type <type>

   [-usebasic]

   [-usewindowsintegrated]

   [-exclusivelyusentlm]

   [-membershipprovider] <membership provider name>

   [-rolemanager] <role manager name>

   [-enableclientintegration]

   [-allowanonymous]

ref. http://technet.microsoft.com/en-us/library/cc263116.aspx

and set the –enableclientintegration flag.

Just another small annoying thing that take a little too long to figure out…