如何检查ContactGroup是否存在
问题描述:
我想与同事共享gsheet,他们应该能够运行脚本将联系人从工作表复制到自己的联系人。 我想创建一个MyCorp1 ContactGroup并添加联系人。我想检查用户是否已经创建了这个组。找不到检查这个的方法。有没有解决方法?不幸的是,如果我尝试创建两次或更多组,它会创建重复项。如何检查ContactGroup是否存在
在此先感谢 的Gabor
function addCont(row){
var contact = ContactsApp.createContact(row[1], row[0], row[5]);
//if not empty
if (row[3] != "") {contact.setMobilePhone(row[3]);}
if (row[4] != "") {contact.setWorkPhone(row[4]);}
var myGroup = ContactsApp.getContactGroup('MyCorp1');
myGroup.addContact(contact);
}
//-----------------------------------------------------------------------------------
function delcreateGRP(){
var myGroup = ContactsApp.getContactGroup('MyCorp1');
myGroup.deleteGroup();
ContactsApp.createContactGroup('MyCorp1');
}
//-----------------------------------------------------------------------------------
function copyContacts() {
var startRow = 1; // First row of data to process
// This is the Request Spreadsheet
var ss = SpreadsheetApp.openById(REQUEST_SPREADSHEET_ID);
var sheet = ss.getSheets()[0];
// Fetch all the data from the Request Spreadsheet
// getRowsData was reused from Reading Spreadsheet Data using JavaScript Objects
//var data = getRowsData(sheet);
//var sheet = SpreadsheetApp.getActiveSheet();
var data = sheet.getDataRange().getValues();
Logger.log('datalength: ' + data.length);
for (var i = startRow; i < data.length; ++i) {
var row = data[i];
row.rowNumber = i + 2;
addCont(row);
}
}
答
由于.getContactGroup('Group Name')
方法,如果没有一个联络小组,与给定的名称返回null,则可以使用if/else语句做你的工作。
var group = ContactsApp.getContactGroup('Group Name');
if(group) {
//do something if the group exists
} else {
//do something if the group DOES NOT exist
}
这里是我使用的文档:https://developers.google.com/apps-script/reference/contacts/contacts-app#getContactGroup(String)