Recently while working on a SharePoint 2010 installation, I came across this error on certain fields when looking at a user profile record.
After doing a bit of research, I learned that some fields in the User Profile record are sourced as look-ups from the Managed Metadata Service. Managed Metadata, as you may know, is a farm-wide repository for common terms, organized hierarchically, that can be used through the SharePoint farm to ensure consistency when selecting values.
I reviewed the Managed Metadata Service and confirmed it was running, and that the term store would load up okay. The key check I made was to select the Managed Metadata service Proxy entry, then click on Properties in the Ribbon.
The first option shown reads “This service application is the default storage location for Keywords.” By checking this option, we’re telling the rest of SharePoint that this is the default Managed Metadata location to user for stashing any generic keyword value.
The User Profile service fields such as Job Title are designated (by default) to be treated as Keyword values, so by not having a Keyword storage location defined, we get the error message for those fields that it cannot retrieve the data to display.
After saving the changes to the service application properties, when I reload the User Profile record, the error is cleared.
Now that I have specified the location for Keywords, one quick way to get values seeded in it is to configure the User Property to synchronize values for that field during the User Profile Synchronization process. To do this, I edit the ‘Job Title’ property and set up a mapping.
By adding the mapping, the values (in this case) from the ‘title’ field in Active Directory will be imported in to the Managed Metadata repository as keywords, and will be available to select from when editing a user’s profile.
This is another prime example of how SharePoint has a lot of interaction with itself, much of which you would not suspect at first glance.