Форма Google: включите гиперссылку в электронное письмо с указанием местоположения документа на Google Диске

Я использую форму Google, чтобы отправить заполненный PDF-файл пользователю, отправившему форму. Скрипт также сохраняет копию Google Doc на Google Диске. Все отлично работает, кроме одного. Я хотел бы включить эту гиперссылку в тело письма с прикрепленным PDF-файлом. Ниже приведены сценарии, которые я использую для сохранения и отправки электронного письма ...

чтобы сохранить и закрыть временный документ:

copyDoc.saveAndClose();

чтобы преобразовать временный документ в PDF:

var pdf = DriveApp.getFileById(copyId).getAs("application/pdf");

чтобы прикрепить PDF-файл и отправить электронное письмо:

var subject = "Name";
var body = "Attached is the Auto-Generated PDF;
MailApp.sendEmail(user_email, subject, body, {htmlBody: body, attachments: pdf});

person MCS    schedule 06.02.2015    source источник


Ответы (1)


Гиперссылка в HTML - это тег <a>.

<a href="http://www.stackoverflow.com">Stack Overflow</a>

Чтобы включить URL-адрес в документ, вам необходимо использовать текстовую формулу JavaScript. Вы можете объединить текст со знаком плюс.

"<a href='" + urlToDoc + "'>Stack Overflow</a>"

Вам нужно каким-то образом получить URL-адрес нового документа и поместить этот URL-адрес в переменную.

var fileNewDoc = DriveApp.getFileById(copyId);
var urlToDoc = fileNewDoc.getUrl();

Документация Google - класс файла - метод getUrl ()

Итак, код будет примерно таким:

var fileNewDoc = DriveApp.getFileById(copyId);
var urlToDoc = fileNewDoc.getUrl();

var pdf = fileNewDoc.getAs("application/pdf");

var body = "Attached is the Auto-Generated PDF. <br><br>";
body = body + "<a href='" + urlToDoc + "'>Your Link to the Copy</a>";
person Alan Wells    schedule 06.02.2015