2012-05-05 2 views
2

Недавно я создал скрипт Google Apps, который запускается в форме формы Google. Он автоматически отправляет информацию, записанную в форме, в одобряющий менеджер в формате html.Как добавить функцию к кнопке HTML в Gmail

Я попытался добавить дополнительный рабочий процесс, включив в электронную почту две кнопки - «Утвердить» и «Отклонить». Тем не менее, я не могу подключить функцию к этим кнопкам (например, кнопка отправки переадресует письмо на 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}); 


} 

ответ

1

Я добавил видео учебник о том, как получить это сделано: https://sites.google.com/site/scriptsexamples/home/announcements/emailapprovalusinggooglescriptandaform

+0

Джеймс, спасибо большое за ответ. У меня есть один следующий вопрос - в моей ситуации кнопке «одобрить» придется посылать по электронной почте третьему лицу (люди фактически размещают заказ на оборудование). Мне нужно будет отправить информацию, полученную из формы, после того, как ее одобрит менеджер. Есть ли способ передать переменные с первого события (оборудование, местоположение и т. Д.) В html письма, которое отправляется третьей стороне? –

+0

Конечно, просто добавьте все поля формы как & fieldName = Значение и формат, отправьте, как вы, на запрос. –

0

Вы просто использовать форму в HTML теле однако, у меня было некоторое странное поведение, когда вы делаете одно утверждение, и что работает отлично, но на следующий один Gmail думает, что вы уже отправили его и не запустите диалог снова.

Что я делаю, это использовать стандартные ссылки (якоря), которые можно сделать похожими на кнопки. они перенесут вас на опубликованную страницу UiApp, где выбор добавляется в конец URL-адреса. утвердить = верно.

Это передается в e.parameter так:

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

Вы можете увидеть некоторые из такого поведения в данном руководстве: http://googlescriptexamples.com/tickets и Workflow глава в книге сценариев Google работает следующим образом.

Смежные вопросы