Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

The UPS animal is a strange one. I just don't know how I can delete or overwrite a property completely.

I have the Job Title property (Imported from AD) filled on all my users. I want to change this property for all users by either overwriting it or completely deleting it.

By going to UPS Administration > Manage User Properties I tried the following things:

  1. Delete "Job Title". » Doesn't work as Delete is grayed out.
  2. Edit "Job Title" to now get its data from some random AD property instead of title (e.g. division). » The data already contained in the property for the users is not deleted nor edited (I have a user having e.g. "Blue division" in active directory division, but he still has the old title data)
  3. Tried playing around with the policy settings (Required/Replicable etc.), no luck.

After every change I did a full synchronization.

What I am asking is how I can overwrite all users' "Job Title" attribute with a new value I specify or delete the attribute or get it from some other AD field.
In general: Why isn't the new data applied when I select a different field from AD the data shall be imported from?

share|improve this question
    
Check to see if the property is editable in the User Profile Service App / Manage User Properties / Allow Users to Edit values for property –  sween_sp May 5 '12 at 15:28
    
No, it's not. I don't want users to change it anyways. –  Dennis G May 6 '12 at 16:36
    
We had a similar issue where we had to unlock it, update it, then lock it again so users couldn't update. We couldn't update it fom PowerShell or code unless it was unlocked. –  sween_sp May 7 '12 at 13:25
    
unlocked <- what wizardry are you talking about? :-) How would I unlock the field? –  Dennis G May 7 '12 at 16:06
    
Sorry! I meant temporarily make it editable, our definition of "unlocked". We set the property.IsUsereditable = true in code, Update, Commit, then set it back to false. The code below will set editable to true via PowerShell. –  sween_sp May 7 '12 at 16:39

2 Answers 2

You can "disable" this property by removing the options to show in user profiles, show in edit pages and also make it non editable.

Then, you create a new property and call it what ever you want and map to the correct AD field for import or import/export.

See this question which I answers myself about how to even map to a Termset:

Setup Department Profile property as Term Set and Sync back to AD

share|improve this answer
1  
Problem is you can't really disable it unless you want to break standard behavior. The Organisation Browser (Silverlight) uses the job title property to display right underneath the usernames - you cannot edit which property it uses. Sure, you can create a new property, but that ain't the "real" job title field ;-) –  Dennis G Feb 14 '13 at 15:36
    
You are correct. The only thing you really can't control is that Silverlight control. I wish MS allowed us to specify which fields are displayed in that control. Wouldn't be too difficult to replicate that though. –  Fox Feb 15 '13 at 8:52

Here is the powershell we used to unlock our field:

$PortalURL = 'http://yoursite'

$oSite = Get-SPSite $PortalURL
$oSiteContext =[Microsoft.Office.Server.ServerContext]::GetContext($oSite)  
$oUserProfileManager = new-object Microsoft.Office.Server.UserProfiles.UserProfileManager($oSiteContext)

$oFieldNameProp = $oUserProfileManager.DefaultProfileSubtypeProperties | Where {$_.Name -eq 'FieldName'}
$oFieldNameProp.IsUserEditable = $true
$oFieldNameProp.Commit()
share|improve this answer
    
All you're doing is let the user edit the field - I was talking about synchronization from Active Directory. –  Dennis G Feb 14 '13 at 15:37
1  
Right, I was just trying to say that we had a similar situation where we had to edit a property that didn't take our changes either. Once we made it editable, re-synced, then changed the property back to uneditable, it then maintained the changes. We didn't allow users to edit either. This was in code. –  sween_sp Mar 6 '13 at 15:17
    
Understood. IsUserEditable = $true. Do a full profile synch --> Property is synched and set IsUserEditable back to false. –  Dennis G Mar 6 '13 at 15:50

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.