我需要更改 Google Workspace 网域中用户的职务。我还为此编写了一个合适的脚本。但是,当我执行脚本时,GWS 区域组织中的用户获得新的正确的 JobTitle,但其他字段(例如部门)为空。
这是我的脚本:
function myEditUserDatas() {
var ssID = "1_yDRkyO9kwT-xxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
var sheet = SpreadsheetApp.openById(ssID).getSheetByName("EditEmployees ");
var myLR = sheet.getLastRow();
for (let i = 2; i <= myLR; i++) {
var uMail = sheet.getRange(i,2).getValue();
var user = AdminDirectory.Users.get(uMail);
//Datas from GSheet
var JobFunction = sheet.getRange(i,14).getValue();
user.organizations = [{
department: JobDepartment
}];
AdminDirectory.Users.update(user, uMail);
}
}
有人可以告诉我我忽略了什么吗?
问候
function myEditUserDatas() {
var ssID = "1_yDRkyO9kwT-xxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
var sheet = SpreadsheetApp.openById(ssID).getSheetByName("EditEmployees ");
var myLR = sheet.getLastRow();
for (let i = 2; i <= myLR; i++) {
var uMail = sheet.getRange(i,2).getValue();
var user = AdminDirectory.Users.get(uMail);
//Datas from GSheet
var JobFunction = sheet.getRange(i,14).getValue();
user.organizations = [{
department: JobDepartment
}];
AdminDirectory.Users.update(user, uMail);
}
}
几点说明:
user.organizations = [{department: JobDepartment}];
您使用的是尚未初始化的变量JobDepartment
。我猜它应该改为 user.organizations = [{department: JobFunction}];
,因为你确实初始化了 JobFunction
但你从不使用它;JobTitle
变量。