0

我正在寻找一种方法让员工向我发送电子邮件或将信息添加到电子表格中,然后将任务添加到我的任务列表中。理想情况下,脚本将捕获任务列表、任务、截止日期和任何注释。

我已经成功实现了五个脚本(五个任务列表),允许我的员工按照下面显示的脚本将任务添加到特定的任务列表中。这可以正常工作,但无法添加到期日期或注释:

自动发送电子邮件到任务列表 API

我最近遇到了对监视任务列表的脚本的引用,然后将它们发布到电子表格中,包括任务、截止日期、注释等。令我震惊的是,电子表格可能是更好的方法,尽管它没有电子邮件的便利性:

电子表格 API 的任务列表

我想知道 REVERSE 是否可以完成。我设想了一个电子表格,我可以让我的员工访问它,其中包含两个工作表(新的和已处理的),其中包含列:

TASKLIST   TASK   DUE DATE   NOTES

并且脚本将每隔一两个小时运行一次。NEW 中的任何内容都将被处理并添加到我的任务列表中,然后移至 PROCESSED 的末尾。

有没有人知道那里有类似的东西?或者,也许有一些方法可以更改电子邮件脚本,以便将电子邮件正文中的任何内容移动到任务的 NOTES 部分。我是这个 BTW 的新手。谢谢。

4

3 回答 3

0

存在所有功能来完成此操作,但我不知道是否有预构建的脚本可以满足您的需求。您可能想研究使用将数据保存到电子表格的 Google 表单,然后为表单提交创建一个触发器,该触发器收集数据并使用它创建一个新任务。

于 2012-06-05T18:45:16.967 回答
0

你应该替换
var newTask = Tasks.newTask().setTitle(title);

var newTask = Tasks.newTask().setTitle(title).setDue(date).setNotes(notes);

我也卡在了路上

我可以从电子表格中: - 创建新任务列表 - 在专用任务列表中创建新任务(带有截止日期和注释)

我可以从 Gtasks 中: - 检查任务是否已完成,并在电子表格中将其标记为已完成 - 检查任务是否仍然存在于电子表格中,并在必要时将其删除

当它在电子表格中关闭时,我仍在寻找一种在 GTasks 中完成任务的方法

于 2012-06-04T07:23:43.097 回答
0

这是您正在寻找的[部分]吗?

https://developers.google.com/apps-script/articles/google_apis_reading_list

它将基于电子表格的任务列表与您的常规任务列表同步,如果您在 gmail 中将任务标记为已完成,它会将其记录回电子表格中。

// 获取要保持同步的 URL 列表 var articleUrls = SpreadsheetApp.getActiveSheet().getRange("A2:A"); for (var rowNum = 0; rowNum < articleUrls.getNumRows(); rowNum++) {

// Limit our range to a single cell containing a URL
var oneUrlCell = articleUrls.offset(rowNum, 0, 1, 1);  
if (oneUrlCell.getComment() === "") {
  // This is a new URL that needs to be shortened/inserted
  var urlText = oneUrlCell.getValue();
  if (urlText !== "") {
    // Shorten the URL
    Logger.log("Adding task for url: " + urlText);
    var toShorten = UrlShortener.newUrl().setLongUrl(urlText);
    var shortened = UrlShortener.Url.insert(toShorten);

    // Insert the shortened URL into our reading list
    var taskToInsert = Tasks.newTask().setTitle(shortened.getId());
    taskToInsert.setNotes(urlText);
    var newTask = Tasks.Tasks.insert(taskToInsert, readingListId);

    // Save the new ID as our comment.
    oneUrlCell.setComment(newTask.getId());
  }
} else {
  // This URL has already been inserted, update the status
  var existingTask = Tasks.Tasks.get(readingListId, oneUrlCell.getComment());
  if (existingTask.getStatus() === "completed") {
    var absRowNum = oneUrlCell.getRow();
    var completedCell = sheet.getRange(absRowNum, 2);
    completedCell.setValue("Yes");
  }
}

应该是解决方案的一部分,不是吗?

我想自己做一些更大的事情。

于 2012-09-28T14:35:36.183 回答