如何使用GAS获取在特定日期之后添加/更新的数据

时间:2017-07-18 08:24:33

标签: google-apps-script

是否可以使用Google应用脚本获取在特定日期之后添加/更新的数据?如果是这样,怎么样?

我的要求是,我想获取在特定日期之后制作的Google文档中的所有更改。

1 个答案:

答案 0 :(得分:1)

我在示例中遇到了一些fileSize的问题所以我把它留了出来,这个例子包括在给定的日期/时间之后只包含文件的要求。大多数情况下,它是另一个例子的直接副本。我还添加了修订版的链接,它为您提供了修订版的快照。

这是代码和测试功能。

function testGRH()
{
  getRevisionHistory(new Date('June 11, 2017 8:27:03 PM MDT'));
}

function getRevisionHistory(after)
{
  var s='';
  var br='<br />';
  var doc=DocumentApp.getActiveDocument();
  var id=doc.getId();
  var revisions=Drive.Revisions.list(id);
  if (revisions.items && revisions.items.length > 0) 
  {
    for (var i = 0; i < revisions.items.length; i++) 
    {
      var revision = revisions.items[i];
      var date = new Date(revision.modifiedDate); 
      if(date>after)
      {
        s+=br + Utilities.formatString('ID: %s, Date: %s <a href="%s" target="_blank">Link</a>', revision.id, date.toLocaleString(), revision.selfLink);
        Logger.log('ID: %s, Date: %s', revision.id, date.toLocaleString());
      }
    }
  } 
  else 
  {
    Logger.log('No revisions found.');
    s+=br + 'No revisions found.';
  }
  if(s)
  {
    DocumentApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(s), 'Document History for ' + doc.getName() + ' after ' + after);
  }
}

这是我的对话框输出。查看链接。

enter image description here

您必须在API Console

中启用Drive API