Category Archives: SharePoint 2010

SharePoint Online: displayname bug in sitecolumn provisioning (?)

On my current project, I’m provisioning a set of sitecolumns with powershell.
I have a JSON file with a collection of sitecolumn definitions that looks like this:

"name": "fg_contact",
"xml": ""

And I use this powershell code:

$fieldAsXML = $JSON.xml
$fieldOption = [Microsoft.SharePoint.Client.AddFieldOptions]::AddFieldInternalNameHint
$field = $fields.AddFieldAsXML($fieldAsXML, $true, $fieldOption)

First time I provisioned the sitecolumns like this, my profile had English as default language. It the result was as expected; my ‘fg_contact’ field was displayed as ‘Contact’
Second time I provisioned with this solution, I used another tenant, one where my profile was set to Dutch.
I was quite surprised to see most of my sitecolumns displayed with the internal name.

Funny thing: see how the managed metadata fields did get the correct displayname…? (the provisioning xml for these columns is exactly the same!)

So I started testing a couple of scenarios to see what was happening.
Starting of with an English profile, provisioning the sitecolumns, gave me the correct result. After switching to a Dutch profile, I still got the correct displaynames.

Provisioning with an Dutch profile gave me the wrong result (see previous image). After switching to a English profile, I still got the wrong displaynames.

And yes, even after adding LCID=’1043′ to the XML didn’t make any difference.

So, any thoughts, any one?

BTW: as far as I can tell, this also goes for provisioning from within an SharePoint Framework webpart

SharePoint bug: mysterious deleted tasks

In the June 2016 CU for SharePoint 2013, there’s a bugfix for a problem we’ve been researching for some time. The bug itself was found by my colleague Said El Yaghmouri.

We submitted a bugreport to Microsoft. Here’s a recap of that report.


When I delete a document set in the document library, non-related tasks are deleted from the task list.
After deleting the document set, I check if the related tasks are deleted. The related tasks are indeed deleted but also (and incorrect) some other tasks are deleted. The incorrectly deleted tasks have no relation to the deleted document set. They have a lookup value to a different document set or even a blank/empty lookup field.
This issue occurs on any type of list with a lookup column set to the document library and ‘Cascading Delete’ set, not just the Task list.

This issue also effects multiple lists, as long as they have a lookup column to the document library and ‘Cascading Delete’is set.

After some research we found the issue:
It seems that the cascading delete removes all the tasks that have an ID that corresponds with the (list item) ID’s of the documents inside the deleted document set.

Expected behavior

Only the explicitly related tasks to a (to be) deleted document set should be deleted.

Steps to reproduce the problem

Setup environment

  • Create a new SiteCollection (In this example: “Case”)
  • Go to Documents > Library Settings > Advanced Settings
    • Allow management of content types > Set this value to Yes
  • Go to Documents > Library Settings > Content Types
    • Add from existing site content types:
      • Add Document Set > Click OK
  • Go to Site Content
    • Add an list (via Add an app), based on Tasks
      • Name: MyTasks
  • Go to MyTasks > Settings
    • Create column
      • Name: RelatedDocSet
      • Type is Lookup: Documents on ID
      • Enforce Cascading Delete

Setup data

  • Go to Documents
    • Add a document set (in example: Test docset)
    • Add 2 documents (in example: Test Document 1 & Test Document 2)
    • Customize the default view to show the ID of the documents
      Note the ID’s of the test documents: 3 & 4
  • Go to MyTasks
    • Create a number of tasks with NO relation to a document set.
      RelatedDocSet is set to (None).
    • Make sure there are tasks that have ID 3 & 4

Trigger the cascading delete

  • Go to Documents
    • Open the document set (in example: Test docset)
    • Open the ribbon tab ‘Manage’
    • Click on Delete
    • Confirm the delete action by pressing OK
  • Go to the created list (in example: MyTasks)
    • Check what tasks are deleted
    • In this example taskitems with ID 3 & 4 should still be there as they have not relation to the deleted document set.
    • Tasks with ID 3 & 4 are not there anymore !!

SharePoint Notifications Facebook / Google style

A few weeks ago, a client of mine wanted a way of notifying intranet users of new functionality. Now of course you can show some sort of message in the middle of the intranet homepage, but we wanted something more like a ‘Facebook / Google’ experience.

If there is a new piece of functionality, the visitor should get a nice looking notification at the top of the screen, even if he’s not on the homepage.

So, how to go about this? I wanted the administrator to have several options:

  • He should be able to show a notification one time only or multiple times.
  • The notification should have a:
    • ‘Close’ button if it’s a one time only notification
    • ‘Remind me later’ button for recurring notifications
    • ‘Go to’ button which will take the visitor to a specified URL

We start off with the creation of a Notifications list which will enable the administrator to add notifications in a simple way.

Please note that I wrote this functionality for SharePoint 2010 but I’m sure it will work in SharePoint 2013 as well…

Continue reading

Getting ready for SPC12!

