将 Google Apps 脚本结果导出到 Google Sheet

Export Google Apps Script result to Google Sheet

我有这个脚本可以将当前使用的许可证数量提取到日志文件中。我们希望每天 运行 脚本来建立使用模式。 但是,我不知道如何将脚本的结果保存/导出到 Google Sheet。有人可以帮忙吗?

function getNumberOfLicenses() {
  var tryDate = new Date();
  var dateString = tryDate.getFullYear().toString() + "-" + (tryDate.getMonth() + 1).toString() + "-" + tryDate.getDate().toString();
  while (true) {
    try {
      var response = AdminReports.CustomerUsageReports.get(dateString,{parameters : "accounts:gsuite_unlimited_total_licenses,accounts:gsuite_unlimited_used_licenses"});
      break;
    } catch(e) {
      //Logger.log(e.warnings.toString());
      tryDate.setDate(tryDate.getDate()-1);
      dateString = tryDate.getFullYear().toString() + "-" + (tryDate.getMonth() + 1).toString() + "-" + tryDate.getDate().toString();
      continue;
    }
  };
  var availLicenseCount = response.usageReports[0].parameters[0].intValue;
  var usedLicenseCount = response.usageReports[0].parameters[1].intValue;
  Logger.log("Available licenses:" + availLicenseCount.toString());
  Logger.log("Used licenses:" + usedLicenseCount.toString());
  return availLicenseCount;
}

试试这个:

function getNumberOfLicenses() {

  var ss = SpreadsheetApp.openById("SHEET_ID"); // Sheet where you want to write the result.

  var tryDate = new Date();
  var dateString = tryDate.getFullYear().toString() + "-" + (tryDate.getMonth() + 1).toString() + "-" + tryDate.getDate().toString();
  while (true) {
    try {
      var response = AdminReports.CustomerUsageReports.get(dateString,{parameters : "accounts:gsuite_unlimited_total_licenses,accounts:gsuite_unlimited_used_licenses"});
      break;
    } catch(e) {
      //Logger.log(e.warnings.toString());
      tryDate.setDate(tryDate.getDate()-1);
      dateString = tryDate.getFullYear().toString() + "-" + (tryDate.getMonth() + 1).toString() + "-" + tryDate.getDate().toString();
      continue;
    }
  };
  var availLicenseCount = response.usageReports[0].parameters[0].intValue;
  var usedLicenseCount = response.usageReports[0].parameters[1].intValue;
  Logger.log("Available licenses:" + availLicenseCount.toString());
  Logger.log("Used licenses:" + usedLicenseCount.toString());

  ss.appendRow([availLicenseCount.toString(), usedLicenseCount.toString()]) // Adding a row with the data in the first two columns of the sheet.

  return availLicenseCount;
}

此代码将打开您想要的 sheet(您需要其 ID),并将在代码末尾向其中添加数据。这两个变量将添加到下一个空行的前两个单元格中。 Here 您会找到有关如何使用 Spreadsheet 应用程序的文档和指南。