none
Как записать свойство профиля пользователя SharePoint?

    Вопрос

  • Здравствуйте.

    Есть желание в свойство профиля "SPS-DisplayOrder" записывать свои данные, а именно - Табельный номер работника.

    Читать это свойство я умею, при помощи JavaScript:

    $().SPServices({
    operation: "GetUserProfileByName",
             async: false,
       AccountName: ppUserName,
        completefunc: function (xData, Status) {
               var tn = $(xData.responseXML).text();
               var tnLength = tn.length;
       var indexoftn = tn.indexOf("DisplayOrderPublic");
       tn = tn.substring(indexoftn + 18, tnLength);
       var indexOfEnd = tn.indexOf("false");
       tn = tn.substring (0, indexOfEnd); 
         }
    });

    Подскажите пожалуйста, как в это же поле сделать запись из того же powershell?

    15 марта 2019 г. 12:48

Ответы

  • Попробуй так:

    $MySiteURL = "http://sp-test"
    $UserLogin="Domain\user"
    $ServiceContext  = Get-SPServiceContext -site $MySiteURL
    $UserProfileManager = New-Object Microsoft.Office.Server.UserProfiles.UserProfileManager($ServiceContext)
    if ($UserProfileManager.UserExists($UserLogin))
    {
        $UserProfile = $UserProfileManager.GetUserProfile($UserLogin)
        $UserProfile["DisplayOrder"].Value = "1234567890"
        $UserProfile.Commit() 
        write-host "DisplayOrder Updated Successfully!" -f Green
    }
    else
    {
        write-host "$($UserLogin) Not Found!" -f Red
    }
    15 марта 2019 г. 13:10