Only one more days before I leave for the SharePoint conference 2012 in Las Vegas. And for those who are connected to me via Twitter (, @ernstwolthaus) know I’m really excited about this conference. For more than 1 reason:

  • Las Vegas
    What a great venue to pick for Microsoft for the first SharePoint conference about SharePoint 2013. Off course it should be all about SharePoint 2013 but the ambiance of Las Vegas will certainly contribute to a great SPC12!
  • The SharePoint community
    Since I’ve been involved with SharePoint, I’m amazed by the amount of SharePoint knowledge that our community is sharing every day! There’s no community that’s living up to the name of it’s product more than the SHAREpoint community. I really love the way people can get excited about anything in SharePoint.
    I couldn’t agree more with Joel Oleson with his recent blogpost: The SharePoint community is the BEST technical community on earth.
  • Meeting the community
    The SharePoint conference 2011 in Anaheim was my first SharePoint conference. I so enjoyed meeting a lot of SharePoint enthusiasts and seeing the great speakers strut their stuff on stage. As you walk don the halls of the conference center, you can feel the excitement. And with SharePoint 2013 RTM, I guess SPC12 will be even more better!
  • SharePoint 2013
    Off course, we’re all excited about this new shiny thing we can play with. Microsoft is really maturing the SharePoint platform. A lot of enhancements have been made to the overall user experience. The new app model is causing a stir (for good or bad…). The integration of FAST into Search is a real sellingpoint to our customers as search is getting ever more important to our intra/extranets.
    But I’m most excited about the improvements on the client object model. In the past two years I’ve been doing a lot of work with REST, CSOM, SPServices, jQuery, javascript and numerous addons. The client object model in SharePoint 2010 is a powerful (and fast!) way of retrieving and editing data. Combined with all kinds of javascript libraries and a creative imagination, you can build some great one page apps.
    And with the extensions made in SharePoint 2013 the possibilities are even more powerful and awesome. Man, I so love this way to get good looking and working apps out the to customer in no-time at all, just by adding a textfile with javascript. You should see me jumping up and down with excitement when I’m presenting a session about this stuff! (it’s kind of embarrassing actually…oh well…)

So, a number of good reasons to be in Vegas next week: the people, the product, the place.
Hope to see and meet you in Vegas!

Selection Check Box Disappears from Grouped View SharePoint Slide Library

A SharePoint Slide Library offers an effective way of storing, sharing and managing your PowerPoint presentations. If you publish your PowerPoint presentation to a Slide Library, the slides will be uploaded as individual files which you can edit en even reuse for new PowerPoint presentations.

Now when you have a lot of slides, it seems only logical to group your slides into functional groups and maybe even subgroups. However, when you start grouping your slides, a SharePoint bug shows up (SharePoint 2007 & 2010): the selection check boxes disappear! Continue reading

Office programs keeps asking credentials to connect to SharePoint

Do you recognize this?

You connected a document library to Office, because you want to be able to save Office documents directly to SharePoint, without looking for the right URL. With this ribbon button, you can create a SharePoint location in Word/Excel/etc that you can use as save location. Very usefull.

After some time however, I was going nuts because everytime I had Office documents opened on my machine, about every 15 minutes, I was asked credentials for a customer site I had connected to about a year ago. I didn’t have access to that site anymore, so removing the location thru the ribbon wasn’t possible.

Very annoying when you are in the middle of a training or demosession and every 15 minutes your screen is switched to the login screen. Arghhh!!

Btw: I also had another location Office kept bugging me for. I removed the location in SharePoint but this didn’t help either…

After some #sphelp tweets and a lot of Googling the internet I finally found the solution. Yeah! 🙂

The solution can be found in the registry, at the following key:

[HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Common\Portal\Link Providers\*Name of link*]

Once you remove the sites for which you are asked credentials, the problem is gone. Puff!!

Synchronize Excel 2010 with SharePoint 2010 List

A couple of days ago, I demonstrated to a group of customers the ability to synchronize Excel 2010 with SharePoint 2010.

In order to synchronize Excel data with SharePoint, you need to convert a range of data into a table. The moment you create the table, Excel will show you an extra button to “Publish and allow Sync” to SharePoint (see screenshot).

Continue reading

SharePoint REST JSON results differ with $top

When you have been working with the SharePoint 2010 REST API, you know it’s extremely easy to get the results you want, using jQuery and calling the URL with REST syntax from JavaScript.

Because JSON data is so much easier to use and parse than XML, I almost always use the $.getJSON functionality to get the data I want.
If you use FireFox and FireBug (of course you do!), you probably have taken a look at the data underneath. Something like this (click to enlarge):

Continue reading

New supporting forms by SharePoint Designer not quite the same

When you want create a new ‘supporting’ form (new/edit/display), there’s a special section in de SharePoint Designer 2010 interface that will create such a file for you:

This will create a new shiny form you can to use and customize. This works a whole lot better than the old crappy way with SharePoint Designer 2007 where you had to copy/paste the code from a newform/editform/dispform to your own .aspx file. And it would always break the attachments functionality… Continue reading