1

ユーザーが入力していないユーザー プロファイル プロパティを表示しようとしています。usersprofile と userprofile プロパティを取得するのはかなり簡単です。

function getUserPropertiesFromProfile() {
// Get the current client context and PeopleManager instance.
var clientContext = new SP.ClientContext.get_current();
var peopleManager = new SP.UserProfiles.PeopleManager(clientContext);

// Get user profile properties for the current user
userProfileProperties = peopleManager.getMyProperties();

// Load the UserProfilePropertiesForUser object and send the request.
clientContext.load(userProfileProperties);
clientContext.executeQueryAsync(onProfileRequestSuccess, onProfileRequestFail);
}

function onProfileRequestSuccess() {
    var propertyValue = userProfileProperties.get_userProfileProperties()["SPS-JobTitle"];
    if (propertyValue === undefined) {
        // Property is not present in your User Profile Service Application
    } 
    else if (propertyValue === "") {
        // Property is empty
    }

}

function onProfileRequestFail() {
    // Handle failure
} 

しかし、私の問題は、それが私が取得した内部名であり、外部名ではないことです。たとえば、「役職」は「SPS-JobTitle」です。だから私が欲しいのは、「SPS-JobTitle」が空または未定義の場合、外部名 = 「役職」をユーザーに書き出すことです。

可能ですか?SSOM (例: ProfileSubtypeManager) では簡単です。

4

0 に答える 0