Мне интересно, возможно ли получить URL-адрес последнего файла в папке диска, а затем поместить его в ячейку в столбце B электронной таблицы.
Затем есть другая часть, где URL должен публиковаться только в том случае, если в столбце A есть слово «YES». Так что если у A "NO" URL не нужен.
Полный сценарий будет таким.
Изображение загружено в папку дисковода.
"YES" вводится в A1.
- URL-адрес последней загруженное изображение извлекается, затем вставляется в B1.
- Затем оно продолжается и для всех остальных строк.
Теоретически, так я хочу, чтобы это работало. Но я не знаю, может ли это работать или нет.
Это сценарий, который я использую для загрузки изображения на диск:
function doGet(e) {
return message("Error: no parameters in doGet");
}
function doPost(e) {
if (!e.parameters.filename || !e.parameters.file || !e.parameters.imageformat) {
return message("Error: Bad parameters in doPost");
} else {
var imgf = e.parameters.imageformat[0].toUpperCase();
var mime =
(imgf == 'BMP') ? MimeType.BMP
: (imgf == 'GIF') ? MimeType.GIF
: (imgf == 'JPEG') ? MimeType.JPEG
: (imgf == 'JPG') ? MimeType.JPEG
: (imgf == 'PNG') ? MimeType.PNG
: (imgf == 'SVG') ? MimeType.SVG
: false;
if (mime) {
var data = Utilities.base64Decode(e.parameters.file, Utilities.Charset.UTF_8);
var blob = Utilities.newBlob(data, mime, e.parameters.filename);
DriveApp.getFolderById('Folder Id').createFile(blob);
return message("Success");
} else {
return message("Error: Bad image format");
}
}
}
function message(msg) {
return ContentService.createTextOutput(JSON.stringify({Result: msg })).setMimeType(ContentService.MimeType.JSON);
}
Пока этот сценарий я использую для ввода «ДА» или «НЕТ» в столбце А:
function doGet(e) {
var ss = SpreadsheetApp.openByUrl("Sheet_URL");
var sheet = ss.getSheetByName("Sheet_Name");
addRecord(e,sheet);
}
function doPost(e) {
var ss = SpreadsheetApp.openByUrl("Sheet_URL");
var sheet = ss.getSheetByName("Sheet_Name");
addRecord(e,sheet);
}
function addRecord(e,sheet) {
var HvPict = e.parameter.HvPict;
sheet.appendRow([Hv.Pict]);
}