Привет всем! У меня возникла проблема с отправкой нескольких PDF-файлов в одном письме через Google Таблицы. Вот что я уже смог сделать:
Создать PDF-файлы
Сохранить их на Google Диске
Отправить каждый PDF отдельным письмом
Но я никак не могу отправить все файлы одним письмом. Мой код создает PDF-ки в цикле, но застревает, когда я пытаюсь сохранить их в массив или прикрепить массив к письму.
Вот пример кода, который у меня есть:
function отправитьПДФ() {
var файлы = [];
for (var i = 0; i < список.length; i++) {
var пдф = создатьПДФ(список[i]);
файлы.push(пдф);
}
GmailApp.sendEmail(адрес, тема, текст, {
attachments: файлы
});
}
Как можно исправить этот код, чтобы отправить все PDF одним письмом? Буду благодарен за любую помощь!
Я бы посоветовал использовать Utilities.newBlob() для создания вложений. Что-то типа:
var attachments = ;
for (var i = 0; i < список.length; i++) {
var pdf = создатьПДФ(список[i]);
var blob = Utilities.newBlob(pdf, ‘application/pdf’, ‘file’ + i + ‘.pdf’);
attachments.push(blob);
}
слушай, у меня была похожая задача недавно. вот что помогло мне - вместо сохранения пдф в массив, я сразу создавал блоб для каждого файла и добавлял его в массив вложений. примерно так:
var вложения = [];
for (var i = 0; i < список.length; i++) {
var пдф = создатьПДФ(список[i]);
var блоб = пдф.getAs('application/pdf').setName('файл' + i + '.pdf');
вложения.push(блоб);
}
GmailApp.sendEmail(адрес, тема, текст, {attachments: вложения});
главное - преобразовать пдф в блоб перед добавлением в массив. надеюсь, это поможет решить твою проблему!