EN
Size: a a a
EN
EN
EN
EN
EN

ФЧ
АМ
EN
АВ
EN
EN
EN
M
[18-08-15 12:45:39:324 PKT] sheets.length = 11
[18-08-15 12:45:39:325 PKT] blobs =
[18-08-15 12:45:45:790 PKT] sheets[i].getName() = net_worth
[18-08-15 12:45:52:027 PKT] sheets[i].getName() = report
[18-08-15 12:45:52:028 PKT] blobs.length = 11[18-08-15 12:39:04:276 PKT] sheets.length = 11
[18-08-15 12:39:04:276 PKT] blobs =
[18-08-15 12:39:10:653 PKT] sheets[i].getName() = help
[18-08-15 12:39:16:982 PKT] sheets[i].getName() = +table
[18-08-15 12:39:23:384 PKT] sheets[i].getName() = currency
[18-08-15 12:39:29:796 PKT] sheets[i].getName() = bank
[18-08-15 12:39:36:044 PKT] sheets[i].getName() = net_worth
[18-08-15 12:39:42:489 PKT] sheets[i].getName() = net_worth_chart
[18-08-15 12:39:48:762 PKT] sheets[i].getName() = asset_small
[18-08-15 12:39:55:170 PKT] sheets[i].getName() = asset_big
[18-08-15 12:40:01:561 PKT] sheets[i].getName() = date
[18-08-15 12:40:08:209 PKT] sheets[i].getName() = symbol
[18-08-15 12:40:14:399 PKT] sheets[i].getName() = report
[18-08-15 12:40:14:400 PKT] blobs.length = 11
[18-08-15 12:40:14:887 PKT] Storage Space used: 4.734626319259405 Gb /* Send Spreadsheet in an email as PDF, automatically */
// http://ctrlq.org/code/19869-email-google-spreadsheets-pdf
function emailSpreadsheetAsPDF() {
var email = "xxxxxx@gmail.com";
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var subject = "Еженедельный отчет " + spreadsheet.getName();
var RANGEA1 = "report!A1:F20";
var data =
spreadsheet.getRangeByName(RANGEA1).getValues().datesToString();
// Email Body can be HTML
var now = new Date();
now1 = dateFormat(now, "isoTime");
now2 = dateFormat(now, "isoDate");
var body = "Во вложении отчет по состоянию на "+ now1 +" "+ now2+". "
+ " "
+ dataToHtmltable_(data)
+ " ";
// Base URL
var url =
"https://docs.google.com/spreadsheets/d/spreadsheet_ID/export?".replace("spreadsheet_ID",
spreadsheet.getId());
/* Specify PDF export parameters
From:
https://code.google.com/p/google-apps-script-ispreadsheetues/ispreadsheetues/detail?id=3579
*/
var url_ext = 'exportFormat=pdf&format=pdf' // export as pdf /
csv / xls / xlsx
+ '&size=A3' // paper size legal / letter / A4
+ '&portrait=false' // orientation, false for
landscape
+ '&fitw=true&source=labnol' // fit to page width, false
for actual size
+ '&sheetnames=true&printtitle=true' // hide optional headers and footers
+ '&pagenumbers=true&gridlines=false' // hide page numbers and gridlines
+ '&fzr=true' // do not repeat row headers
(frozen rows) on each page
+ '&gid='; // the sheet's Id
var token = ScriptApp.getOAuthToken();
var sheets = spreadsheet.getSheets();
Logger.log("sheets.length = " + sheets.length )
var blobs = []; //make an empty array to hold your fetched blobs
Logger.log("blobs = " + blobs)
for (var i=0; i<sheets.length; i++) {
if (sheets[i].getName() !== "net_worth" || sheets[i].getName() !==
"report") { //исключаем ненужные листы
var response = UrlFetchApp.fetch(url + url_ext +
sheets[i].getSheetId(), { // Convert individual worksheets to PDF
headers: {
'Authorization': 'Bearer ' + token
}
});
blobs[i] = response.getBlob().setName(sheets[i].getName() +
'.pdf'); //convert the response to a blob and store in our array
Utilities.sleep(6000);// pause in the loop for 6000 milliseconds
иначе ошибка 429 слишком быстро
Logger.log("sheets[i].getName() = " + sheets[i].getName())
}
}
Logger.log("blobs.length = " + blobs.leM
ngth)
//create new blob that is a zip file containing our blob array
var zipBlob = Utilities.zip(blobs).setName(now2 + '_' +
spreadsheet.getName() + '.zip'); //имя файла вложения
//optional: save the file to the root folder of Google Drive
//DriveApp.createFile(zipBlob); //раскомментировать если надо
сохранить на гугл диск
// Define the scope
Logger.log("Storage Space used: " + DriveApp.getStorageUsed() /
1073741824 + " Gb " ); //байты в гигабайты
// If allowed to send emails, send the email with the PDF attachment
if (MailApp.getRemainingDailyQuota() > 0)
GmailApp.sendEmail(email, subject, body, {
htmlBody: body,
attachments:[zipBlob]
});
}EN
EN