2

我最近制作了一个在 Google 表单的提交上运行的 Google Apps 脚本。它会自动将表单中捕获的信息以 html 格式通过电子邮件发送给审批经理。

我试图通过在电子邮件中包含两个按钮来添加额外的工作流程——“批准”和“拒绝”。但是,我无法将功能附加到这些按钮(例如,提交按钮会将电子邮件转发到 X 等)。

如果有人能帮助我解决这个问题,我将不胜感激 - 我无法找到/理解在线解决方案,我担心我可能会在这方面不知所措。下面是我的代码:

     function notfiy(e) {


  var username = e.values[1].toString();
  var requestfor =  e.values[2].toString();
  var location =e.values[3].toString();
  var department = e.values[4].toString();
  var phonenumb = e.values[5].toString();
  var extension = e.values[6].toString();
  var approver = e.values[7].toString();
  var computer = e.values[8].toString();
  var monitor = e.values[10].toString();
  var accessories = e.values[12].toString();

  var html = 
    '<body>' +
    +'<h2>'+ username + ' has submitted a request to purchase equipment for ' + requestfor + ' </h2>' + '<br>' + '<br>' +
    'Location: ' + location +
    '<br> Department: ' + department +
    '<br> Phone Number: ' + phonenumb +
    '<br> Extension: ' + extension +
    '<br> <br> The following materials have been requested for purchase: ' +
    '<br> <br> Software: ' +
    '<br> Computer: ' + computer +
    '<br> Monitor: ' + monitor +
    '<br> Computer Accessories: ' + accessories + '<br> <br> The ship to location for said materials is :' + '<br> <br> <br> <br>' +

    '<input type="submit" value="Approve" />' + '<br>'+
    '<input type="submit"  value="Deny" />' +
    '</body>'; 

    MailApp.sendEmail(approver, "Equipment Request: " + username, 'No html body);', {htmlBody: html});


}
4

2 回答 2

1

我添加了有关如何完成此操作的视频教程: https ://sites.google.com/site/scriptsexamples/home/announcements/emailapprovalusinggooglescriptandaform

于 2012-05-06T15:16:47.340 回答
0

您只需在 html 正文中使用一个表单,但是,我有一些奇怪的行为,您进行了一次批准并且工作正常,但在下一个 Gmail 认为您已经发送它并且不会再次打开对话框。

我一直在做的是使用可以看起来像按钮的标准链接(锚点)。这些将带您进入已发布的 UiApp 页面,其中选择添加到 url 的末尾。批准=真。

这是在 e.parameter 中传递的,因此:

doGet(e){
 var approve = e.parameter.approve;
 //do something with the info. 
} 

您可以在本教程中看到一些这种行为:http: //googlescriptexamples.com/tickets和 Google Script Book 中的工作流程章节的工作方式是这样的。

于 2012-05-05T23:31:50.810 回答